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
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
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
0.2.0-beta.2stdioRemote endpoints
https://api.aifra.ru/mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
🟢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
get_deploy_instructionsget_deploy_instructionsRecorded Call Examples
get_preview_statusInput Parameters
{
"preview_id": "example-1"
}Output Result
{
"result": {
"content": [
{
"type": "text",
"text": "MCP error -32602: Input validation error: Invalid arguments for tool get_preview_status: Invalid string: must match pattern /^pv_[A-Za-z0-9_-]{24}$/ at preview_id"
}
],
"isError": true
},
"durationMs": 153
}Community
Evidence