MCP ou CLI pour les agents IA : consommation de tokens et lequel choisir

Des chiffres de benchmark réels pour MCP ou CLI dans les agents IA : 1 365 tokens contre 44 026 pour la même tâche GitHub, et un test Playwright où l’écart a presque disparu. Découvrez où partent les tokens, quand MCP vaut son surcoût et comment réduire la facture sans abandonner les outils dont vous avez besoin.

MCP ou CLI pour les agents IA : consommation de tokens et lequel choisir
Cristian Da Conceicao
Fondateur de Picasso IA

Votre agent n’a pas encore écrit le moindre mot de sa réponse, et il a déjà consommé des milliers de tokens. C’est le véritable enjeu derrière MCP ou CLI pour les agents IA : il ne s’agit pas de savoir quel protocole est le plus propre, mais lequel laisse le plus de place dans la fenêtre de contexte pour le travail réel. Un benchmark a mesuré 1 365 tokens pour une recherche GitHub passée par la ligne de commande, et 44 026 pour la même recherche passée par MCP. Un autre, construit autour de Playwright, n’a relevé presque aucun écart. Les deux résultats sont réels, et la différence entre eux en dit plus que chacun des chiffres pris isolément. Vous verrez ci-dessous où partent les tokens, ce que montrent les mesures, quand MCP reste justifié et comment choisir sans deviner.

Ce que signifient MCP et CLI pour les agents

Les deux approches donnent des mains au modèle. Elles diffèrent par la manière dont le modèle découvre ce que ces mains savent faire, et par le moment où il paie pour cette connaissance.

Comment MCP fournit les outils

Le Model Context Protocol est un standard JSON-RPC. Au démarrage d’une session, le client demande à chaque serveur connecté quels outils il propose. Chaque outil arrive sous la forme d’un nom, d’une description et d’un schéma d’entrée, et l’ensemble reste dans le contexte du modèle pour qu’il puisse décider quoi appeler. Chaque appel et chaque résultat circulent ensuite au format JSON structuré.

L’avantage est réel : entrées typées, authentification gérée côté serveur, et outils qu’un client compatible peut découvrir seul. L’inconvénient est que le catalogue entier est payé d’avance, que la tâche en nécessite un seul ou aucun.

Comment CLI fournit les outils

Avec l’approche CLI, l’agent écrit une commande shell, l’environnement d’exécution la lance, et la sortie standard revient sous forme de texte brut. Il n’y a ni catalogue ni poignée de main. Le modèle connaît déjà git, grep, curl et jq grâce à ses données d’entraînement, et s’il oublie une option, il exécute --help et lit une page courte.

Le coût n’apparaît que pour les commandes effectivement utilisées. Cette seule différence de conception explique l’essentiel de ce qui suit.

Ingénieur logiciel tapant des commandes dans un terminal sur un double écran dans un bureau lumineux

💡 Définition rapide : un token est un morceau de texte que le modèle lit ou écrit. Les définitions d’outils, les commandes et les résultats occupent tous la fenêtre de contexte, et tous comptent comme entrée au tour suivant.

Où partent réellement les tokens

Le coût en tokens d’une boucle d’agent provient de trois sources : ce qu’on indique au modèle sur ses outils, ce qu’il envoie, et ce qui revient. MCP et CLI diffèrent surtout sur la première et la troisième.

Le surcoût des schémas avant tout travail

Un serveur MCP typique injecte la définition de chaque outil dans la conversation avant même que la première question ne soit posée. Le serveur officiel de GitHub expose 43 outils, selon le benchmark de Scalekit, si bien qu’une requête anodine transporte 43 schémas. Checkly a mesuré à lui seul les définitions du serveur Playwright à 5,9k tokens. Anthropic formule le problème sans détour dans son article technique sur l’exécution de code avec MCP : les définitions d’outils saturent la fenêtre de contexte.

Des résultats qui repassent par le contexte

Le deuxième coût est plus facile à manquer. Avec les appels MCP par défaut, chaque résultat intermédiaire passe par le modèle. L’exemple d’Anthropic est une transcription de réunion récupérée depuis un service puis écrite dans un autre : le texte traverse le contexte deux fois, ce qui peut ajouter plus de 50 000 tokens pour un long enregistrement. Un pipeline shell peut filtrer, compter ou tronquer ces données avant que le modèle ne les voie.

Source de coûtMCP, configuration par défautCLI
Catalogue d’outilsToutes les définitions chargées au démarrage de la sessionAucun, --help à la demande
Format d’appelEnveloppe JSON avec nom et argumentsUne seule chaîne shell
RésultatsRéponse complète renvoyée au modèleRedirigés, filtrés ou écrits dans un fichier
Recherche d’outilLe serveur déclare ses outilsLe modèle se souvient des commandes ou lit l’aide

