Cuántos tokens consumen los servidores MCP

Un servidor MCP ocupa tokens con su lista de herramientas, las definiciones que se cargan y los resultados que permanecen en la conversación. Cada parte se puede medir y reducir.

Para llamar a una herramienta, el modelo debe recibir su descripción: nombre, texto explicativo y esquema JSON de entradas. Anthropic lo cuenta como tokens de entrada. Los servidores MCP, por tanto, consumen tokens en un agente de código, cuyas peticiones reenvían el contexto en cada turno.

El coste depende de si se aplazan las definiciones. A septiembre de 2026, Claude Code y las versiones actuales de Codex CLI retrasan la mayoría de esquemas MCP hasta que el modelo pide una herramienta, si el modelo lo permite. Un servidor inactivo cuesta poco, pero no cero; algunas configuraciones vuelven a cargar todo por adelantado.

Qué añade un servidor MCP a la petición

  • Definiciones: nombre, descripción y esquema JSON de cada herramienta. Anthropic cita cinco servidores habituales que pueden sumar unos 55.000 tokens de definiciones si se cargan completos antes de trabajar.
  • Instrucciones del servidor: texto que devuelve al conectarse para explicar su función. Claude Code lo carga al inicio y lo limita por defecto a 2.048 caracteres.
  • Llamadas y resultados: pasan al historial. Una lista de incidencias o un esquema de base de datos puede ocupar miles de tokens y se reenvía en turnos posteriores hasta que se compacte o borre.
  • Instrucciones de uso de herramientas de la API: se añaden cuando hay alguna herramienta, 286 tokens en Opus 5.5, 354 en Sonnet 5 y 496 en Haiku 4.5, según Anthropic a septiembre de 2026. El agente ya paga esa parte por sus herramientas integradas; los servidores MCP no la multiplican.

Definiciones aplazadas o iniciales

Claude Code activa la búsqueda de herramientas por defecto. Al comenzar entran los nombres y las instrucciones de los servidores; el esquema completo se carga cuando Claude busca una herramienta. Anthropic indica que esto suele reducir el coste de definiciones en más del 85 %, pues se cargan las tres a cinco necesarias. Después, las definiciones cargadas permanecen en el historial.

Las definiciones vuelven completas en cada petición en estos casos:

  • ANTHROPIC_BASE_URL apunta a una pasarela ajena a Anthropic. ENABLE_TOOL_SEARCH=true puede activar la búsqueda si la pasarela transmite los bloques necesarios.
  • Se fija ENABLE_TOOL_SEARCH=false o CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS, que la desactiva incluso con ENABLE_TOOL_SEARCH activo.
  • Se usa ENABLE_TOOL_SEARCH=auto: las definiciones se cargan al inicio si suman menos del 10 % de la ventana.
  • El servidor tiene alwaysLoad: true; sus herramientas se cargan por adelantado.
  • La plataforma no admite la búsqueda de herramientas, como ciertos despliegues de modelos antiguos en Google Cloud Agent Platform o Microsoft Foundry en Azure.

Cómo medirlo en Claude Code

/context all

Desglosa la ventana y muestra los tokens de cada herramienta MCP cargada.

/context separa prompt de sistema, herramientas integradas y MCP, memoria, skills y mensajes; all amplía el detalle. Úsalo al iniciar para ver la configuración y después de varias llamadas para medir los resultados acumulados.

/mcp

Lista servidores, estado y número de herramientas, y permite activarlos o desactivarlos en el proyecto.

En planes Pro, Max, Team o Enterprise, /usage atribuye consumo reciente a los servidores MCP según las peticiones que llevaron sus resultados. Señala qué servidor cuesta usar, no solo mantener conectado.

Claude Code avisa si un resultado MCP supera 10.000 tokens y lo limita a 25.000 por defecto con MAX_MCP_OUTPUT_TOKENS. Un resultado mayor se guarda en archivo y la conversación recibe su ruta.

Cómo reducirlo en Claude Code

  • Desactiva servidores que el proyecto no usa con /mcp o /mcp disable <server>. La elección se guarda por proyecto.
  • Limita cada servidor a los proyectos necesarios. claude mcp add usa ámbito local por defecto; --scope user lo carga en todos y .mcp.json lo ofrece a quienes trabajan en el repositorio.
  • Revisa los conectores de claude.ai: Claude Code puede cargarlos automáticamente con una suscripción. disableClaudeAiConnectors en .claude/settings.json o ENABLE_CLAUDEAI_MCP_SERVERS=false los excluyen.
  • Cuando exista una CLI como gh, aws, gcloud o sentry-cli, usarla evita añadir su catálogo de herramientas MCP.
  • Mantén aplazada la carga y reserva alwaysLoad para herramientas necesarias en todos los turnos.
  • Excluye herramientas concretas con una regla de permisos de denegación mcp__<server>__<tool>, que las saca del contexto.

