Ir al contenido
Mastering Claude

Inicio / Extender: habilidades, MCP, subagentes, hooks, plugins

Extender: habilidades, MCP, subagentes, hooks, plugins9 minApplication

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.

Figure 1

El núcleo del protocolo MCP cambia de forma

antes del 28 de julio de 2026
Saludo obligatorio
Cliente y servidor intercambian initialize y luego notifications/initialized antes de cualquier llamada, y una sesión lleva un identificador Mcp Session Id en el transporte HTTP.
28 de julio de 2026
Núcleo sin estado
La especificación MCP retira el saludo y el identificador de sesión del núcleo, la información de versión viaja ahora en un parámetro _meta en cada solicitud.
28 de julio de 2026
Tasks se convierte en una extensión
El seguimiento de un trabajo largo sale del núcleo del protocolo, con un sondeo tasks/get que sustituye a una espera bloqueante del resultado.
versión 2.1.232
Runtime MCP v2 en Claude Code
Claude Code negocia automáticamente, servidor por servidor, la revisión de protocolo más reciente que cada uno acepta.
La cronología contrapone el antiguo mecanismo con saludo y sesión con estado, retirado del núcleo del protocolo por la revisión de julio de 2026, a lo que lo sustituye.
Calíbralo tú mismo

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 hay que recordar
  • 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.
Hazlo ahora

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.

Verificar en la fuente

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.