Vue de dessus d’un épais classeur imprimé à côté d’une seule fiche cartonnée sur un bureau en chêne

Ce que montrent les benchmarks

Deux tests publics donnent l’image la plus claire, et ils ne vont pas dans le même sens.

Le test GitHub de Scalekit

Scalekit a lancé cinq tâches GitHub en lecture seule avec Claude Sonnet 4, 25 exécutions par approche, contre le serveur MCP officiel de GitHub. Ils ont comparé le CLI simple, le CLI avec de courts fichiers d’instructions appelés skills, et MCP, soit 75 exécutions au total. Tokens par tâche :

TâcheCLICLI + skillsMCPMCP par rapport au CLI
Langage et licence du dépôt1 3654 72444 02632x
Détails et statut de revue d’une PR1 6482 81632 27920x
Métadonnées du dépôt et installation9 38612 21082 8359x
PR fusionnées par contributeur5 0106 10733 7127x
Dernière version et dépendances8 7506 86037 4024x

En moyenne sur les cinq tâches, cela représente environ 5 200 tokens pour le CLI contre environ 46 000 pour MCP, soit à peu près 9x. L’estimation de Scalekit pour 10 000 opérations par mois donne environ 3,20 $ pour le CLI contre 55,20 $ pour MCP en direct, un écart de 17x. La fiabilité suit la même tendance : le CLI a terminé 25 exécutions sur 25, MCP 18 sur 25 (72 %), et les sept échecs étaient tous des délais d’expiration au niveau TCP.

Regardez aussi la colonne des skills. Sur la dernière tâche, la version avec skills a utilisé moins de tokens que le CLI simple (6 860 contre 8 750), probablement parce qu’un court fichier d’instructions a évité à l’agent quelques essais et erreurs. Sur les recherches simples, elle a coûté davantage, car les instructions se chargent à chaque fois.

⚠️ Les limites à connaître : un seul modèle, un seul service, des tâches en lecture seule. Les délais d’expiration sont des problèmes de connexion, pas des erreurs de raisonnement, donc l’écart de fiabilité en dit plus sur la configuration de ce serveur que sur le protocole lui-même.

Playwright : l’écart qui s’est refermé

Checkly a mené un test différent : ouvrir une boutique de démonstration, rechercher un produit, cliquer, ajouter des articles au panier et valider le contenu. La session MCP a utilisé de 48k à 50k tokens de contexte. La session CLI, avec les skills installés, en a utilisé de 45k à 48k. Après trois exécutions, la différence était négligeable, et l’explication est simple : le CLI Playwright et le serveur MCP partagent un même backend et écrivent les mêmes fichiers d’instantané sur le disque.

Checkly reconnaît aussi que les critiques envers MCP étaient justifiées en 2025. Deux facteurs en étaient la cause : les serveurs chargeaient toutes les définitions dès le départ, et chaque action renvoyait un instantané complet de la page directement dans la réponse. Les deux points ont depuis été atténués, car les environnements d’agents modernes reportent le chargement des outils MCP jusqu’à ce qu’ils soient nécessaires, et les serveurs peuvent enregistrer les instantanés sur le disque. L’avertissement de Checkly mérite d’être répété : les conseils sur l’IA ont une date de péremption mesurée en mois.

Deux collègues examinant des graphiques à barres imprimés sur une table en noyer dans une salle de réunion vitrée

La leçon n’est pas que l’un des camps a eu tort. Le chiffre de 32x décrit une implémentation où chaque schéma est chargé. L’égalité presque parfaite décrit une autre implémentation qui évite ce surcoût. Le coût en tokens dépend de la manière dont un serveur est conçu, et non de l’étiquette du protocole.

Pourquoi le CLI l’emporte souvent sur le coût

Quand les deux options fonctionnent telles quelles, le CLI l’emporte le plus souvent. Deux raisons portent l’essentiel du poids.

Les modèles parlent déjà le shell

Des décennies de scripts shell, de fichiers README et de réponses sur les forums figurent dans les données d’entraînement de chaque grand modèle. L’agent n’a pas besoin d’un schéma pour utiliser git log ou grep -r, et une commande d’une ligne remplace un appel JSON avec un nom, un objet d’arguments et une enveloppe autour. Quand il hésite, --help coûte une page courte, et non un catalogue complet au début de chaque session.

Les tubes réduisent d’abord la sortie

