AIfra — temporary static previews
48-hour HTTPS previews of prebuilt static sites and HTML slides. No server builds or backends.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"aifra": {
"command": "npx",
"args": [
"aifra"
]
}
}
}Paquetes ejecutables
0.2.0-beta.2stdioPuntos de conexión remotos
https://api.aifra.ru/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (6)
🟢get_deploy_instructions
Explain remote browser-confirmed AIfra publication of ready static files, limits and current terms.
Esquema de entrada
{
"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.
Esquema de entrada
{
"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.
Esquema de entrada
{
"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.
Esquema de entrada
{
"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.
Esquema de entrada
{
"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.
Esquema de entrada
{
"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#"
}Prompts recomendados
get_deploy_instructionsget_deploy_instructionsEjemplos de llamadas registradas
get_preview_statusParámetros de entrada
{
"preview_id": "example-1"
}Resultado de salida
{
"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
}Comunidad
Evidencia