# Utilisation des outils MCP économe en tokens

> Les agents modernes diffèrent déjà les schémas d'outils MCP : un usage économe en tokens revient désormais à compacter ce que renvoient les outils avant le contexte.

Source: https://tokenade.net/fr/articles/token-efficient-mcp-tool-use · Updated: 2026-10-16

## Qu'est-ce qu'une utilisation des outils MCP économe en tokens ?

Une utilisation des outils MCP économe en tokens, cela signifie que vous compactez ce qu'un outil renvoie avant que cela n'atterrisse dans le contexte, et que vous ne payez les [tokens](https://tokenade.net/fr/glossary/token) du schéma d'un outil que lorsque l'agent en a réellement besoin. La seconde moitié est désormais largement prise en charge pour vous : Claude Code diffère par défaut les définitions d'outils [MCP](https://tokenade.net/fr/glossary/mcp) grâce au tool search, et les autres agents actuels diffèrent aussi le chargement des outils. La première moitié, non. Tout ce qu'un outil renvoie est encore déversé sans filtre dans la [context window](https://tokenade.net/fr/glossary/context-window), puis voyage dans l'historique à chaque tour suivant. C'est ce coût-là que vous pouvez pour l'essentiel cesser de payer.

Je construis du tooling sur les tokens pour gagner ma vie, et MCP est l'endroit où je vois le plus de gaspillage par unité d'effort de correction. Le protocole est excellent — c'est la manière la plus propre que j'aie trouvée de donner à un agent de véritables capacités. Mais par défaut, les résultats d'outils reviennent bruts, comme si les tokens étaient gratuits, et ils ne le sont catégoriquement pas. Cet article est la version praticienne de la correction : quoi faire au niveau de la sortie, ce qu'il reste à vérifier au niveau du schéma, et là où un outil peut simplement s'en charger pour que vous n'ayez plus à y penser.

C'est une ramification de la question plus large de [comment réduire l'utilisation de tokens d'un agent de codage IA](https://tokenade.net/fr/articles/reduce-ai-coding-agent-token-usage). Si vous voulez le menu complet des leviers, commencez par là. Ici, je reste centré sur MCP.

## Pourquoi les outils MCP coûtent-ils plus de tokens que vous ne le pensez ?

Les outils MCP coûtent plus que vous ne le pensez parce que ce qu'ils renvoient reste dans la transcription. Une session de codage n'est pas une seule requête ; ce sont des dizaines ou des centaines d'allers-retours, et chaque appel d'outil ajoute son résultat brut à l'historique que chaque tour suivant renvoie.

Le côté schéma était autrefois le problème principal. Les premiers agents envoyaient le manifeste d'outils complet de chaque serveur connecté à chaque tour, et deux ou trois serveurs lourds pouvaient manger une part non négligeable de la fenêtre. Ce n'est plus le comportement par défaut : le tool search de Claude Code ne garde que les noms d'outils dans le contexte et charge un schéma quand l'agent en a besoin, et les autres agents actuels diffèrent eux aussi le chargement des outils. Le problème subsiste dans quelques configurations, traitées plus bas.

C'est désormais côté sortie que part l'argent, et c'est plus sournois. Les outils adorent renvoyer du JSON — et le JSON est verbeux, répétitif et plein de champs que l'agent ne lira jamais. Un appel « lister les fichiers » peut renvoyer quelques milliers de tokens de métadonnées pour que le modèle puisse utiliser un seul chemin. Un web fetch renvoie tout le DOM alors que l'agent voulait un seul titre. Rien de tout cela n'est faux, à proprement parler ; c'est juste non filtré, et le non filtré coûte cher. Sur Sonnet 5 (2 $ / 10 $ par MTok) ou Haiku 4.5 (1 $ / 5 $), les chiffres absolus diminuent, et sur GPT-5.5 (5 $ / 30 $) le côté sortie mord plus fort parce que l'output est facturé au prix fort — mais le ratio tient pour tous : vous payez en continu des octets que le modèle n'utilise pas. Les chiffres derrière tout cela sont rassemblés dans notre décryptage des [coûts de tokens des agents de codage IA](https://tokenade.net/fr/stats/ai-coding-agent-token-costs), et les tarifs par modèle dans notre référence sur le [prix des tokens d'API LLM](https://tokenade.net/fr/stats/llm-api-token-pricing).

## Comment réduire le coût de la sortie ?

Vous réduisez le coût de la sortie avec l'[output filtering](https://tokenade.net/fr/glossary/output-filtering) — en compactant le résultat d'un outil aux octets que l'agent va réellement utiliser avant que ce résultat n'entre dans le contexte. La plus grande partie de ce qu'un outil émet est de la structure, de la répétition et des champs que personne ne lit, et vous pouvez replier tout cela sans perdre le signal.

En pratique, cela revient à empiler plusieurs choses :

- **Supprimez le boilerplate.** Les enveloppes de pagination, les timestamps, les ETags, les clés répétées sur les éléments d'un tableau — rien de tout cela n'aide le modèle à raisonner. La [compression de contexte](https://tokenade.net/fr/glossary/context-compression) l'élague.
- **Dédupliquez.** La sortie d'un outil est pleine de lignes quasi identiques. Les réduire à un représentant plus un décompte conserve le sens à une fraction des tokens.
- **Résumez la longue traîne.** Quand un fetch renvoie un document de 40 Ko et que l'agent voulait une seule section, renvoyer la section plus une carte d'une ligne du reste vaut mieux que renvoyer le tout.

Pour le travail sur une base de code spécifiquement, le plus gros gain en sortie est en amont de tout cela : ne déversez pas du tout des fichiers entiers. Utilisez la [semantic code search](https://tokenade.net/fr/glossary/semantic-code-search) pour récupérer les quelques fonctions qui correspondent à l'intention — appuyée sur des [embeddings](https://tokenade.net/fr/glossary/embeddings) du dépôt, la même idée de [RAG](https://tokenade.net/fr/glossary/rag) que tout le monde utilise pour la documentation — au lieu de lire des fichiers entiers dans le contexte pour que le modèle en ignore 90 %. Un outil « lire un fichier » est une lance à incendie de tokens ; un outil « trouve le code qui fait X » est une cuillère à café.

## Et le coût du schéma ?

Sur une configuration Claude Code récente, il reste peu à faire : le tool search diffère par défaut les définitions d'outils MCP pour les modèles Claude 4.5 et suivants, et la plupart des autres agents diffèrent désormais aussi le chargement des outils. Cela compte encore dans quelques cas, détaillés dans [chargement paresseux de MCP](https://tokenade.net/fr/articles/lazy-mcp-loading) : derrière un proxy d'API tiers (Claude Code y coupe le tool search sauf si vous définissez `ENABLE_TOOL_SEARCH`), pour les serveurs marqués `alwaysLoad`, sur des modèles plus anciens et dans les agents sans tool search. Lancez `/context` une fois pour savoir dans quel cas vous êtes. Si vos manifestes se chargent d'emblée, élaguez les serveurs que vous utilisez rarement et préférez des CLI comme `gh` quand elles existent. Notre classement des [meilleurs serveurs MCP pour Claude Code](https://tokenade.net/fr/articles/best-mcp-servers-for-claude-code) aide à décider quels serveurs méritent leur place.

## Comment appliquer un MCP économe en tokens dès aujourd'hui

Vous pouvez passer de « je fuis des tokens » à « je paie ce que j'utilise » en un après-midi, grosso modo par ordre d'effort :

1. **Mesurez d'abord.** Lancez une session normale et regardez quelle est la taille de votre résultat d'outil moyen, et combien de tokens d'entrée atterrissent *avant* votre première vraie instruction. Estimer à l'œil n'est pas mesurer. Notre guide [mesurer l'utilisation de tokens d'un agent](https://tokenade.net/fr/articles/measure-agent-token-usage) couvre cela, et vous pouvez vérifier des chiffres approximatifs avec le [compteur de tokens](https://tokenade.net/fr/micro-tools/token-counter) et le [calculateur de coût de tokens LLM](https://tokenade.net/fr/micro-tools/llm-token-cost-calculator).
2. **Filtrez le côté sortie.** Là où vous contrôlez un outil, renvoyez la forme minimale utile. Là où vous ne le contrôlez pas, placez une couche de compaction devant lui.
3. **Vérifiez que votre agent diffère les schémas.** Si `/context` montre des manifestes chargés d'emblée, reportez-vous aux exceptions ci-dessus et déconnectez les serveurs que vous utilisez occasionnellement.
4. **Laissez une couche le faire automatiquement.** La discipline manuelle est un vrai travail et vous vous tromperez un jour chargé. C'est là qu'intervient [Tokenade](https://tokenade.net/fr) : son proxy MCP se place entre votre agent et ses serveurs MCP (`tokenade mcp-wrap install` les enveloppe en une commande) et compacte ce que renvoient les outils avant que cela n'atteigne le contexte, avec des compacteurs dédiés pour GitHub et GitLab, l'automatisation de navigateur (Playwright, Puppeteer, Chrome), le système de fichiers, Git, la mémoire et les bases de données (Postgres, SQLite, MySQL, Supabase, DuckDB), et un compacteur générique attentif à la forme des données pour tous les autres serveurs. Les captures d'écran et images passent intactes, et le résultat complet reste récupérable si l'agent a besoin d'un détail. Il replie de la même façon la sortie bruyante des commandes, remplace les lectures de fichiers entiers par de la semantic search, et ouvre un rapport local des économies (`tokenade dashboard`) pour que vous voyiez ce que chaque outil a économisé. Il fonctionne de la même manière sur Claude Code, Cursor, Codex, Copilot et Windsurf, et il est gratuit et open source (MIT/Apache-2.0). La compaction s'exécute entièrement sur votre machine : rien de ce trafic n'en sort.

Si vous ne faites qu'une seule chose de cette liste, mesurez, car la taille de la sortie brute des outils est généralement assez importante pour que vous soyez légèrement agacé de ne pas l'avoir suivie plus tôt.

## Ce qui tourne mal (anti-patterns)

Les modes d'échec ici viennent surtout de la confusion entre « connecté » et « gratuit », et entre « renvoyé » et « nécessaire ». Quelques-uns à surveiller :

- **Faire confiance à la sortie brute.** Laisser les outils déverser du JSON non filtré dans le contexte est aujourd'hui l'habitude MCP la plus coûteuse. Le modèle en lit une fraction et vous payez pour le tout, à chaque tour où cela reste dans l'historique. Compactez avant le contexte, pas après.
- **Filtrer trop fort.** Un élagage de sortie trop agressif peut supprimer le seul champ dont l'agent avait réellement besoin et provoquer un nouvel appel — ce qui coûte plus que les octets que vous avez économisés. Filtrez le boilerplate et la longue traîne ; conservez le signal, et gardez le résultat complet récupérable.
- **Supposer que toute configuration diffère les schémas.** Un proxy tiers, un drapeau `alwaysLoad` ou un modèle plus ancien ramène le chargement d'emblée sans prévenir. Vérifiez `/context` une fois.
- **Supposer que le caching le rend gratuit.** Le [prompt caching](https://tokenade.net/fr/glossary/prompt-caching) réduit le coût de renvoi à environ 10 % de l'entrée, ce qui est excellent — mais il est froid au premier tour, casse quand le préfixe change, et ne bat jamais le fait de ne pas envoyer les octets du tout. C'est une remise, pas une exonération. (Si vous continuez quand même à atteindre des limites, c'est généralement un problème de [rate-limit](https://tokenade.net/fr/glossary/rate-limit), et moins de tokens aide là aussi.)

Le résumé honnête : le problème du manifeste a été réglé là où il devait l'être, dans les agents. Ce qui reste, ce sont les outils qui arrosent le contexte de sortie brute parce que c'était la voie de moindre résistance. Le MCP économe en tokens, c'est aujourd'hui surtout une correction structurelle, compacter la sortie avant qu'elle n'atterrisse, et, contrairement à une bonne partie du [context engineering](https://tokenade.net/fr/articles/context-engineering), c'est quelque chose qu'un outil peut simplement faire à votre place pendant que vous continuez à livrer.

---

**À voir aussi :**
- [Comment réduire l'utilisation de tokens d'un agent de codage IA](https://tokenade.net/fr/articles/reduce-ai-coding-agent-token-usage)
- [Chargement paresseux de MCP](https://tokenade.net/fr/articles/lazy-mcp-loading)
- [Meilleurs serveurs MCP pour Claude Code](https://tokenade.net/fr/articles/best-mcp-servers-for-claude-code)
- [Claude Code MCP : comment le configurer](https://tokenade.net/fr/articles/claude-code-mcp-setup)
- [Tool calling (function calling)](https://tokenade.net/fr/glossary/tool-calling) — la primitive sur laquelle repose tout serveur MCP
- [MCP — glossaire](https://tokenade.net/fr/glossary/mcp)
- [Output filtering — glossaire](https://tokenade.net/fr/glossary/output-filtering)