L’avantage le plus sous-estimé du CLI est la composition. Voici une façon de lister les titres des pull requests récemment fusionnées :

gh pr list --state merged --limit 10 --json title --jq '.[].title'

Le modèle ne voit que dix lignes de titres. Un appel MCP par défaut à un outil de pull request renvoie souvent la charge utile complète pour chaque élément : auteurs, étiquettes, URL, horodatages, état de revue. La plus grande partie est ignorée, mais tout est lu, et tout est facturé.

Une session CLI est aussi plus facile à déboguer. Vous pouvez coller la même commande dans votre propre terminal et voir exactement ce que l’agent a vu.

Gros plan en contre-plongée des mains d’un développeur tapant sur un ordinateur portable dans un espace de travail éclairé de manière chaleureuse

Quand MCP vaut son surcoût

Le nombre brut de tokens n’est qu’un axe. Certaines tâches exigent ce que seul un protocole peut offrir.

Authentification et permissions

Une commande shell s’exécute avec les droits de celui qui l’a lancée. C’est acceptable sur votre propre ordinateur portable, et problématique dans un produit où de nombreux utilisateurs connectent chacun leur compte. Un serveur MCP peut détenir des identifiants limités par utilisateur et n’exposer que les actions prévues, comme « lire les tickets » sans « supprimer le dépôt ». Il permet aussi aux clients qui ne sont pas des terminaux, des assistants de bureau aux panneaux d’IDE, de trouver des outils sans qu’il faille installer de binaire.

Gros plan d’une main présentant une carte d’accès à un lecteur de badge sur une porte de bureau en verre

Sessions longues et travaux multimédias

Les outils avec état favorisent MCP. Une session de navigateur qui doit tenir sur des dizaines de tours, ou une connexion à une base de données avec une transaction ouverte, est difficile à reconstruire à partir de commandes shell ponctuelles.

La génération de médias en est un bon exemple. Les modèles d’images et de vidéos fonctionnent comme des tâches asynchrones : vous soumettez une requête, obtenez un identifiant de tâche, puis interrogez jusqu’à ce que le résultat soit prêt. Le connecteur de PicassoIA enveloppe ce flux dans neuf outils au moment de la rédaction : génération d’images, édition d’images, deux générateurs de vidéos, consultation de statut, annulation, liste des tâches passées, liste des modèles et vérification du compte. Les outils de génération renvoient un identifiant de tâche accompagné d’un délai d’attente suggéré avant la prochaine interrogation, si bien que l’agent sait quand revenir vérifier au lieu de boucler à l’aveugle. Les modèles derrière ce connecteur incluent PicassoIA Image, PicassoIA Image Editor Pro, PicassoIA Video et Seedance 2.5 Lite, avec jusqu’à cinq prédictions simultanées par compte.

Vous pouvez accéder aux mêmes modèles via l’API REST à https://api.picassoia.com/v1 avec un simple curl. Cela fonctionne bien, mais l’agent doit retenir le point de terminaison, joindre les identifiants et écrire sa propre boucle d’interrogation. Les outils MCP regroupent ces étapes. Remarquez aussi que la taille du catalogue compte : neuf petits outils pèsent bien moins que les 43 de GitHub, ce qui explique pourquoi un serveur léger pénalise moins qu’un serveur tentaculaire.

Vaste studio de photographe avec un appareil photo relié sur trépied et un écran affichant une photo de paysage

Comment réduire le coût en tokens de MCP

Si MCP est le bon choix, vous n’êtes pas obligé d’accepter la facture par défaut.

Charger les outils à la demande

Anthropic appelle cela la divulgation progressive : laisser le modèle lire les définitions d’outils quand il en a besoin, au lieu de tout charger d’un coup. Deux formes fonctionnent. L’une est une organisation en fichiers où chaque outil est un petit fichier que l’agent ouvre à la demande. L’autre est une fonction de recherche qui trouve et charge uniquement les définitions pertinentes. Quel que soit le nom que donne votre environnement, vérifiez si le chargement différé est activé, et ne connectez que les serveurs dont le projet en cours a besoin.

Main d’un menuisier soulevant un seul ciseau d’un râtelier mural d’outils à main

Écrire du code qui appelle les outils

Le mouvement le plus ambitieux d’Anthropic consiste à présenter les outils MCP comme du code que l’agent peut appeler depuis un bac à sable. L’agent écrit un court script, le script communique avec les serveurs, et seul un résumé revient au modèle. Dans leur exemple de Google Drive vers Salesforce, la consommation de tokens est passée de 150 000 à 2 000, soit une économie de 98,7 %.

