Inicio / Extender: habilidades, MCP, subagentes, hooks, plugins
Conectar un servidor MCP y qué ha cambiado
Un servidor MCP remoto se conecta con un solo comando, claude mcp add, y Claude Code detecta por sí mismo si hace falta una autenticación. claude mcp list muestra el estado real de cada servidor declarado. Independientemente de Claude Code, la especificación MCP cambió de núcleo: uno sin estado sustituye al núcleo con estado.
Un servidor MCP remoto se conecta con un solo comando: claude mcp add --transport http nom-du-serveur https://exemple.example.com/mcp declara la entrada, y Claude Code detecta por sí mismo si hace falta una autenticación. Cuando el servidor responde 401 o 403, Claude Code marca la entrada como necesitada de autenticación y propone claude mcp login para abrir el flujo OAuth, o la opción --header "Authorization: Bearer ..." para un token fijo pasado a mano.
Verificar antes de confiar
claude mcp list muestra el estado real de cada servidor declarado, con al menos seis estados posibles: conectado, autenticación necesaria, fallo de conexión, aprobación pendiente, rechazado según el ajuste disabledMcpjsonServers, o desactivado para este proyecto y reactivable con /mcp; un servidor HTTP o SSE ya usado también puede mostrarse en caché. Un fallo de conexión indica que Claude Code no logró contactar con ese servidor concreto, no que el propio comando list haya fallado.
$ claude mcp list
depot-tickets Connected
facturation-api Needs authentication
brouillon-crm Pending approval
El alcance elegido al añadirlo determina quién ve ese servidor. Por orden de prioridad decreciente: el alcance local (--scope local, el valor por defecto, privado, guardado en ~/.claude.json), luego el alcance de proyecto (--scope project, el archivo .mcp.json compartido por git, descrito en la lección anterior), luego el alcance de usuario (--scope user, disponible en todos los proyectos del equipo). Cuando dos alcances declaran el mismo nombre de servidor, se usa la configuración completa del alcance más fuerte, nada se fusiona campo por campo entre los dos.
El protocolo cambió de núcleo el 28 de julio de 2026
Independientemente de Claude Code, la propia especificación MCP cambió de forma. La revisión publicada el 28 de julio de 2026 sustituye un núcleo con estado, en el que cliente y servidor abrían primero un saludo initialize antes de cualquier intercambio, por un núcleo sin estado en el que cada solicitud lleva su propia información de versión en un parámetro _meta. La cabecera Mcp Session Id desaparece del transporte HTTP. La funcionalidad Tasks, que permitía seguir un trabajo largo sin bloquear la respuesta, sale del núcleo del protocolo y se convierte en una extensión oficial separada, con un sondeo tasks/get en lugar de una espera bloqueante. Además se añade un campo extensions a las capacidades del cliente y del servidor, para transportar posibles extensiones futuras más allá del núcleo del protocolo.
Claude Code elige un runtime MCP al arrancar y lo conserva hasta salir. El runtime v2 pregunta a los servidores HTTP, a los servidores stdio y a los conectores claude.ai si aceptan la revisión más reciente, y la usa con los que la aceptan. Desde octubre de 2026, es el comportamiento por defecto para un servidor stdio, también en Bedrock, Vertex y Foundry: la variable MCP_PROTOCOL_NEGOTIATION=legacy lo rechaza. Un servidor antiguo, escrito antes de julio de 2026, sigue funcionando, y la negociación elige la revisión que entiende. Esta sección describe el estado del protocolo al 24 de octubre de 2026, un tema que se mueve al ritmo de sus propias versiones, no al del curso. La lección siguiente muestra cómo escribir, del lado del servidor, el programa que este comando claude mcp add acaba de declarar.
Reintentar y filtrar
En el terminal interactivo, /mcp reconnect all reintenta de una vez todos los servidores que han fallado o necesitan autenticación. Si gestionas una lista blanca allowedMcpServers en los ajustes gestionados, desde octubre de 2026 ya no filtra los servidores stdio de managed-mcp.json que usan ${VAR} solo en env: un servidor que tu lista dejaba fuera se carga tras la actualización, y deniedMcpServers lo mantiene apagado.
El núcleo del protocolo MCP cambia de forma
Una desarrolladora añade un servidor MCP remoto con claude mcp add --transport http facturation https://facturation.example.com/mcp, luego ejecuta claude mcp list y lee, junto al nombre facturation, el estado Needs authentication.
Escribe en una frase lo que esta situación establece, y en una frase lo que no establece.
Lo que esto establece: Este estado establece que Claude Code contactó con ese servidor y recibió una respuesta que exige una autenticación, típicamente un código 401 o 403.
Lo que esto no establece: Esto no establece que el servidor esté mal configurado por el lado de la desarrolladora, ni qué método de autenticación, OAuth o clave fija, espera ese servidor en particular.
Los tres calibrados falsos más frecuentes
- Demasiado amplio Este estado prueba que el servidor facturation está roto y que ningún cliente MCP podrá conectarse nunca a él.
- Demasiado estrecho Este estado no dice nada preciso, un comando claude mcp list puede mostrar cualquier texto sin relación con el estado real del servidor.
- Fuera de tema Este estado confirma que el alcance elegido para esta adición, local, de proyecto o de usuario, es el alcance más adecuado para ese servidor.
- Claude Code marca automáticamente un servidor remoto como necesitado de autenticación en cuanto responde 401 o 403, sin que tengas que adivinar a cuál le falta una clave.
- claude mcp list devuelve al menos seis estados posibles, entre ellos conectado, autenticación necesaria, fallo de conexión, aprobación pendiente, rechazado, y desactivado para este proyecto, y un fallo señala a ese servidor concreto, no al propio comando.
- Entre dos alcances que declaran el mismo nombre de servidor, se aplica la entrada completa del alcance más fuerte, nada se fusiona campo por campo.
- La especificación MCP publicada en julio de 2026 retira el saludo inicial y el estado de sesión del núcleo del protocolo, independientemente de cualquier versión de Claude Code.
- Desde octubre de 2026, un servidor stdio negocia por defecto la revisión de protocolo más reciente, también en Bedrock, Vertex y Foundry, y MCP_PROTOCOL_NEGOTIATION=legacy rechaza esa negociación.
Abre una terminal en un proyecto donde Claude Code esté instalado y ejecuta claude mcp list. Para cada servidor mostrado, anota cuál de los cuatro estados, conectado, autenticación necesaria, aprobación pendiente, o fallo de conexión, se aplica; si la lista está vacía, anota también esa constatación.
Cada afirmación datable de esta lección remite aquí al texto público que la respalda. Una fuente que no se abre no prueba nada.
- Claude Code, MCP: negociación de protocolo, runtimes, /mcp reconnect consultée le 2026-10-24
- Model Context Protocol, registro de cambios de la especificación 2026-07-28 consultée le 2026-09-02
- Registro de cambios de Claude Code: negociación del protocolo 2026-07-28, allowedMcpServers y deniedMcpServers consultée le 2026-10-24