REA
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Descripción del creador (original en inglés)
Git content governance, 23 deterministic MCP tools. Hosted: docs.contentrain.io/developer/mcp-cloud
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.
Pasó 5/5 revisiones · Lo que preguntas pasa por el servidor del autor (studio.contentrain.io)
Primero: ¿qué IA usas?
Elige tu app y los pasos aparecen abajo.
Funciona con Claude · unos 2 min
Sin clave y sin instalar nada · Configúralo una vez en claude.ai o en la app de escritorio y úsalo en el chat · las cuentas gratis pueden añadir 1
CustomizeConnectors
Copia cada valor al campo con el mismo nombre en Claude y pulsa Continue
Contentrainhttps://studio.contentrain.io/api/mcp/remoteDeja Authentication como lo detectó Claude y pulsa Add
+ConnectorsContentrain
Usa Contentrain y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude dice que está usando Contentrain o muestra una herramienta de Contentrain en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con ChatGPT solo en planes de empresa
ChatGPT Business, Enterprise o Edu en la web, añadido por un administrador o propietario del espacio · Con Free, Plus o Pro: tu plan de ChatGPT aún no puede conectar MCP
Plugins+Add custom MCP server
Pon un nombre, pega la dirección en Connection, marca el aviso de riesgo y pulsa Create as a plugin
Contentrainhttps://studio.contentrain.io/api/mcp/remoteAbre un chat nuevo y elige Contentrain en tus plugins antes de escribir
Usa Contentrain y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si ChatGPT dice que está usando Contentrain o muestra una herramienta de Contentrain en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de OpenAI el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con Claude Code · unos 2 min
Sin clave y sin instalar nada
Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell
claude mcp add --transport http contentrain https://studio.contentrain.io/api/mcp/remoteDeberías ver Contentrain en la lista como conectado
Usa Contentrain y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude Code dice que está usando Contentrain o muestra una herramienta de Contentrain en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con Cursor · unos 2 min
Sin clave y sin instalar nada
Usa Contentrain y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Cursor dice que está usando Contentrain o muestra una herramienta de Contentrain en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con VS Code · unos 2 min
Sin clave y sin instalar nada
Usa Contentrain y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si VS Code dice que está usando Contentrain o muestra una herramienta de Contentrain en la respuesta, ya está conectado
Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps
Ver todas las apps que usan MCP →
Dirección para apps que se conectan por la web
https://studio.contentrain.io/api/mcp/remoteLa configuración JSON está en “Para desarrolladores”, abajo
Claude Code
claude mcp add --transport http contentrain https://studio.contentrain.io/api/mcp/remoteCursor (~/.cursor/mcp.json)
{
"mcpServers": {
"contentrain": {
"url": "https://studio.contentrain.io/api/mcp/remote"
}
}
}VS Code (mcp.json)
{
"servers": {
"contentrain": {
"type": "http",
"url": "https://studio.contentrain.io/api/mcp/remote"
}
}
}Claude Code
claude mcp add contentrain -- npx -y @contentrain/mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"contentrain": {
"command": "npx",
"args": [
"-y",
"@contentrain/mcp"
]
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"contentrain": {
"command": "npx",
"args": [
"-y",
"@contentrain/mcp"
]
}
}
}VS Code (mcp.json)
{
"servers": {
"contentrain": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@contentrain/mcp"
]
}
}
}Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
npm: @contentrain/mcpSegún cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se conectan por internet en
ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
Se ejecutan en tu computadora en
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
El servidor pide iniciar sesión antes de mostrar sus herramientas.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 11 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub Contentrain, dueña del repo
Último cambio de código: hace 4 días
Usa MIT
Respondió en 202 ms (HTTP 401)
Declara inicio de sesión con OAuth, así que tu app de IA puede llevarte a iniciar sesión
Aún sin revisar; leemos la lista de herramientas cuando revisamos el endpoint
Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.
Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.
Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.
Aún no hay reseñas
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ó 5 de 5 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.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Funciona de las dos formas: instálalo en tu computadora o conéctate a la versión en la nube.
El repo de GitHub cambió por última vez hace 4 días, y la última versión (3.12.3) llegó al registro hace 7 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. Se conecta por URL, así que también funciona en apps que aceptan MCP remoto, como ChatGPT Business o superior.
En la misma categoría: REA, Netdata, Front-End Checklist
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Review frontend code and live pages against 386 quality-gated web development rules.
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.
@contentrain/mcpProvider-agnostic MCP engine for Contentrain — local-first by default, with optional GitHub and GitLab backends and an HTTP transport for remote drivers such as Studio.
Start here:
Contentrain is a content governance ecosystem for teams and AI agents. In it, this engine works like this:
This package is the runtime core behind Contentrain's MCP integration. It can be used as:
contentrain-mcp)createServer(projectRoot))pnpm add @contentrain/mcp
Requirements:
22+Optional parser support for higher-quality source scanning:
@vue/compiler-sfc@astrojs/compilersvelteThey are listed as optional dependencies. The scanner still works without them, but Vue/Astro/Svelte detection is stronger when they are installed.
@contentrain/mcp manages a .contentrain/ directory in your project and exposes MCP tools for:
All write operations are designed around git-backed safety:
contentrain branch serves as the content state single source of truthcontentrain (branch name: cr/{scope}/{target}/{timestamp}-{suffix}, e.g. cr/content/blog-post/1730000000-a1b2; bulk locale copies, locale-scoped status changes and scaffold add a {locale} segment before the timestamp)contentrain, baseBranch advanced via update-ref, .contentrain/ files selectively synced to developer's working tree when the base branch is the one checked outCONTENTRAIN_BRANCH env → repository.default_branch → remote HEAD → main → master → checked-out branch → main (fallback). A write made on a feature branch never merges, moves or pushes that branchcontentrain tip: JSON changes are carried over key by key, so entries another writer pushed are kept; a same-value conflict writes nothing and returns CONTENT_WORKING_TREE_STALE.contentrain/** is read from the contentrain ref instead (source files still from the working tree); read tools report it as content_sourceremoteBranchCleanup: false in config.jsongit.push: false or CONTENTRAIN_NO_PUSH=1): nothing is ever pushed or deleted on the remote, and every result says so — see Git environment and local modegit block names the resolved base_branch; when it is not the checked-out branch, the result's warning says your working tree was left alonegit.verify: true or CONTENTRAIN_VERIFY=1 runs them, and a rejecting hook fails the write with its output — see Commit hookscontentrain branch after merge (locally by the transaction layer; in remote flows by the orchestrator that owns the merge)23 MCP tools, plus 5 media tools on a media-capable provider such as Studio, with annotations (readOnlyHint, destructiveHint, idempotentHint, and openWorldHint: false everywhere except contentrain_media_ingest, which fetches a caller-supplied URL server-side) for client safety hints.
Tool listing is capability-aware. tools/list only advertises tools the resolved provider + projectRoot pair can actually satisfy. A local stdio server lists the 23 core tools; a session driven by a remote provider (GitHub/GitLab, no local checkout) lists only the remote-safe subset — status, describe, describe_format, model_save, model_delete, content_save, content_delete, content_list, content_status, vocabulary_save, vocabulary_delete, validate. The requirement map lives in TOOL_REQUIREMENTS (@contentrain/mcp/tools/availability).
| Tool | Purpose | Read-only | Destructive |
|---|---|---|---|
contentrain_status | Project status, config, models, branch health, context | Yes | — |
contentrain_describe | Full schema and sample data for a model | Yes | — |
contentrain_describe_format | File-format and storage contract reference | Yes | — |
contentrain_doctor | Project health report (env, structure, models, orphans, local + remote branches, SDK) | Yes | — |
contentrain_init | Create .contentrain/ structure and base config | — | — |
contentrain_scaffold | Apply a starter template such as blog, docs, landing, saas | — | — |
contentrain_model_save | Create or update a model definition | — | Yes |
contentrain_model_delete | Delete a model definition | — | Yes |
contentrain_content_save | Save content entries for any model kind | — | Yes |
contentrain_content_delete | Delete content entries | — | Yes |
contentrain_content_list | Read content entries, each with its publish state under meta | Yes | — |
contentrain_content_status | Change entry status — publish, unpublish, archive (publishing validates first) | — | Yes |
contentrain_validate | Validate project content, optionally auto-fix structural issues | — | — |
contentrain_submit | Push cr/* branches to remote, then lazily prune merged local + remote leftovers | — | — |
contentrain_merge | Merge a review-mode branch into contentrain locally (by exact branch or model); deletes its remote copy | — | Yes |
contentrain_reconcile | Content-aware three-way merge of a diverged contentrain ↔ base pair (dry_run first, resolutions second) | — | — |
contentrain_branch_list | List pending cr/* branches with merge status (remote: true adds remote view) | Yes | — |
contentrain_branch_delete | Delete a stale/failed cr/* branch locally and on the remote (contentrain branch protected) | — | Yes |
contentrain_scan | Graph- and candidate-based hardcoded string scan | Yes | — |
contentrain_apply | Normalize extract/reuse execution with dry-run support | — | — |
contentrain_bulk | Bulk locale copy and deletes (dry_run previews; local only) | — | Yes |
contentrain_vocabulary_save | Add or update canonical vocabulary terms (merges with what exists) | — | — |
contentrain_vocabulary_delete | Remove canonical vocabulary terms by slug (confirm: true) | — | Yes |
contentrain_media_list | List media assets (search, tag filter, cursor pagination) | Yes | — |
contentrain_media_get | Get one media asset by id | Yes | — |
contentrain_media_ingest | Ingest an asset from a source URL (provider fetches server-side) | — | — |
contentrain_media_update | Update asset metadata (alt, tags, filename) | — | — |
contentrain_media_delete | Delete an asset from the media stack | — | Yes |
The five contentrain_media_* tools are a deterministic passthrough to the provider's optional media facet (RepoProvider.media) and are registered only when the provider exposes one (e.g. Studio MCP Cloud). Local stdio servers and plain GitHub/GitLab providers never list them. Ingest is URL-based (MCP has no binary channel); the provider implementation owns SSRF/MIME/size policy for the fetch.
npx contentrain setup claude-code # or: cursor, vscode, windsurf, copilot
This auto-creates the correct MCP config file for your IDE. See CLI docs for details.
CONTENTRAIN_PROJECT_ROOT=/path/to/project npx -y @contentrain/mcp
If CONTENTRAIN_PROJECT_ROOT is omitted, the current working directory is used.
These apply to the local provider (stdio, LocalProvider):
| Variable | Default | Effect |
|---|---|---|
CONTENTRAIN_BRANCH | unset | Base branch the contentrain branch advances. Wins over repository.default_branch, then remote HEAD → main → master → the checked-out branch → main. Per process; never written to config |
CONTENTRAIN_REMOTE | origin | Remote used for every fetch and push (and remote branch cleanup) |
CONTENTRAIN_NO_PUSH | unset | 1/true turns local mode on; 0/false turns it off. Any other value is ignored |
CONTENTRAIN_AUTHOR_NAME / CONTENTRAIN_AUTHOR_EMAIL | Contentrain / ai@contentrain.io | Author identity on Contentrain's commits |
CONTENTRAIN_GIT_BINARY | unset | Absolute path of the git binary to use |
CONTENTRAIN_VERIFY | unset | 1/true runs the repository's commit hooks on Contentrain's commits; 0/false skips them. Wins over git.verify. Any other value is ignored |
Local mode keeps every write on local branches: no branch push, no review push, no push after an auto-merge, approve or reconcile, and no remote branch delete or prune. Fetching is not a push and still happens when a remote exists. Turn it on for a project with "git": { "push": false } in .contentrain/config.json, or for one run with CONTENTRAIN_NO_PUSH=1.
Precedence: the env wins over the config in both directions. CONTENTRAIN_NO_PUSH=1 turns pushing off even when config allows it; CONTENTRAIN_NO_PUSH=0 turns it back on over git.push: false. With neither, pushing is on.
It is never a silent success. Each write's git block reports remote_push: "disabled" with remote_note: "not pushed (local mode)", and next_steps carries a LOCAL MODE line. contentrain_submit returns an error instead of pushing; land review branches with contentrain_merge. contentrain_merge and contentrain_branch_delete delete the local branch as usual and leave any remote copy untouched; contentrain_branch_delete reports remote_skipped: "local-mode", contentrain_merge reports remote: { deleted: false, skipped: "local-mode" }.
By default Contentrain's machine commits (the cr/* content commit, the context.json commit, a reconcile merge commit, the seed commit of an empty repo) skip the repository's commit hooks (pre-commit, prepare-commit-msg, commit-msg). That keeps exis