Combien de tokens coûtent les serveurs MCP ?
Un serveur MCP coûte des tokens pour sa liste d'outils, les définitions chargées et les résultats conservés. Voici comment voir ces trois postes et les limiter.
Un modèle ne peut appeler un outil que si la requête le lui décrit : nom, quelques phrases et schéma JSON des entrées. Anthropic facture cette description comme des tokens d'entrée. Les serveurs MCP consomment donc des tokens et, dans un agent de code, ils peuvent en consommer à chaque tour puisque chaque requête renvoie le contexte.
Le montant dépend du chargement différé des définitions. En septembre 2026, Claude Code et les versions récentes de Codex CLI gardent la plupart des schémas MCP en réserve jusqu'à ce que le modèle les demande, sur les modèles compatibles. Un serveur inactif coûte désormais peu, mais pas zéro. Certains réglages rétablissent toutefois le coût complet.
Ce qu'un serveur MCP ajoute à une requête
- Définitions d'outils : nom, description et schéma JSON. La documentation d'Anthropic cite cinq serveurs courants, GitHub, Slack, Sentry, Grafana et Splunk, qui peuvent représenter environ 55 000 tokens avant même que le modèle commence à travailler.
- Instructions du serveur : court texte renvoyé à la connexion pour expliquer son rôle. Claude Code le charge au début de la session et le coupe à 2 048 caractères par défaut.
- Appels et résultats : chaque appel du modèle et chaque réponse du serveur rejoignent l'historique. Une liste de tickets ou un schéma de base peut prendre des milliers de tokens. Il revient à chaque tour, à tarif réduit tant que le cache tient, jusqu'au compactage ou à l'effacement.
- Prompt système d'utilisation des outils : l'API Claude ajoute ses instructions dès qu'un outil est présent, soit 286 tokens sur Opus 5.5, 354 sur Sonnet 5 et 496 sur Haiku 4.5 dans la grille de septembre 2026. Un agent de code le paie déjà pour ses outils intégrés ; chaque serveur MCP ne le multiplie pas.
Définitions différées ou immédiates
Claude Code active la recherche d'outils par défaut. Au démarrage, seuls les noms et les instructions des serveurs entrent dans le contexte. Le schéma complet est chargé quand Claude cherche un outil. Selon Anthropic, ce mécanisme réduit souvent de plus de 85 % le surcoût des définitions, en ne chargeant que les trois à cinq outils nécessaires. Une fois chargée, la définition reste dans la conversation et revient avec l'historique.
Les définitions MCP repartent intégralement dans chaque requête dans les cas suivants :
ANTHROPIC_BASE_URLpointe vers une passerelle différente d'Anthropic. RéglezENABLE_TOOL_SEARCH=truesi elle transmet les blocs nécessaires à la recherche d'outils.ENABLE_TOOL_SEARCH=falseest défini, ouCLAUDE_CODE_DISABLE_EXPERIMENTAL_BETASdésactive la recherche même siENABLE_TOOL_SEARCHest activé.ENABLE_TOOL_SEARCH=autoest défini : les définitions sont chargées d'emblée si leur total reste sous 10 % de la fenêtre de contexte.- Un serveur porte
alwaysLoad: true: ses outils sont chargés d'emblée. - Le déploiement refuse la recherche d'outils : modèles Claude antérieurs à la génération 4.5 sur Agent Platform de Google Cloud, ou déploiements Microsoft Foundry hébergés sur Azure.
Voir le surcoût dans Claude Code
/context allDétaille la fenêtre par catégorie et les tokens de chaque outil MCP chargé.
/context montre les catégories de la fenêtre : prompt système, outils système et MCP, mémoire, skills et messages. all déplie chaque élément. Lancez la commande au début d'une session pour mesurer la configuration avant votre première demande, puis après quelques appels d'outils pour voir l'effet de leurs résultats.
/mcpListe les serveurs, leur état et leurs outils ; permet leur activation par projet.
Sur les plans Pro, Max, Team et Enterprise, /usage attribue aussi l'usage récent aux serveurs MCP, en ne comptant que les requêtes ayant transporté leurs résultats. Cela mesure le coût de leur utilisation plutôt que celui de leur simple présence, souvent la question la plus utile.
Claude Code avertit également lorsqu'un résultat MCP dépasse 10 000 tokens. Il plafonne les résultats à 25 000 par défaut via MAX_MCP_OUTPUT_TOKENS. Un résultat trop grand est enregistré dans un fichier ; la conversation reçoit son chemin à la place.
Réduire ce coût dans Claude Code
- Désactivez les serveurs inutiles au projet dans
/mcp, ou avec/mcp disable <server>. Claude Code mémorise ce choix par projet sans supprimer la configuration. - Limitez les serveurs aux projets concernés.
claude mcp addemploie par défaut une portée locale.--scope userles charge dans tous vos projets et un.mcp.jsonversionné les propose à tous ceux qui l'approuvent. - Vérifiez les connecteurs claude.ai. Avec un abonnement claude.ai, Claude Code les charge automatiquement.
"disableClaudeAiConnectors": truedans.claude/settings.json, ouENABLE_CLAUDEAI_MCP_SERVERS=falseau lancement, les écarte. - Utilisez une commande CLI quand elle existe. Selon les conseils d'Anthropic,
gh,aws,gcloudetsentry-clin'ajoutent aucune liste d'outils à chaque requête, et Claude peut les exécuter directement. - Gardez le chargement différé. Réservez
alwaysLoadaux rares outils nécessaires à chaque tour. - Retirez les outils individuels indésirables. Une règle de refus visant
mcp__<server>__<tool>enlève cet outil du contexte de Claude.
Une longue liste nuit aussi au choix des outils
Un grand catalogue a un second prix. La documentation d'Anthropic situe entre 30 et 50 outils disponibles le point où le choix de Claude commence à se dégrader. Le chargement différé aide en ne présentant que les outils recherchés ; une liste plus courte aide davantage encore.
Si vous concevez des serveurs, Anthropic recommande de réunir des opérations proches dans un outil doté d'un paramètre action, plutôt que créer un outil par action, de préfixer les noms par service (github_, slack_) et de ne renvoyer que les champs utiles à l'étape suivante. Moins d'outils réduit les définitions ; des réponses courtes réduisent l'historique durable.
Quand une modification d'outil casse le cache
Le cache compare un préfixe exact. Sur l'API Claude, l'ordre est tools, puis system, puis messages. Changer le nom, la description ou les paramètres d'un outil invalide tout le cache. La requête suivante retraite alors la conversation comme entrée nouvelle, au lieu de la relire au dixième du prix sur la plupart des modèles en septembre 2026.
Dans Claude Code, l'effet dépend du mode de chargement. Avec les outils différés, une connexion, déconnexion ou modification de serveur ajoute simplement du contenu à la conversation ; le préfixe déjà en cache tient. Avec les outils chargés d'emblée, tout changement l'invalide. Cela peut arriver sans action de votre part : processus local arrêté, session distante expirée ou reconnexion après une panne. Les modifications de configuration MCP ne s'appliquent qu'au démarrage suivant ; ajoutez ou retirez donc ces serveurs entre deux sessions.
Dans Codex CLI
Codex CLI garde les serveurs MCP dans ~/.codex/config.toml, ou dans .codex/config.toml pour un projet de confiance, avec une table [mcp_servers.<name>] par serveur. Le CLI, l'extension IDE et l'application de bureau ChatGPT partagent cette configuration : un serveur ajouté pour l'un est disponible aux trois.
La facture suit la même logique : chaque outil exposé est décrit au modèle et chaque résultat rejoint l'historique. Les versions récentes, dont 0.156 en septembre 2026, diffèrent les définitions MCP derrière une recherche sur les modèles compatibles et listent les serveurs d'emblée. Ce comportement figure dans le code ouvert plutôt que dans la documentation ; il peut changer.
/mcp verboseDans l'interface Codex, liste les outils MCP appelables et le diagnostic des serveurs.
/status montre les tokens consommés et le contexte restant. Les réglages se trouvent dans le même fichier de configuration :
enabled = falsedésactive un serveur sans supprimer son entrée.enabled_toolslimite l'exposition aux outils listés ;disabled_toolsen retire ensuite certains.tools.<tool>.output_token_limit, dans la table du serveur, fixe un plafond de sortie pour cet outil.- Placez les serveurs propres à un dépôt dans son
.codex/config.toml, pas dans le fichier global.
Le reste de la facture
Quand les définitions sont différées et les serveurs inutiles désactivés, reste le contexte lui-même : fichiers lus, sorties de commandes et historique. C'est sur cette part que capsul agit. Il pilote le Claude Code ou Codex CLI auquel vous êtes déjà connecté, envoie ce que la tâche demande et s'arrête au budget choisi en indiquant ce qui a été écarté.
capsul ask 'why does the webhook handler retry twice' --budget 3000Questions
Un serveur MCP inutilisé consomme-t-il des tokens ?
Oui. Avec le chargement différé, par défaut dans Claude Code sur les modèles compatibles en septembre 2026, il coûte ses noms d'outils et ses instructions à chaque requête. Sans ce mode, chaque outil coûte sa définition complète : nom, description et schéma JSON. Le désactiver pour le projet ramène son coût à zéro.
Comment mesurer les tokens MCP dans Claude Code ?
/context all détaille la fenêtre et les tokens de chaque outil MCP chargé. /mcp montre l'état et le nombre d'outils des serveurs. Sur les plans Pro, Max, Team et Enterprise, /usage répartit aussi l'usage récent selon les serveurs dont les résultats ont été transportés.
Combien d'outils MCP est-ce trop pour Claude Code ?
Selon Anthropic, le choix de Claude commence à se dégrader au-delà de 30 à 50 outils disponibles. Cinq serveurs courants peuvent ajouter environ 55 000 tokens de définitions si tout charge d'emblée. La recherche d'outils activée par défaut ne charge que ceux nécessaires. Le réflexe le plus simple est de ne connecter que les serveurs utiles à chaque projet.
Ajouter un serveur MCP pendant la session casse-t-il le cache ?
Oui si ses définitions sont chargées d'emblée : les outils occupent le début du préfixe en cache, donc tout changement invalide la suite. Avec le chargement différé, la connexion ou déconnexion ajoute du contenu et le préfixe tient. Les modifications de configuration prennent effet au prochain démarrage ; les faire entre deux sessions n'ajoute pas de coût.
Où Codex CLI configure-t-il ses serveurs MCP ?
Dans ~/.codex/config.toml, une table [mcp_servers.<name>] par serveur, ou dans .codex/config.toml d'un projet de confiance. enabled = false désactive le serveur sans le supprimer ; enabled_tools et disabled_tools filtrent ses outils. Le CLI, l'extension IDE et l'application ChatGPT partagent cette configuration.
$ npm i -g @penra/capsul