Cómo conectar un servidor MCP a Cursor y Claude Code

Ya tienes (o elegiste) un servidor MCP y quieres usarlo. Conectarlo es declararlo en la configuración de tu cliente: en Claude Code con claude mcp add, y en Cursor con un archivo .cursor/mcp.json. Aquí va el paso a paso para ambos. Si todavía no tienes claro qué es esto, parte de qué es MCP.
Antes de empezar: ¿local o remoto?
Un servidor MCP puede correr de dos formas, y eso cambia cómo lo conectas (lo explico a fondo en MCP por dentro):
- Local (transporte stdio): un proceso que arranca en tu máquina. Lo conectas dándole el comando que lo levanta.
- Remoto (transporte HTTP): un servidor alojado al que te conectas por URL, normalmente con autenticación.
En Claude Code
Para un servidor local (stdio), usa claude mcp add con un nombre y, después de --, el comando que lo arranca:
claude mcp add --scope user mi-servidor -- node /ruta/absoluta/al/servidor/build/index.jsPara un servidor remoto (HTTP), indica el transporte y la URL (aquí no va el --):
claude mcp add --transport http mi-servidor https://ejemplo.com/mcpSobre el scope (dónde se guarda la configuración):
--scope userlo deja disponible en todos tus proyectos (se guarda en tu config del home,~/.claude.json).--scope projectlo guarda en un.mcp.jsonen el repo, para versionarlo y compartirlo con el equipo.
Verifica con /mcp dentro de Claude Code: deberías ver el servidor y sus herramientas.
En Cursor
Cursor usa un archivo JSON con una clave mcpServers. Para un proyecto, crea .cursor/mcp.json en la raíz del repo (o el global en ~/.cursor/mcp.json, que aplica en todo):
{
"mcpServers": {
"mi-servidor": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": { "BRAVE_API_KEY": "tu-api-key" }
}
}
}Cada servidor define su command, sus args y, si hace falta, variables de entorno en env (útil para API keys). Recarga Cursor y el servidor aparecerá en su configuración de MCP, con las herramientas listas para que el agente las use.
Verifica que funciona
- En Claude Code:
/mcplista los servidores activos y sus tools. - En Cursor: la sección de MCP muestra el servidor y un indicador de estado.
- En ambos: pídele al agente que use una de las herramientas del servidor y confirma que responde.
Problemas comunes
- Rutas relativas: usa rutas absolutas al ejecutable o al script del servidor. Un
./build/index.jsque funciona en tu terminal puede fallar cuando lo lanza el cliente desde otro directorio. - El servidor no arranca: pruébalo a mano en la terminal con el mismo comando antes de conectarlo. Si falla suelto, falla conectado.
- Falta una API key: si el servidor necesita credenciales, pásalas por
env(Cursor) o en la configuración del servidor. Un servidor que arranca pero no responde suele ser esto. - Demasiados servidores: cada uno añade definiciones de herramientas al contexto y lo infla. Activa solo los que uses; lo explico en optimizar Claude Code y reducir tokens.
Preguntas frecuentes
¿Cómo conecto un servidor MCP a Claude Code?
Para uno local: claude mcp add --scope user <nombre> -- <comando que arranca el servidor>. Para uno remoto por HTTP: claude mcp add --transport http <nombre> <url>. Luego verifica con /mcp.
¿Cómo conecto un servidor MCP a Cursor?
Creando un archivo .cursor/mcp.json (o ~/.cursor/mcp.json global) con un bloque mcpServers que define el command, los args y, si hace falta, el env del servidor, y recargando Cursor.
¿Cuál es la diferencia entre un servidor local y uno remoto?
El local corre como un proceso en tu máquina (transporte stdio) y lo conectas con su comando de arranque; el remoto está alojado y te conectas por URL (transporte HTTP), normalmente con autenticación.
¿Puedo usar el mismo servidor en Cursor y Claude Code?
Sí. El servidor MCP es independiente del cliente; solo lo declaras en cada uno con su formato.
Cierre
Conectar un servidor MCP es, en el fondo, decirle a tu cliente cómo arrancarlo o dónde encontrarlo. Si aún no tienes uno y quieres escribir el tuyo, sigue con cómo crear un servidor MCP; si quieres elegir uno ya hecho, mira los mejores servidores MCP.