NeuralTrust ha sido reconocido por Gartner → Leer más
Volver

Claude Code MCP y Cursor MCP: seguridad

Roger Howroyd 4 de noviembre de 2026
Compartir
Claude Code MCP y Cursor MCP: seguridad

Última actualización: 4 de noviembre, 2026

¿Qué es la seguridad de Claude Code MCP? La seguridad de Claude Code MCP es el conjunto de controles que deciden qué servidores Model Context Protocol puede cargar Claude Code, qué pueden hacer y quién los aprueba. Las mismas preguntas valen para Cursor MCP. Ambas herramientas ejecutan comandos locales y llaman a servidores remotos con tus credenciales. Una mala configuración convierte a un agente de código en una vía de ejecución remota.

TL;DR: puntos clave

  • Claude Code guarda los servidores MCP en 3 scopes: local y de usuario en ~/.claude.json, y de proyecto en un .mcp.json compartido (documentación de Claude Code).
  • En 3 tipos de sesión (claude -p, Agent SDK y sesiones en la nube fuera de los hilos de un proyecto), los servidores de .mcp.json se cargan sin pedir aprobación (documentación de Claude Code).
  • Claude Code Action anterior a la 1.0.74 activaba todos los servidores MCP de proyecto de la rama de una pull request, así que 1 .mcp.json malicioso podía ejecutar código en el runner (NVD, 2026).
  • Cursor antes de la 1.3.9 permitía que una prompt injection indirecta creara .cursor/mcp.json y ejecutara código sin aprobación: es la CVE-2025-54135 (NVD).
  • Claude Code antes de la 1.0.111 podía ejecutar código del proyecto antes de aceptar el diálogo de confianza inicial: es la CVE-2025-59536 (NVD).
  • El OWASP LLM Top 10 de 2026 sitúa Prompt Injection en 1.º lugar, Excessive Agency en 3.º y Supply Chain en 4.º (Cloud Security Alliance, 2026).

De un vistazo: controles de seguridad de Claude Code MCP y Cursor MCP

Respuesta rápida

¿Cómo se protegen Claude Code MCP y Cursor MCP?

Protege Claude Code MCP y Cursor MCP aprobando cada servidor, guardando los secretos en variables de entorno y aplicando una allowlist de organización. En Claude Code, usa managed-mcp.json o allowedMcpServers. En Cursor, la Enterprise MCP Allowlist. Mantén ambas actualizadas, porque fallos pasados permitían ejecutar código.

ControlClaude CodeCursor
Configuración de proyecto.mcp.json en la raíz del proyecto.cursor/mcp.json
Configuración de usuario o global~/.claude.json (scopes local y de usuario)~/.cursor/mcp.json
Aprobación de servidores compartidosAviso en sesiones interactivas; ninguno en -p, SDK ni algunas sesiones en la nubeAprobación de herramientas por defecto; sigue los Run Modes
Secretos en la configuraciónExpansión ${VAR}Interpolación ${env:NAME}
Política de organizaciónmanaged-mcp.json, allowedMcpServers, deniedMcpServersMCP Allowlist con entradas de comando, URL y herramienta
Límites de red para servidores localesNo es un ajuste MCP nativoModo de red por servidor: permitir todo, allowlist, denegar todo
Fallos críticos pasadosCVE-2025-59536 (corregida en 1.0.111) y CVE-2026-47751 en Claude Code Action (corregida en 1.0.74)CVE-2025-54135 (corregida en 1.3.9) y CVE-2025-54136 (corregida en 1.3)

Cómo comparamos

El 4 de noviembre de 2026 releímos la documentación de MCP y de MCP gestionado de Claude Code, la documentación MCP de Cursor y las entradas de NVD de cuatro CVE. Comparamos archivos de configuración, comportamiento de aprobación y controles de administración.

Cómo funcionan la configuración y los scopes de Claude Code MCP

Los servidores de Claude Code MCP se configuran en tres scopes que controlan dónde se cargan y quién los comparte. El local es privado de un proyecto, el de usuario se aplica a todos tus proyectos y el de proyecto se comparte con un .mcp.json en el control de versiones.

La documentación de Claude Code (2026) indica que el scope local es el predeterminado. Los servidores locales y de usuario viven en ~/.claude.json. Los de proyecto viven en .mcp.json en la raíz del repositorio, así que cualquiera que pueda hacer commit puede añadir uno.

Por eso importa la aprobación. En sesiones interactivas, Claude Code te pide aprobar los servidores de proyecto antes de usarlos. Puedes reiniciar esas decisiones con claude mcp reset-project-choices. En ejecuciones no interactivas, la cosa cambia.

Según la documentación de Claude Code (2026), los servidores de proyecto se cargan sin preguntar en claude -p, en sesiones del Agent SDK y en sesiones en la nube fuera de los hilos de un proyecto. El aviso también se omite en una sesión bypassPermissions iniciada con skipDangerousModePermissionPrompt activado. Los jobs de CI y los agentes en segundo plano confían, por tanto, en el .mcp.json que traiga la rama. La documentación da tres formas de dejar fuera un servidor:

  • Añadirlo a disabledMcpjsonServers, que lo bloquea en cualquier modo de permisos.
  • Excluir los ajustes de proyecto con --setting-sources o la opción settingSources del SDK.
  • Arrancar con --strict-mcp-config, para que solo carguen los servidores pasados con --mcp-config.

Un repositorio clonado no puede aprobar sus propios servidores. La documentación dice que enableAllProjectMcpServers, si está en el .claude/settings.json del proyecto, se ignora en una carpeta no fiable y el servidor queda pendiente. Las aprobaciones de tus ajustes de usuario o gestionados siguen aplicando.

En OAuth, Claude Code rechaza un inicio de sesión cuya respuesta nombra un issuer inesperado. Y solo envía credenciales a endpoints de token HTTPS o localhost.

Prueba nuestra AI Gateway gratis hoy

Cómo funciona la configuración de Cursor MCP

Los servidores de Cursor MCP se configuran en .cursor/mcp.json para un proyecto o en ~/.cursor/mcp.json para todos. Cada entrada ejecuta un comando stdio local o apunta a la URL de un servidor remoto. Cursor pide aprobación antes de usar herramientas MCP por defecto, y los equipos pueden gestionar servidores desde el dashboard.

Según la documentación de Cursor (2026), MCP sigue los mismos Run Modes que los comandos de terminal. En modo Auto-review, las herramientas MCP en la allowlist se ejecutan al momento y el resto pasa por un clasificador.

Para los secretos, Cursor admite la interpolación ${env:NAME} en mcp.json, de modo que las claves no tienen que estar en el archivo. Sus consejos de seguridad son breves y acertados:

  • Verifica el origen e instala solo de desarrolladores de confianza.
  • Revisa a qué datos y APIs accederá el servidor.
  • Usa API keys restringidas con los permisos mínimos.
  • Audita el código de las integraciones críticas.

La documentación recuerda que los servidores MCP pueden acceder a servicios externos y ejecutar código en tu nombre. Eso vale igual para Claude Code. Nuestro benchmark de Claude Code frente a Cursor compara ambas herramientas más allá de MCP.

Qué enseñaron las vulnerabilidades reales: CurXecute, MCPoison y Claude Code Action

Cuatro CVE públicas muestran cómo la configuración MCP acaba siendo una vía de ataque en agentes de código. Dos afectaron a Cursor, una a Claude Code y otra a su GitHub Action. Todas abusaban de la confianza: un archivo escribible, una configuración cambiada tras aprobarse, código ejecutado antes del permiso o una pull request con servidores propios.

CVEHerramienta y versionesQué pasabaCorregida en
CVE-2025-54135 (CurXecute)Cursor por debajo de 1.3.9Una prompt injection indirecta podía crear .cursor/mcp.json sin aprobación y ejecutar código1.3.9
CVE-2025-54136 (MCPoison)Cursor 1.2.4 y anterioresUna configuración MCP aprobada podía cambiarse por un comando malicioso sin nuevo aviso1.3
CVE-2025-59536Claude Code antes de 1.0.111El código del proyecto podía ejecutarse antes de aceptar el diálogo de confianza1.0.111
CVE-2026-47751Claude Code Action antes de 1.0.74Una pull request con un .mcp.json malicioso podía ejecutar código en el runner de GitHub Actions y exponer secretos del workflow1.0.74

Según NVD (2025), CurXecute existía porque crear un dotfile nuevo no requería aprobación, mientras que editarlo sí. Un atacante podía encadenar una prompt injection indirecta para escribir el archivo de ajustes MCP. El agente lanzaba después el comando del atacante.

MCPoison atacaba la propia aprobación. NVD (2025) señala que, cuando un colaborador aceptaba una entrada MCP inofensiva, un atacante con permisos de escritura podía cambiarla por un comando malicioso. No aparecía aviso ni nueva petición. La aprobación debe ligarse a la configuración exacta, no al nombre.

El fallo de Claude Code exigía arrancar la herramienta en un directorio no fiable. Quienes usaban la actualización automática recibieron la corrección sin hacer nada. Nuestro análisis de riesgos de RCE en Claude Code cubre este tipo de fallo.

El caso más reciente llevó el problema a la CI. Según NVD (2026), la GitHub Action de Claude Code descargaba la rama head de la pull request, leía de ella el .mcp.json y activaba todos los servidores MCP del proyecto. La versión 1.0.74 restaura .claude/ y .mcp.json desde la rama base antes de que arranque la CLI.

Cuatro lecciones:

  1. Trata los archivos MCP como código. Revisa los cambios de .mcp.json y .cursor/mcp.json en las pull requests como cualquier ejecutable.
  2. Espera escrituras inyectadas. Cualquier agente que escriba archivos puede intentar escribir su propia configuración.
  3. No dejes que una pull request elija sus servidores. En CI, lee la configuración del agente desde la rama base.
  4. Parchea rápido. Cada corrección llegó en una versión rutinaria, así que la actualización automática cierra la ventana.

Cómo blindar una configuración MCP de desarrollo

Blindar una configuración MCP de desarrollo significa reducir qué servidores se cargan, a qué pueden llegar y qué secretos tienen. Empieza con un inventario, aprueba servidores por su configuración exacta, saca los secretos de los archivos y limita la red de los servidores locales. Después añade reglas de revisión.

Una checklist válida para ambas herramientas:

PasoClaude CodeCursor
Mantén la herramienta actualizadaActualización automática estándar; Claude Code Action 1.0.74 o posteriorActualiza a la última versión
Bloquea servidores de proyecto no deseadosdisabledMcpjsonServersDesactívalos en Customize o restríngelos con la MCP Allowlist
Fija la CI a servidores conocidos--strict-mcp-config con --mcp-configDa a los Cloud Agents solo Team MCP servers del dashboard
Evita que una pull request elija servidoresLee .mcp.json y .claude/ desde la rama baseRevisa los cambios de .cursor/mcp.json antes de fusionar
Saca los secretos de los archivosExpansión ${VAR}Interpolación ${env:NAME}
Limita la salida a redEjecuta servidores stdio no fiables en un contenedor aisladoModo de red por servidor: allowlist o denegar todo
Asigna responsables de revisiónCODEOWNERS en .mcp.jsonCODEOWNERS en .cursor/mcp.json

Según la guía Local Server Security del proyecto MCP (2026), un servidor local es un proceso normal con acceso a tus archivos, tus variables de entorno y la red abierta. Ejecuta un servidor stdio no fiable dentro de un contenedor sin red, por ejemplo docker run -i --rm --network=none <image>. Un servidor que no llega a internet no puede exfiltrar lo que lee.

Revisa también las descripciones de herramientas antes de aprobar. Un servidor malicioso puede esconder instrucciones en ellas, el llamado tool poisoning. La misma guía señala que todos los servidores configurados comparten un único contexto del modelo, así que uno malo puede influir en cómo el agente usa los demás. Elige un cliente que te avise cuando cambie una definición. Nuestra guía MCP security 101 cubre el modelo de amenazas completo.

Cómo aplicar una política MCP en todo el equipo

Aplicar una política MCP significa pasar las decisiones del portátil de cada desarrollador a una política gestionada por administración. Claude Code ofrece managed-mcp.json y allowlists gestionadas. Cursor ofrece una Enterprise MCP Allowlist en su dashboard. Ambos bloquean servidores no aprobados antes de que se ejecuten.

Claude Code. La documentación de MCP gestionado (2026) describe varios niveles de restricción. Los más habituales son:

  • Desactivar MCP: despliega managed-mcp.json con un mapa de servidores vacío.
  • Despliegue fijo: despliega managed-mcp.json con los servidores que quieras; nadie puede añadir otros.
  • Servidores provistos: lista servidores remotos en managedMcpServers; cada usuario conserva los suyos.
  • Catálogo aprobado: usa allowedMcpServers con allowManagedMcpServersOnly: true.
  • Allowlist flexible: usa solo allowedMcpServers, que los usuarios pueden ampliar.
  • Solo denylist: usa deniedMcpServers para bloquear servidores conocidos como peligrosos.

El archivo va en /Library/Application Support/ClaudeCode/ en macOS, /etc/claude-code/ en Linux y WSL, y C:\Program Files\ClaudeCode\ en Windows. Con el control exclusivo activo, claude mcp add falla con un error que menciona la configuración empresarial.

Cursor. Los administradores Enterprise configuran la MCP Allowlist en Team Settings. Las entradas de comando aprueban servidores locales por patrón. Las de URL aprueban servidores remotos. Las allowlists de herramientas limitan qué herramientas se ejecutan solas.

Seguridad y gobernanza: MCP de desarrollo en la empresa

El MCP de desarrollo es un problema de gobernanza porque los agentes de código tienen a la vez código fuente, credenciales y acceso a la shell. Gobernar es saber qué servidores corren en qué equipos, aprobarlos de forma central y registrar lo que hacen. También es tratar el MCP no gestionado como shadow AI.

Controles clave para un despliegue empresarial:

  • Inventario: sigue las configuraciones MCP en equipos gestionados y repositorios.
  • Aprobación central: publica un catálogo aprobado y bloquea el resto.
  • Mínimo privilegio: da a cada servidor tokens acotados, nunca la clave de administrador de un desarrollador. Mira nuestra guía de RBAC para agentes.
  • Inspección en runtime: analiza llamadas y salidas de herramientas en busca de prompt injection y datos sensibles.
  • Registro de auditoría: guarda cada llamada con usuario, servidor y argumentos.

Según el OWASP Top 10 for LLM Applications 2026, resumido por la Cloud Security Alliance (2026), Prompt Injection ocupa el primer puesto, Excessive Agency el tercero y Supply Chain el cuarto. Un agente de código que carga servidores MCP de terceros toca los tres. Nuestra guía del OWASP Top 10 for Agentic Applications 2026 cubre la parte de agentes.

NeuralTrust añade la capa de runtime con el Agent Gateway (TrustGate). Su MCP gateway permite decidir qué herramientas puede llamar cada agente y registra qué modelo accedió a qué herramienta. El tráfico MCP remoto de Claude Code y Cursor puede pasar por un único punto de política. NeuralTrust declara menos de 100 ms de latencia añadida en p95 con PromptGuard y Data Masking activos, y su arquitectura split-plane responde a requisitos de residencia de datos.

¿Cuál deberías elegir?

Claude Code y Cursor pueden usar MCP con seguridad, así que elige por flujo de trabajo y por los controles de administración que necesites. Claude Code ofrece política gestionada por archivos, ideal con gestión de dispositivos. Cursor ofrece una allowlist en el dashboard con modos de red por servidor. Muchos equipos usan ambos.

Si tú...UsaPor qué
Gestionas equipos con MDM y archivos de configuraciónmanaged-mcp.json de Claude CodeControl exclusivo por archivo en cada estación
Quieres una allowlist en dashboard con modos de redEnterprise MCP Allowlist de CursorReglas de comando, URL y herramienta y límites de red por servidor
Ejecutas agentes en CI o sobre pull requestsClaude Code con --strict-mcp-configSolo cargan los servidores que pasas
Usas ambas herramientas en varios equiposUn MCP gateway para servidores remotosUna política y un registro sea cual sea el editor
Trabajas con repositorios sensiblesServidores stdio locales en sandbox sin redLimita la exfiltración si un servidor es malicioso

Conclusión

Claude Code MCP y Cursor MCP hacen a los agentes de código mucho más útiles, y también más expuestos. Los archivos de configuración actúan como código ejecutable y los avisos de aprobación no pueden aparecer en ejecuciones headless. Cuatro CVE, la más reciente de julio de 2026, muestran cómo una configuración o una pull request envenenada acaba en ejecución de código. Mantén ambas herramientas al día, aprueba servidores de forma central y saca los secretos de la configuración.

Asegura Claude Code y Cursor MCP en producción con NeuralTrust

Empieza gratis, con 100.000 solicitudes al mes, y haz pasar el tráfico MCP de tus agentes de código por un único gateway gobernado.

Prueba nuestra AI Gateway gratis hoy

Comparativas relacionadas

Preguntas frecuentes sobre Claude Code MCP

1. ¿Dónde guarda Claude Code la configuración de los servidores MCP?

Claude Code guarda los servidores de scope local y de usuario en ~/.claude.json, y los de proyecto en .mcp.json en la raíz del repositorio. El scope local es el predeterminado. Los administradores pueden desplegar managed-mcp.json en una carpeta del sistema para tener control exclusivo. Revisa los archivos de proyecto como código.

2. ¿Claude Code pregunta antes de ejecutar servidores MCP de proyecto?