Una lista larga también empeora la selección

Anthropic sitúa entre 30 y 50 herramientas disponibles el punto a partir del cual Claude empieza a elegirlas peor. La carga aplazada ayuda porque muestra solo las buscadas, pero un catálogo más pequeño simplifica la decisión.

Si eliges o creas servidores, reúne operaciones relacionadas en una herramienta con parámetro action, pon prefijos de servicio como github_ y devuelve solo los campos necesarios. Menos herramientas acortan las definiciones; respuestas breves reducen lo que queda en el historial.

Cuándo un cambio de herramientas rompe la caché

La caché compara prefijos. En la API de Claude se ordenan tools, system y messages. Alterar el nombre, descripción o parámetros de una herramienta invalida lo posterior. La siguiente petición vuelve a procesar la conversación como entrada nueva, en lugar de leerla a una décima parte del precio en la mayoría de modelos a septiembre de 2026.

En Claude Code depende del modo de carga. Con herramientas aplazadas, una conexión o cambio añade información al historial y conserva el prefijo. Con carga inicial, un servidor que se desconecta, caduca o reconecta puede invalidarlo sin intervención tuya. Los cambios de configuración se aplican al arrancar: si cargas herramientas al inicio, añádelas o quítalas entre sesiones.

Y en Codex CLI

Codex CLI configura MCP en ~/.codex/config.toml o en .codex/config.toml de un proyecto de confianza, con una tabla [mcp_servers.<name>] por servidor. La CLI, la extensión de editor y la app de escritorio ChatGPT comparten la configuración.

El coste sigue el mismo esquema: herramientas expuestas al modelo y resultados que se incorporan al historial. Las versiones actuales, 0.156 a septiembre de 2026, aplazan definiciones tras una búsqueda en modelos compatibles y enumeran los servidores al inicio. Es un comportamiento del código actual, sujeto a cambios.

/mcp verbose

En la interfaz de Codex, lista herramientas MCP disponibles y diagnósticos de servidor.

/status muestra tokens usados y contexto restante. En el archivo de configuración puedes ajustar:

  • enabled = false desactiva un servidor sin borrar su entrada.
  • enabled_tools permite solo ciertas herramientas y disabled_tools excluye otras después.
  • tools.<tool>.output_token_limit fija el límite de salida de una herramienta dentro de la tabla del servidor.
  • Los servidores de un solo repositorio deberían configurarse en su .codex/config.toml en vez del archivo global.

El resto del consumo

Con definiciones aplazadas y servidores innecesarios desactivados, quedan los archivos leídos, las salidas de comandos y el historial. capsul usa Claude Code o Codex CLI con la sesión ya iniciada, envía lo que pide la tarea en vez del repositorio y se detiene en el presupuesto de tokens elegido, informando de lo que quedó fuera.

capsul ask 'why does the webhook handler retry twice' --budget 3000

Preguntas

¿Un servidor MCP consume tokens si no se usa?

Sí. Con carga aplazada, que es la predeterminada en Claude Code en modelos compatibles a septiembre de 2026, viajan los nombres de herramientas y las instrucciones del servidor. Sin ella, viajan además las definiciones completas en cada petición. Desactivar el servidor para el proyecto elimina ese coste.

¿Cómo veo cuántos tokens usan mis herramientas MCP en Claude Code?

/context all desglosa la ventana y las herramientas cargadas. /mcp muestra el estado y número de herramientas por servidor. En Pro, Max, Team y Enterprise, /usage atribuye parte del consumo reciente a servidores según las peticiones con sus resultados.

¿Cuántas herramientas MCP son demasiadas?

Anthropic indica que la selección puede degradarse más allá de 30 a 50 herramientas y que cinco servidores comunes pueden sumar unos 55.000 tokens de definiciones si se cargan al inicio. La búsqueda de herramientas reduce lo que se carga. Conecta solo los servidores que el proyecto necesita.

¿Añadir un servidor MCP rompe la caché?

Sí si las definiciones se cargan por adelantado: ocupan el comienzo del prefijo. Con carga aplazada en Claude Code, la conexión o desconexión añade contenido y conserva la caché. Los cambios de configuración se aplican al iniciar la siguiente sesión.

¿Dónde configura Codex CLI los servidores MCP?

En ~/.codex/config.toml o en .codex/config.toml de un proyecto de confianza, con una tabla [mcp_servers.<name>] por servidor. enabled = false lo desactiva; enabled_tools y disabled_tools limitan las herramientas. La CLI, la extensión de editor y la app de escritorio comparten la configuración.

$ npm i -g @penra/capsul

← Todas las guías