Protocolo de contexto del modelo (MCP)
¿Qué es MCP?
El Protocolo de contexto del modelo (MCP) permite conectar Cursor con herramientas externas y fuentes de datos. Instala y gestiona servidores MCP desde la página Personalizar o configúralos en mcp.json.
¿Por qué usar MCP?
MCP conecta Cursor con sistemas y datos externos. En lugar de explicar repetidamente la estructura de tu proyecto, conéctalo directamente con tus herramientas.
Escribe servidores MCP en cualquier lenguaje capaz de imprimir en stdout o exponer un endpoint HTTP: Python, JavaScript, Go, etc.
Explora plugins oficiales en el Cursor Marketplace. Para plugins de la comunidad y servidores MCP, explora cursor.directory.
Cómo funciona
Los servidores MCP exponen capacidades a través del protocolo, conectando Cursor con herramientas externas o fuentes de datos.
Cursor es compatible con tres métodos de transporte:
| Transporte | Entorno de ejecución | Implementación | Usuarios | Entrada | Autenticación |
|---|---|---|---|---|---|
stdio | Local | Gestionado por Cursor | Un usuario | comando de shell | Manual |
SSE | Local/remoto | Implementar como servidor | Varios usuarios | URL de un endpoint SSE | OAuth |
Streamable HTTP | Local/remoto | Implementar como servidor | Varios usuarios | URL de un endpoint HTTP | OAuth |
Compatibilidad con el protocolo y las extensiones
Cursor es compatible con estas capacidades y extensiones del protocolo MCP:
| Feature | Support | Description |
|---|---|---|
| Herramientas | Compatible | Funciones para que el modelo de IA las ejecute |
| Instrucciones | Compatible | Mensajes con plantillas y flujos de trabajo para los usuarios |
| Recursos | Compatible | Fuentes de datos estructuradas que se pueden leer y consultar |
| Raíces | Compatible | Consultas iniciadas por el servidor sobre límites de URI o del sistema de archivos |
| Solicitud de información | Compatible | Solicitudes iniciadas por el servidor para obtener información adicional de los usuarios |
| Apps (extensión) | Compatible | Vistas de interfaz de usuario interactivas devueltas por las herramientas de MCP |
Aplicaciones MCP
Cursor es compatible con la extensión MCP Apps. Las herramientas MCP pueden devolver una interfaz de usuario interactiva junto con la salida estándar de la herramienta.
Las aplicaciones MCP siguen un enfoque de mejora progresiva. Si un host no puede renderizar la interfaz de usuario de la aplicación, la misma herramienta sigue funcionando mediante respuestas MCP normales.
Instalación de servidores MCP
Instalación con un clic
Explora Cursor Marketplace para encontrar plugins oficiales e instalarlos con un clic desde Personalizar, o configura servidores personalizados con mcp.json. Para explorar plugins de la comunidad y servidores MCP, visita cursor.directory. Haz clic en «Añadir a Cursor» en una entrada del marketplace para instalarla y autenticarte con OAuth.
Los administradores de equipo también pueden distribuir servidores MCP a través de un marketplace de equipo. Los servidores distribuidos por el equipo aparecen en Personalizar junto con los servidores MCP personales y del espacio de trabajo.
Uso de mcp.json
Configura servidores MCP personalizados con un archivo JSON:
{ "mcpServers": { "server-name": { "command": "npx", "args": ["-y", "mcp-server"], "env": { "API_KEY": "value" } } }}{ "mcpServers": { "server-name": { "command": "python", "args": ["mcp-server.py"], "env": { "API_KEY": "value" } } }}// Servidor MCP que usa HTTP o SSE - se ejecuta en un servidor{ "mcpServers": { "server-name": { "url": "http://localhost:3000/mcp", "headers": { "API_KEY": "value" } } }}OAuth estático para servidores remotos
Para los servidores MCP que usan OAuth, puedes proporcionar credenciales estáticas de cliente OAuth en mcp.json en lugar del registro dinámico de clientes. Úsalo cuando:
- El proveedor de MCP te proporciona un ID de cliente fijo (y, opcionalmente, un secreto de cliente)
- El proveedor requiere autorizar previamente una URL de redirección (p. ej., Figma, Linear)
- El proveedor no admite el registro dinámico de clientes de OAuth 2.0
Añade un objeto auth a las entradas de servidores remotos que usan url:
{ "mcpServers": { "oauth-server": { "url": "https://api.example.com/mcp", "auth": { "CLIENT_ID": "your-oauth-client-id", "CLIENT_SECRET": "your-client-secret", "scopes": ["read", "write"] } } }}| Campo | Obligatorio | Descripción |
|---|---|---|
| CLIENT_ID | Sí | ID de cliente de OAuth 2.0 del proveedor MCP |
| CLIENT_SECRET | No | Secreto del cliente de OAuth 2.0 (si el proveedor usa clientes confidenciales) |
| scopes | No | Scopes de OAuth que se deben solicitar. Si se omite, Cursor usará /.well-known/oauth-authorization-server para detectar scopes_supported |
URL de redirección estática
Cursor usa URL de redirección de OAuth fijas para los servidores MCP. Registra el callback para cada plataforma desde la que se autentican tus usuarios:
https://www.cursor.com/agents/mcp/oauth/callbackhttp://localhost:8787/callback- Web y Cursor Agents:
https://www.cursor.com/agents/mcp/oauth/callback - Aplicación de escritorio:
http://localhost:8787/callback
Al configurar la aplicación OAuth del proveedor de MCP, registra ambas URL como URI de redirección autorizadas si los usuarios se autentican tanto desde la web como desde la aplicación de escritorio. El servidor se identifica mediante el parámetro state de OAuth, por lo que estas URL de redirección funcionan para todos los servidores MCP.
Combinación con la interpolación de la configuración
Los valores de auth admiten la misma interpolación que los demás campos:
{ "mcpServers": { "oauth-server": { "url": "https://api.example.com/mcp", "auth": { "CLIENT_ID": "${env:MCP_CLIENT_ID}", "CLIENT_SECRET": "${env:MCP_CLIENT_SECRET}" } } }}Usa variables de entorno para Client ID y Client Secret en lugar de incluirlos directamente en el código.
Configuración del servidor STDIO
Para los servidores STDIO (servidores locales de línea de comandos), configura estos campos en tu mcp.json:
| Campo | Obligatorio | Descripción | Ejemplos |
|---|---|---|---|
| type | Sí | Tipo de conexión del servidor | "stdio" |
| command | Sí | Comando para iniciar el ejecutable del servidor. Debe estar disponible en la ruta del sistema o incluir su ruta completa. | "npx", "node", "python", "docker" |
| args | No | Lista de argumentos que se pasan al comando | ["server.py", "--port", "3000"] |
| env | No | Variables de entorno del servidor | {"API_KEY": "${env:api-key}"} |
| envFile | No | Ruta a un archivo de entorno para cargar más variables | ".env", "${workspaceFolder}/.env" |
La opción envFile solo está disponible para servidores STDIO. Los servidores remotos (HTTP/SSE) no admiten envFile. Para servidores remotos, usa la interpolación de configuración con variables de entorno definidas en tu perfil de shell o en el entorno del sistema.
Uso de la API de extensión
Para el registro programático de servidores MCP, Cursor proporciona una API de extensión que permite una configuración dinámica sin modificar archivos mcp.json. Esto resulta especialmente útil en entornos empresariales y flujos de trabajo de configuración automatizada.
Referencia de la API de extensión
Registrar servidores MCP de forma programática con
vscode.cursor.mcp.registerServer()
Ubicaciones de la configuración
Configuración del proyecto
Crea .cursor/mcp.json en tu proyecto para herramientas específicas del proyecto.
Configuración global
Crea ~/.cursor/mcp.json en tu directorio personal para herramientas disponibles en cualquier lugar.
Interpolación en la configuración
Usa variables en los valores de mcp.json. Cursor resuelve variables en estos campos: command, args, env, url y headers.
Sintaxis admitida:
${env:NAME}variables de entorno${userHome}ruta a tu carpeta personal${workspaceFolder}raíz del proyecto (la carpeta que contiene.cursor/mcp.json)${workspaceFolderBasename}nombre de la raíz del proyecto${pathSeparator}y${/}separador de ruta del SO
Ejemplos
{ "mcpServers": { "local-server": { "command": "python", "args": ["${workspaceFolder}/tools/mcp_server.py"], "env": { "API_KEY": "${env:API_KEY}" } } }}{ "mcpServers": { "remote-server": { "url": "https://api.example.com/mcp", "headers": { "Authorization": "Bearer ${env:MY_SERVICE_TOKEN}" } } }}Autenticación
Los servidores MCP usan variables de entorno para la autenticación. Pasa las claves de API y los tokens mediante la configuración.
Cursor es compatible con OAuth para los servidores que lo requieren.
Controles para Admins de Enterprise
La distribución de MCP y la política de MCP se configuran por separado. Los administradores de equipo pueden distribuir servidores MCP compartidos. Los Admins de Enterprise pueden configurar la política de MCP.
Distribución de MCP de equipo
Configure servidores MCP de equipo compartidos en Panel de control > Integraciones y MCP. Estos servidores están disponibles para los agentes en la nube.
Para que un servidor MCP de equipo independiente ya existente esté disponible en la ventana del agente, el IDE y la CLI, seleccione Añadir al marketplace de equipo en Servidores MCP de equipo. Cursor vincula el servidor al marketplace de equipo predeterminado sin interrumpir el acceso de los agentes en la nube. Después, los miembros del equipo pueden instalarlo y configurarlo desde Personalizar.
Vincular un servidor MCP a un marketplace no lo instala ni lo activa para todos. Configure el acceso al marketplace y los modos de instalación de plugins en Panel de control > Plugins. Consulte Migrar MCP de equipo existentes para ver el flujo completo.
Lista de permitidos de MCP
Los Admins de Enterprise pueden controlar qué servidores MCP pueden ejecutar los usuarios desde el Panel de control de Cursor. Abre Ajustes del equipo > Configuración de MCP para configurar qué servidores y herramientas puede ejecutar el equipo. Añadirlo a la lista de permitidos aprueba una configuración de MCP. No distribuye ni instala el servidor.
Usa la lista de permitidos de MCP para definir los servidores aprobados:
- entradas de comando aprueban servidores MCP
stdiolocales según el patrón del comando. - entradas de URL aprueban servidores MCP HTTP/SSE remotos según el patrón de la entrada de URL.
- listas de permitidos para herramientas restringen qué herramientas de un servidor aprobado pueden ejecutarse automáticamente. Deja vacía una lista de permitidos para herramientas para permitir todas las herramientas de ese servidor.
Controles de red
Las URL remotas de MCP están restringidas al patrón de URL configurado.
Los servidores MCP locales basados en comandos usan el modo de red configurado para cada servidor:
- Permitir todo: permite el acceso de red saliente.
- Lista de permitidos: permite solo los destinos incluidos en la lista.
- Denegar todo: bloquea el acceso de red saliente.
- Sin sandbox: ejecuta sin sandbox de comandos ni de red.
Extensiones MCP de usuario
Admins pueden permitir que los usuarios configuren sus propios servidores MCP al margen de los patrones de comando o URL definidos por admins. En el caso de los MCP de usuario que no coincidan con un patrón definido por admins, la lista de bloqueo de red de MCP de usuario puede bloquear los destinos de red correspondientes.
Uso de MCP en el chat
Cursor usa automáticamente las herramientas MCP que aparecen en Available Tools cuando corresponde. Esto incluye el modo Plan. Solicita una herramienta específica por su nombre o describe lo que necesitas. Activa o desactiva servidores MCP desde Personalizar en la barra lateral.
Aprobación de herramientas
De forma predeterminada, Cursor solicita aprobación antes de usar herramientas de MCP. Haz clic en la flecha junto al nombre de la herramienta para ver los argumentos.
Modo de ejecución
MCP sigue los mismos modos de ejecución que los comandos de terminal. Por ejemplo, en el modo Auto-review, las herramientas de MCP de la lista de permitidos se ejecutan de inmediato y todo lo demás pasa por el clasificador.
Respuesta de la herramienta
Cursor muestra la respuesta en el chat con secciones desplegables de argumentos y respuestas:
Imágenes como contexto
Los servidores MCP pueden devolver imágenes, como capturas de pantalla, diagramas, etc. Devuélvelas como cadenas codificadas en base64:
const RED_CIRCLE_BASE64 = "/9j/4AAQSkZJRgABAgEASABIAAD/2w...";// ^ base64 completo recortado para mayor legibilidadserver.tool("generate_image", async (params) => { return { content: [ { type: "image", data: RED_CIRCLE_BASE64, mimeType: "image/jpeg", }, ], };});Consulta este servidor de ejemplo para más detalles de implementación. Cursor adjunta las imágenes devueltas al chat. Si el modelo es compatible con imágenes, las analiza.
Consideraciones de seguridad
Al instalar servidores MCP, ten en cuenta estas prácticas de seguridad:
- Verifica la fuente: Instala servidores MCP solo de desarrolladores y repositorios de confianza
- Revisa los permisos: Comprueba a qué datos y API tendrá acceso el servidor
- Limita las claves de API: Usa claves de API restringidas con los permisos mínimos necesarios
- Audita el código: En integraciones críticas, revisa el código fuente del servidor
Recuerda que los servidores MCP pueden acceder a servicios externos y ejecutar código en tu nombre. Asegúrate siempre de entender qué hace un servidor antes de instalarlo.
Ejemplos reales
Para ver ejemplos prácticos de MCP en acción:
- Integración con Xcode — Conecta Cursor a Xcode 26.3+ para compilar, ejecutar pruebas, previsualizar SwiftUI y buscar en la documentación de Apple
- Guía de desarrollo web — Integra Linear, Figma y herramientas del navegador en tu flujo de trabajo de desarrollo
Preguntas frecuentes
Los servidores MCP conectan Cursor con herramientas externas como Google Drive, Notion y otros servicios para incorporar documentación y requisitos a tu flujo de trabajo de programación.
Consulta los registros de MCP de la siguiente manera:
- Abre el panel Salida en Cursor (Cmd+Shift+UCtrl+Shift+U)
- Selecciona "MCP Logs" en el menú desplegable
- Comprueba si hay errores de conexión, problemas de autenticación o bloqueos del servidor
Los registros muestran la inicialización del servidor, las llamadas a herramientas y los mensajes de error.
¡Sí! Activa o desactiva servidores sin eliminarlos:
- Abre Personalizar en la barra lateral
- Busca el servidor MCP que quieres modificar
- Usa el interruptor para activarlo o desactivarlo
Los servidores desactivados no se cargarán ni aparecerán en el chat. Esto resulta útil para solucionar problemas o reducir la cantidad de herramientas.
Si un servidor MCP falla:
- Cursor muestra un mensaje de error en el chat
- La llamada a herramienta se marca como fallida
- Puedes volver a intentar la operación o consultar los registros para obtener más información
- Los demás servidores MCP siguen funcionando con normalidad
Cursor aísla los fallos de los servidores para evitar que uno afecte a los demás.
Para servidores basados en npm:
- Elimina el servidor de Personalizar
- Borra la caché de npm:
npm cache clean --force - Vuelve a añadir el servidor para obtener la versión más reciente
Para servidores personalizados, actualiza tus archivos locales y reinicia Cursor.
Sí, pero sigue las mejores prácticas de seguridad:
- Usa variables de entorno para los secretos; nunca los incluyas directamente en el código
- Ejecuta los servidores que manejan datos confidenciales localmente con el transporte
stdio - Limita los permisos de la clave de API al mínimo necesario
- Revisa el código del servidor antes de conectarlo a sistemas confidenciales
- Considera ejecutar los servidores en entornos aislados