AIfra — temporary static previews

48-hour HTTPS previews of prebuilt static sites and HTML slides. No server builds or backends.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
72%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,038Tokens (tool definitions)
~1.2 KBTypical response size
Moderate attention impact (0.81% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "aifra": {
      "command": "npx",
      "args": [
        "aifra"
      ]
    }
  }
}

Runnable packages

npmaifra0.2.0-beta.2stdio

Remote endpoints

https://api.aifra.ru/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_deploy_instructions

Explain remote browser-confirmed AIfra publication of ready static files, limits and current terms.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡create_preview(files, archive_base64, archive, accept_terms)

Prepare a new temporary static preview. Supply exactly one of small files, ZIP archive_base64, or an allowed provider ZIP file reference. No backend/build. Requires explicit consent; returns an approval link, not a published URL. User must confirm in their browser.

Input Schema

{
  "type": "object",
  "properties": {
    "files": {
      "minItems": 1,
      "maxItems": 500,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "minLength": 1,
            "maxLength": 240
          },
          "content": {
            "type": "string",
            "maxLength": 1400000
          },
          "encoding": {
            "type": "string",
            "enum": [
              "utf8",
              "base64"
            ]
          }
        },
        "required": [
          "path",
          "content"
        ],
        "additionalProperties": false
      }
    },
    "archive_base64": {
      "type": "string",
      "maxLength": 69905068
    },
    "archive": {
      "type": "object",
      "properties": {
        "download_url": {
          "type": "string",
          "maxLength": 8192
        },
        "file_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 256
        },
        "mime_type": {
          "type": "string",
          "maxLength": 100
        },
        "file_name": {
          "type": "string",
          "maxLength": 240
        }
      },
      "required": [
        "download_url",
        "file_id"
      ],
      "additionalProperties": false
    },
    "accept_terms": {
      "type": "boolean",
      "const": true
    }
  },
  "required": [
    "accept_terms"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴update_preview(files, archive_base64, archive, accept_terms, preview_id)

Prepare replacement of an existing temporary static preview. Supply exactly one of small files, ZIP archive_base64, or an allowed provider ZIP file reference. No backend/build. Requires explicit consent; returns an approval link, not a published URL. User must confirm in their browser. Requires the browser holding the existing management key; expiry is unchanged.

Input Schema

{
  "type": "object",
  "properties": {
    "files": {
      "minItems": 1,
      "maxItems": 500,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "minLength": 1,
            "maxLength": 240
          },
          "content": {
            "type": "string",
            "maxLength": 1400000
          },
          "encoding": {
            "type": "string",
            "enum": [
              "utf8",
              "base64"
            ]
          }
        },
        "required": [
          "path",
          "content"
        ],
        "additionalProperties": false
      }
    },
    "archive_base64": {
      "type": "string",
      "maxLength": 69905068
    },
    "archive": {
      "type": "object",
      "properties": {
        "download_url": {
          "type": "string",
          "maxLength": 8192
        },
        "file_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 256
        },
        "mime_type": {
          "type": "string",
          "maxLength": 100
        },
        "file_name": {
          "type": "string",
          "maxLength": 240
        }
      },
      "required": [
        "download_url",
        "file_id"
      ],
      "additionalProperties": false
    },
    "accept_terms": {
      "type": "boolean",
      "const": true
    },
    "preview_id": {
      "type": "string",
      "pattern": "^pv_[A-Za-z0-9_-]{24}$"
    }
  },
  "required": [
    "accept_terms",
    "preview_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴delete_preview(preview_id, confirm_delete)

Prepare deletion of an existing preview. Does not delete until its owner confirms in the browser holding the management key.

Input Schema

{
  "type": "object",
  "properties": {
    "preview_id": {
      "type": "string",
      "pattern": "^pv_[A-Za-z0-9_-]{24}$"
    },
    "confirm_delete": {
      "type": "boolean",
      "const": true
    }
  },
  "required": [
    "preview_id",
    "confirm_delete"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_operation_status(operation_id)

Read whether a prepared operation is pending, complete, failed or uncertain. Returns no file content or management key. Never assume pending means published.

Input Schema

{
  "type": "object",
  "properties": {
    "operation_id": {
      "type": "string",
      "pattern": "^rop_[A-Za-z0-9_-]{43}$"
    }
  },
  "required": [
    "operation_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_preview_status(preview_id)

Read public status, URL and original expiry of an existing preview.

Input Schema

{
  "type": "object",
  "properties": {
    "preview_id": {
      "type": "string",
      "pattern": "^pv_[A-Za-z0-9_-]{24}$"
    }
  },
  "required": [
    "preview_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Recommended Prompts

fetch_info
Fetch [information type] using AIfra — temporary static previews
Expected tools: get_deploy_instructions
retrieve_data
Get details about [item] from AIfra — temporary static previews
Expected tools: get_deploy_instructions

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools