Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
LUNO — AI-era Backend Platform (not Luno crypto). BUILD/OPERATE, REGISTER/GOVERN, CONSUME.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
LUNO_API_URL, LUNO_AGENT_KEYLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"luno-cms": {
"command": "npx",
"args": [
"-y",
"@luno-cms/mcp"
],
"env": {
"LUNO_API_URL": "your-value",
"LUNO_AGENT_KEY": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add luno-cms --env LUNO_API_URL=your-value --env LUNO_AGENT_KEY=your-value -- npx -y @luno-cms/mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"luno-cms": {
"command": "npx",
"args": [
"-y",
"@luno-cms/mcp"
],
"env": {
"LUNO_API_URL": "your-value",
"LUNO_AGENT_KEY": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"luno-cms": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@luno-cms/mcp"
],
"env": {
"LUNO_API_URL": "your-value",
"LUNO_AGENT_KEY": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub luno-cms, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: LUNO_API_URL, LUNO_AGENT_KEY
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.2.51) llegó al registro el mes pasado.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, Zoo MCP
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
An MCP server that provides access to the Zoo API for various CAD operations and tools.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Agents BUILD / OPERATE. Humans REGISTER / GOVERN. Applications CONSUME.
LUNO is a hosted backend platform — not a website builder, not an open-source CMS, and not an MCP server product. MCP is how your agent connects to LUNO. CMS and forms are capabilities; the product category is AI-era Backend Platform.
| BUILD | AI agents define schemas, forms, and backend structure via blueprints and templates. |
| OPERATE | Agents read and change content, media, auth settings, and other backend resources. |
| GOVERN | Humans control production through scoped agent keys, approval workflows, publish gates, and safety controls. |
npx -y @luno-cms/mcp setup
Works with Claude Code, Cursor, and Codex. Issue an agent key in the LUNO Console → MCP / API / Hook → API / MCP.
Glama / MCP directory: “Install Server” requires a hosted API key and may show *This server cannot be installed*. Use
npx -y @luno-cms/mcp setupinstead — see Quick start (recommended) below.
pendingHumanApproval)MCP schemas and tool descriptions were redesigned for agent readability. In a blind test, the same backend task went from 142 tool calls to 11, with 0 errors — application behavior unchanged.
Static Resources (resources/list, resources/read) ship agent-readable guides without Admin API calls:
| URI | Topic |
|---|---|
luno://forms/field-types | Field types + snapshot shapes |
luno://content/schema-guide | Form Set / entry / revision hierarchy |
luno://publishing-guide | Draft → publish, can_publish |
luno://permissions | Scopes, blocked actions, archive token |
luno://api-reference | Tool cheat sheet (not full OpenAPI) |
Inventory: docs/RESOURCES.md. Live per-tenant schema: get_form_set_schema tool.
@luno-cms/mcp (not the unrelated cryptocurrency “Luno” MCP)io.github.luno-cms/mcpluno-cms/mcpluno-rest ·github.com/luno-cms/mcpDirectory checklist: docs/DISCOVERY.md
Product docs (EN): AI Agents · doc.luno.rest Product docs (JA): AI Agents
From your site repository root, pick one AI agent and run setup (Claude Code / Cursor / Codex). The CLI opens the browser to confirm. Do not paste a key into the agent chat. Use --key or --no-browser only when you cannot use the browser.
cd my-site
npx -y @luno-cms/mcp setup
| Choice | What gets written |
|---|---|
| Claude Code | .claude/skills/luno/ + .mcp.json |
| Cursor | .cursor/skills/luno/ + .cursor/mcp.json |
| Codex | .agents/skills/luno/ + .codex/config.toml |
Shared: .agents/luno/{dev,stg,prod}.env (keys; gitignored). Public default is prod (luno-prod). dev / stg stay on disk for explicit setup --env stg / run stg / env switch stg.
Then:
List the form sets on this LUNO, or draft one entry. Don't publish or change the schema.Later: teammates run npx @luno-cms/mcp login. Use --env stg only if you have access.
Verified clients: Claude Code / Cursor / Codex (Golden Path E2E).
| Client | Notes |
|---|---|
| Claude Code | If tools are missing, reconnect (/mcp) |
| Cursor | Settings → MCP: enable luno-prod. Start a new Agent chat if needed |
| Codex | Project .codex/config.toml (with cwd) plus home config: Codex prefers `~/.codex/config.toml`, so setup may offer codex mcp add (with LUNO_PROJECT_ROOT). Check: codex mcp list (luno-prod, etc.). First MCP tool calls may need approval. Prefer `luno-prod` |
/luno is an optional shortcut after setup. It is not required, and it must not ask for a key.
After a teammate clones (.mcp.json is there, keys are not):
npx @luno-cms/mcp login
login refreshes .agents/luno/ .env only. It does not rewrite MCP config. Use the same command for expired keys or 401. First-time machines still run setup.
Non-interactive:
npx @luno-cms/mcp setup --agent claude --yes --key 'sk-agent-…'
npx @luno-cms/mcp login --key 'sk-agent-…' npx @luno-cms/mcp env status
Explicit staging (internal / Benchmark / Partner only):
npx @luno-cms/mcp setup --env stg --key 'sk-agent-…'
npx @luno-cms/mcp run stg
Issue keys in Console → Settings → Agent API keys (per env / per site). Default scope full (content + form definitions). Use content to restrict to articles only.
Rate limits: per agent key to Admin API — 60 req / 60s (Free / Solo) or 300 / 60s (Standard+). Over limit → HTTP 429 + RATE_LIMITED + Retry-After. Console JWT traffic is not limited this way. Details: AI Agents rate limits.
| Scope | When to use |
|---|---|
| full (recommended) | Articles + Form Set / Contact / Blueprint |
| content | Create / update / publish articles only |
| schema | Same privileges as full (compat) |
| Variable | Example | Description |
|---|---|---|
LUNO_API_URL | https://api.luno.rest/admin | Admin API base (include /admin) |
LUNO_AGENT_KEY | sk-agent-… | Agent API key |
npx @luno-cms/mcp --version # print package version (no MCP start)
npx @luno-cms/mcp # start MCP from env vars npx @luno-cms/mcp run prod # load .agents/luno/prod.env then start npx @luno-cms/mcp setup npx @luno-cms/mcp env …
Generated MCP configs use npx -y @luno-cms/mcp@latest run so reconnect fetches the newest publish (avoids a stale unpinned npx cache). Re-run npx @luno-cms/mcp setup (or edit mcp.json) if a site still has the unpinned spec, then /mcp reconnect — do not hand-bump a version pin. Confirm the running package with --version or get_mcp_runtime.
MCP server names: luno-dev / luno-stg / luno-prod
For Cursor Marketplace / local plugin setup, see the LUNO Console onboarding. For normal site work, prefer npx @luno-cms/mcp setup above.
One MCP entry = one key. Split by site or scope with different MCP server names. Active key limits depend on plan.
get_project_overview — project summary + intentCapabilities (recommended first)create_contact_form (dryRun: true first). Content → match purposeLabels then a templateget_form_set_schema / list_entries as neededcontent scope and above)| Tool | Description |
|---|---|
get_project_overview | Project summary + intentCapabilities (Contact vs Form Set) / nextMoves / Form Sets / Contact / Masters / storage / locales / public API |
get_tenant_schema | Full project schema |
list_form_sets / get_form_set_schema | Form Set list / definition (get_form_set_schema includes form-set schema-context + snapshotShape.example; selects may include masterEntityKey / public records URL) |
get_public_api_info | Agent key projectId + public API base (entries / master-entities) |
list_entries / get_entry | Entry list / detail |
create_entry / bulk_create_entries / update_entry | Create entry / bulk create (≤50 slugs) / update slug |
list_revisions / save_revision / get_pub_preview_url / publish_revision | Revisions / preview URL for human review / publish (can_publish=false keys stop at submit + pendingHumanApproval) |
submit_entry_for_review | Submit for approval |
list_media | Media list |
upload_media | Upload (filePath / sourceUrl / base64 → asset id) |
list_master_entities / get_master_entity | Master entities |
list_master_records / create_master_record | List / create records (label string or { default, ja, … }; optional color #RRGGBB) |
update_master_record / update_master_tree | Update records / tree (not available with agent keys — see below) |
get_project_content_locales | Content locale settings (includes content_default_locale) |
patch_project_content_locales | Update locales (tenant_admin JWT only) |
search_admin_help | Search Console help KB |
get_admin_help_article | One help article (Markdown) |
ask_admin_help | Help RAG Q&A (related articles if LLM unset) |
translate_entry_locales | AI locale batch translate (Standard+, 1 ticket / run) |
get_login_branding | Login branding (no auth; includes login_background / hide_luno_logo / hide_powered_by) |
get_login_appearance | Login appearance settings (auth required) |
update_login_appearance | Update login appearance (background=Standard+, WL=Business+) |
list_console_login_ip_allowlists | Login IP allowlist (Business+) |
add_console_login_ip_allowlist | Add IP rule (tenant scope) |
delete_console_login_ip_allowlist | Delete IP rule |
Master update limits: agent keys have no userId; update_master_record / update_master_tree need a user JWT with master_record_edit_allowed or tenant_admin. List / create (create_master_record) work with content scope. Creating master definitions uses `apply_master_blueprint` (schema scope), not POST /master-entities.
Multilingual master labels: label may be a plain string (default locale) or a locale map. When site multilingual is OFF, only default is stored. Blueprint record.label stays a plain string (normalized internally).
Master record color: optional #RRGGBB on create_master_record, update_master_record (user JWT), and apply_master_blueprint records. Omit keeps an existing color (create = none). null clears. #fff / named colors are rejected.
Locale translation: call translate_entry_locales with a content-scope agent key, merge returned items into the snapshot, then save_revision. Returns 400 if site multilingual is OFF.
E2E over a real MCP stdio client:
# LUNO_API_URL + LUNO_AGENT_KEY (dedicated smoke project recommended)
pnpm golden-path-smoke
Creates gp-smoke-* Form Sets / entries and checks Public API + funnel (agent_backend_selected → site_created → site_published). **Staging Golden Path CI
Solo se muestra el principio; lee el resto en el repo