AIfra — temporary static previews
48-hour HTTPS previews of prebuilt static sites and HTML slides. No server builds or backends.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"aifra": {
"command": "npx",
"args": [
"aifra"
]
}
}
}실행 가능한 패키지
0.2.0-beta.2stdio원격 엔드포인트
https://api.aifra.ru/mcpstreamable-http할 수 있는 일
도구 목록
도구 (6)
🟢get_deploy_instructions
Explain remote browser-confirmed AIfra publication of ready static files, limits and current terms.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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.
입력 스키마
{
"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#"
}권장 프롬프트
get_deploy_instructionsget_deploy_instructions기록된 호출 예시
get_preview_status입력 매개변수
{
"preview_id": "example-1"
}출력 결과
{
"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
}커뮤니티
증거