hyperframes-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | HTTP port for the server when MCP_TRANSPORT=http. | 8080 |
| HF_CLI | No | Path to the CLI entry. | /app/hf |
| HF_ROOT | No | Path to upstream checkout. | /app/hf |
| HF_JOBS_DIR | No | Where job records are persisted. | /data/jobs |
| HF_WORKSPACE | No | Where projects live. | /data/projects |
| MCP_TRANSPORT | No | Transport mode: 'stdio' or 'http'. | stdio |
| HF_WAIT_MAX_MS | No | Cap for wait:true / wait_job. | 600000 |
| MCP_AUTH_TOKEN | No | If set, require Authorization: Bearer <token> for MCP endpoints (CSV = rotation). /health stays public. | |
| HF_JOB_TAIL_LINES | No | Log lines kept per job. | 200 |
| HF_JOB_CONCURRENCY | No | Max renders/snapshots running at once. | 1 |
| HF_RENDER_TIMEOUT_MS | No | Render timeout (30 min). | 1800000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_projectsB | Lista los proyectos HyperFrames del workspace (cada uno con su index.html). |
| list_compositionsA | Lista las composiciones de un proyecto (archivos .html). Salida JSON. |
| lint_projectA | Corre el linter de HyperFrames sobre un proyecto (accesibilidad, layout, motion). Salida JSON. |
| render_videoA | Renderiza un proyecto/composición a MP4 (u otro formato: webm, mov, gif, png-sequence). Por defecto ENCOLA el trabajo y devuelve un job_id — el render es pesado y no debe bloquear la request; sigue el avance con get_job / wait_job. Usa wait=true para clips cortos. |
| snapshot_framesA | Captura frames PNG de una composición para control visual de calidad. Por defecto ENCOLA y devuelve un job_id (get_job / wait_job). |
| create_projectA | Crea un proyecto HyperFrames nuevo a partir de un ejemplo. Devuelve el nombre del proyecto. |
| get_jobA | Estado y log de un job (render o snapshot) por su job_id. |
| list_jobsA | Lista los jobs recientes (más nuevos primero) y el estado de la cola. |
| write_project_fileB | Escribe (o crea) un archivo dentro de un proyecto del workspace: HTML, CSS, SVG, JSON… Crea los directorios necesarios. Para binarios (PNG/JPG/MP4) usa encoding=base64. Permite crear un proyecto nuevo desde cero escribiendo su index.html. |
| wait_jobB | Bloquea hasta que el job termine (o se agote el timeout). Útil para agentes sin polling. |
| cancel_jobB | Cancela un job en cola o en ejecución. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a distinct resource and action: projects, compositions, linting, rendering, snapshots, and job management (get, list, wait, cancel). No two tools overlap in purpose; even the job-related tools have clearly separated responsibilities.
All tool names follow the verb_noun snake_case pattern (e.g., list_projects, render_video, cancel_job). The convention is uniform with no stylistic mixing, making the API predictable and easy to navigate.
With 11 tools, the server is well-scoped for managing HyperFrames projects, covering creation, editing, linting, rendering, snapshots, and asynchronous job lifecycle. Each tool earns its place in the workflow without bloat.
The tool surface covers the core lifecycle: create/list projects, write files, lint, render, snapshot, and manage jobs. Minor gaps like delete_project or read_file exist, but agents can accomplish primary tasks without dead ends.