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, intégralo directamente con tus herramientas.
Crea servidores MCP en cualquier lenguaje que pueda escribir en stdout o exponer un endpoint HTTP: Python, JavaScript, Go, etc.
Explora los plugins oficiales en Cursor Marketplace. Para ver plugins de la comunidad y servidores MCP, explora cursor.directory.
Cómo funciona
Los servidores MCP exponen capacidades a través del protocolo, lo que conecta Cursor con herramientas externas o fuentes de datos.
Cursor admite tres métodos de transporte:
| Transporte | Entorno de ejecución | Implementación | Usuarios | Entrada | Autenticación |
|---|---|---|---|---|---|
stdio | Local | Cursor lo gestiona | Un solo 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 protocolos y extensiones
Cursor es compatible con las siguientes capacidades y extensiones del protocolo MCP:
| Función | Compatibilidad | Descripción |
|---|---|---|
| Herramientas | Compatible | Funciones que el modelo de IA puede ejecutar |
| Instrucciones | Compatible | Mensajes y flujos de trabajo con plantillas para usuarios |
| Recursos | Compatible | Fuentes de datos estructuradas que se pueden leer y consultar |
| Raíces | Compatible | Consultas iniciadas por el servidor sobre los límites de URI o del sistema de archivos |
| Obtención de información | Compatible | Solicitudes iniciadas por el servidor para obtener información adicional de los usuarios |
| Aplicaciones (extensión) | Compatible | Vistas interactivas de la UI devueltas por herramientas MCP |
Aplicaciones MCP
Cursor es compatible con la extensión Aplicaciones MCP. Las herramientas MCP pueden devolver una interfaz de usuario interactiva junto con la salida estándar de la herramienta.
Las Aplicaciones MCP admiten la mejora progresiva. Si un host no puede renderizar la interfaz 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" } } }}// MCP server con uso de HTTP o SSE: se ejecuta en un server{ "mcpServers": { "server-name": { "url": "http://localhost:3000/mcp", "headers": { "API_KEY": "value" } } }}OAuth estático para servidores remotos
En los servidores MCP que usan OAuth, puedes proporcionar credenciales estáticas de cliente OAuth en mcp.json en lugar de usar el registro dinámico de clientes. Usa esta opción cuando:
- El proveedor de MCP te proporciona un ID de cliente fijo (y, opcionalmente, un secreto de cliente)
- El proveedor requiere incluir una URL de redirección en una lista de permitidas (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 de MCP |
| CLIENT_SECRET | No | secreto de cliente de OAuth 2.0 (si el proveedor usa clientes confidenciales) |
| scopes | No | Ámbitos de OAuth que se solicitarán. Si se omiten, Cursor usará /.well-known/oauth-authorization-server para detectar scopes_supported |
URL de redirección fija
Cursor usa URL de redirección de OAuth fijas para servidores MCP. Registra el callback para cada interfaz desde la que se autentiquen los usuarios:
https://www.cursor.com/agents/mcp/oauth/callbackhttp://localhost:8787/callback- Web y agentes de programación de Cursor:
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 permitidas si los usuarios se autentican desde la web y la aplicación de escritorio. El servidor se identifica mediante el parámetro OAuth state, por lo que estas URL de redirección funcionan con todos los servidores MCP.
Combinación con la interpolación de config
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 el ID de cliente y el secreto de cliente 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 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 la 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 los servidores remotos, usa la interpolación de configuración con variables de entorno definidas en el perfil de la shell o en el entorno del sistema.
Uso de la API de extensiones
Para registrar servidores MCP de forma programática, Cursor ofrece una API de extensiones que permite configurarlos dinámicamente sin modificar los archivos mcp.json. Esto resulta especialmente útil en entornos Enterprise y flujos de trabajo de configuración automatizados.
Referencia de la API de extensiones
Registra servidores MCP de forma programática con
vscode.cursor.mcp.registerServer()
Ubicaciones de configuración
Configuración del proyecto
Crea .cursor/mcp.json en tu proyecto para usar herramientas específicas del proyecto.
Configuración global
Crea ~/.cursor/mcp.json en tu directorio principal para usar herramientas disponibles en cualquier lugar.
Interpolación de configuración
Usa variables en los valores de mcp.json. Cursor resuelve las variables en estos campos: command, args, env, url y headers.
Sintaxis admitida:
${env:NAME}variables de entorno${userHome}ruta a la carpeta de inicio${workspaceFolder}raíz del proyecto (la carpeta que contiene.cursor/mcp.json)${workspaceFolderBasename}nombre de la raíz del proyecto${pathSeparator}y${/}separador de rutas del sistema operativo
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 necesitan.
Controles de administración 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 administradores 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 administradores de Enterprise pueden controlar qué servidores MCP pueden ejecutar los usuarios desde el panel de control de Cursor. Abra Configuración del equipo > Configuración de MCP para configurar qué servidores y herramientas puede ejecutar el equipo. Añadir una configuración de MCP a la lista de permitidos la aprueba. No distribuye ni instala el servidor.
Use la lista de permitidos de MCP para definir los servidores aprobados:
- Las entradas de comandos aprueban servidores MCP
stdiolocales según patrones de comandos. - Las entradas de URL aprueban servidores MCP HTTP/SSE remotos según patrones de URL.
- Las listas de permitidos de herramientas restringen qué herramientas de un servidor aprobado pueden ejecutarse automáticamente. Deje vacía una lista de permitidos de herramientas para permitir todas las herramientas de ese servidor.
Controles de red
Las URL de MCP remotas están restringidas al patrón de URL configurado.
Los servidores MCP locales basados en comandos usan su modo de red específico:
- Permitir todo: permite el acceso de red saliente.
- Lista de permitidos: permite únicamente los destinos incluidos en la lista.
- Denegar todo: bloquea el acceso de red saliente.
- Sin sandbox: se ejecuta sin aislamiento de comandos ni de red.
Extensiones MCP de usuario
Los admins pueden permitir que los usuarios configuren sus propios servidores MCP fuera de los patrones de comandos o URL definidos por los admins. Para los MCP de usuario que no coincidan con un patrón definido por un admin, 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 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 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 vistas expandibles de los argumentos y las respuestas:
Imágenes como contexto
Los servidores MCP pueden devolver imágenes: 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 obtener detalles de implementación. Cursor adjunta al chat las imágenes devueltas. Si el modelo es compatible con imágenes, las analiza.
Consideraciones de seguridad
Al instalar servidores MCP, tenga en cuenta estas prácticas de seguridad:
- Verifique el origen: Instale servidores MCP únicamente de desarrolladores y repositorios de confianza
- Revise los permisos: Compruebe a qué datos y API accederá el servidor
- Limite las claves de API: Use claves de API restringidas con los permisos mínimos necesarios
- Audite el código: Para integraciones críticas, revise el código fuente del servidor
Recuerde que los servidores MCP pueden acceder a servicios externos y ejecutar código en su nombre. Comprenda siempre 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 compilaciones, pruebas, vistas previas de SwiftUI y búsquedas 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