Regardez ce que cela représente vraiment : un comportement de type CLI, où les données sont filtrées avant que le modèle ne les voie, superposé à l’authentification et aux interfaces typées de MCP. Les deux camps finissent par s’emprunter mutuellement leurs idées.

Gains rapides à appliquer dès aujourd’hui :

  • Déconnectez les serveurs inactifs. Chaque outil connecté coûte des tokens, qu’il soit utilisé ou non.
  • Privilégiez les petits serveurs ciblés plutôt qu’un seul serveur avec des dizaines d’outils.
  • Limitez les résultats. Utilisez les paramètres de limite et de sélection des champs chaque fois que l’outil les propose.
  • Écrivez les sorties volumineuses sur le disque et renvoyez un chemin, comme le fait désormais Playwright avec ses instantanés.
  • Mesurez. Consultez les chiffres d’utilisation de votre fournisseur avant et après chaque modification.

Lequel choisir selon votre cas

Sur le coût brut en tokens avec les réglages par défaut, le CLI l’emporte la plupart du temps, de 4x à 32x dans le benchmark le mieux documenté. Pour le contrôle d’accès, l’état à long terme et les services hébergés, MCP l’emporte. Et quand les outils MCP se chargent à la demande et que les gros résultats restent hors du contexte, l’écart peut se réduire à presque rien, comme l’a montré le test Playwright.

SituationMeilleur choixPourquoi
Travail local avec git, fichiers et buildsCLICommandes familières, sortie filtrée
Tâches courtes scriptées ou CICLIPas de poignée de main, empreinte réduite
Serveur avec plus de 40 outils en réglages par défautCLI ou exécution de codeLe surcoût des schémas domine
Nombreux utilisateurs, chacun avec ses comptesMCPIdentifiants limités par utilisateur
Longues sessions de navigateurMCPL’état persiste entre les tours
Génération de médias asynchroneMCPIdentifiants de tâche et indications d’interrogation

Choisissez le CLI lorsque l’outil existe déjà sous forme de commande, que l’agent tourne sur une machine que vous contrôlez et que chaque token compte.

Choisissez MCP lorsque vous avez besoin de permissions par utilisateur, d’un état persistant ou d’un service hébergé sans bon outil en ligne de commande.

Combinez les deux en cas de doute. La plupart des configurations réelles le font : le shell pour le travail local, MCP pour quelques services hébergés, chacun réduit à ce que la tâche exige.

Randonneur à une bifurcation de sentier forestier avec deux poteaux en bois dans la brume du matin

Essayer sur PicassoIA

Utiliser Claude Sonnet 5 sur PicassoIA

Vous pouvez tester ces compromis sur votre propre configuration avec Claude Sonnet 5, un modèle conçu pour le codage en plusieurs étapes et l’utilisation d’outils. Voici un flux d’audit rapide :

  1. Ouvrez la page du modèle et repérez le champ Prompt.
  2. Collez les noms et descriptions des outils exposés par vos serveurs MCP, puis demandez lesquels une tâche de codage typique n’appellerait jamais.
  3. Réglez Effort. low désactive la réflexion et répond le plus vite, ce qui suffit pour un tri. Passez à high lorsque vous voulez des compromis raisonnés sur plusieurs serveurs.
  4. Laissez Max Tokens à 8192 pour les longues comparaisons, ou baissez-le si vous voulez un verdict concis.
  5. Ajoutez un System Prompt comme « Vous êtes un relecteur des coûts. Répondez avec un tableau et une seule ligne de conseil » pour garder des réponses courtes.
  6. Demandez l’équivalent shell de votre outil le plus appelé. Comparez les deux avec wc -c pour une estimation rapide de la taille, et utilisez les chiffres d’utilisation de votre fournisseur pour les comptes exacts de tokens.

💡 Astuce : lancez le même audit avec Kimi K2.6 ou GPT 5.6 Sol et comparez les outils que chaque modèle supprimerait.

Créez ensuite vos propres images

Chaque photo de cet article suit un schéma simple : un sujet clair, une source de lumière, un choix d’appareil et d’objectif. Essayez la même recette vous-même. Décrivez un établi à neuf heures du matin, un randonneur à une bifurcation ou votre propre version d’un bureau chargé d’outils, puis lancez-la avec PicassoIA Image. Affinez le résultat avec PicassoIA Image Editor Pro, et lorsqu’une image fixe mérite du mouvement, envoyez-la vers PicassoIA Video. Choisissez un prompt pour votre prochain projet et voyez ce qui en ressort.

Professionnel créatif dans un studio lumineux devant un panneau de liège couvert de photos imprimées

Partager cet article

Choisissez votre langue