En sesiones interactivas, sí. Claude Code te pide aprobar los servidores de proyecto de .mcp.json antes de usarlos. En claude -p, en sesiones del Agent SDK y en sesiones en la nube fuera de los hilos de un proyecto no puede mostrar ese aviso, así que se cargan sin preguntar. Un repositorio no puede aprobarse a sí mismo en una carpeta no fiable. Usa --strict-mcp-config o disabledMcpjsonServers para controlarlos.

3. ¿Es seguro usar Cursor MCP?

Cursor MCP es razonablemente seguro si mantienes Cursor actualizado, apruebas las herramientas e instalas servidores solo de fuentes fiables. Versiones antiguas tenían la CVE-2025-54135 y la CVE-2025-54136, que permitían ejecutar código a través de la configuración MCP. Los administradores Enterprise pueden añadir una MCP Allowlist.

4. ¿Cómo saco las API keys de los archivos de configuración MCP?

Usa referencias a variables de entorno en lugar de claves literales. Claude Code admite la expansión ${VAR} en su configuración MCP, y Cursor admite la interpolación ${env:NAME} en mcp.json. Da a cada servidor una clave restringida con los permisos justos, y rótala si alguna vez se subió un archivo con secretos.

5. ¿Puedo bloquear todos los servidores MCP de Claude Code en mi empresa?

Sí. Despliega un managed-mcp.json con un mapa de servidores vacío en la ruta del sistema de cada sistema operativo. Claude Code no cargará servidores MCP salvo los pocos que funcionan bajo control exclusivo. Para permitir un catálogo aprobado, usa allowedMcpServers con allowManagedMcpServersOnly en true.

6. ¿Qué fue la vulnerabilidad CurXecute?

CurXecute es el nombre de la CVE-2025-54135 en Cursor por debajo de la versión 1.3.9. Crear un dotfile nuevo no requería aprobación, así que una prompt injection indirecta podía escribir .cursor/mcp.json y provocar ejecución remota de código. Cursor lo corrigió en la 1.3.9. Mantén el editor al día y revisa los cambios de configuración.

7. ¿Es seguro ejecutar Claude Code sobre pull requests en CI?

Solo si el workflow no se fía de la configuración de la propia pull request. La CVE-2026-47751 permitía que un .mcp.json malicioso en una pull request ejecutara código en el runner de GitHub Actions con Claude Code Action anterior a la 1.0.74. Actualiza a la 1.0.74 o posterior, lee la configuración MCP desde la rama base y pasa solo servidores aprobados con --strict-mcp-config.

Sobre el autor

Roger Howroyd es Head of Global SEO and AI en NeuralTrust, donde dirige la estrategia de búsqueda de la compañía en SEO, AEO, GEO y optimización para LLM. Está especializado en búsqueda impulsada por IA, estrategia de contenidos y SEM. Conecta con él en LinkedIn.

NeuralTrust es la plataforma líder para proteger y escalar agentes de IA. Nombrada pionera en el Gartner Emerging Market Quadrant for AI Application Security 2026, reconocida en cuatro informes Gartner Hype Cycle en 2026 y destacada en la Gartner Market Guide for Guardian Agents 2026, la Gartner Market Guide for AI Gateways 2025 y el KuppingerCole Leadership Compass for Generative AI Defense 2025. Con sede en Barcelona y oficinas en Londres y Nueva York. Certificada ISO 27001.

Fuentes

Consultadas el 4 de noviembre de 2026.

  1. Anthropic, "Connect Claude Code to tools via MCP", documentación de Claude Code.
  2. Anthropic, "Control MCP server access for your organization", documentación de Claude Code.
  3. Cursor, "Model Context Protocol (MCP)", documentación de Cursor.
  4. NIST National Vulnerability Database, "CVE-2025-54135", publicada el 5 de agosto de 2025.
  5. NIST National Vulnerability Database, "CVE-2025-54136", publicada el 2 de agosto de 2025.
  6. NIST National Vulnerability Database, "CVE-2025-59536", publicada el 3 de octubre de 2025.
  7. NIST National Vulnerability Database, "CVE-2026-47751", publicada el 16 de julio de 2026.
  8. Model Context Protocol, "Local Server Security".
  9. OWASP Gen AI Security Project, "OWASP Top 10 for LLM Applications 2026", publicado el 3 de agosto de 2026.
  10. Cloud Security Alliance, "The OWASP Top 10 for LLM Applications 2026: What Changed and Why It Matters", 21 de octubre de 2026.

Suscríbete a nuestra newsletter

Compartir

Únete a los líderes que aseguran el ecosistema de agentes

Solicita una demo