MCPIAAgents IAArchitectureTypeScriptOpen Source

MCP : Le Guide Complet du Model Context Protocol en 2026

Architecture, primitives, adoption industrielle et vraie controverse : tout ce que les développeurs doivent savoir sur le MCP avant de l'intégrer en production.

16 mars 2026
KyllianKyllian
MCP : Le Guide Complet du Model Context Protocol en 2026

En bref

  • 1MCP dépasse les 97 millions de téléchargements mensuels et 13 000 serveurs publiés sur GitHub — il est devenu en un an le standard de facto pour connecter les LLM aux outils externes.
  • 2En décembre 2025, Anthropic a cédé la gouvernance du protocole à la Linux Foundation (Agentic AI Foundation), aux côtés d'OpenAI, Block, Google, Microsoft, AWS et Cloudflare.
  • 3Perplexity a publiquement abandonné MCP en interne au profit des API REST, et Cloudflare a démontré que l'appel d'outils MCP classique gaspille jusqu'à 81 % de la fenêtre de contexte — des signaux à prendre au sérieux avant tout déploiement en production.

MCP : Le Guide Complet du Model Context Protocol en 2026

En novembre 2024, Anthropic publiait discrètement un protocole open source baptisé MCP — Model Context Protocol. Douze mois plus tard, il totalisait 97 millions de téléchargements mensuels, 13 000 serveurs publiés sur GitHub, et une gouvernance transférée à la Linux Foundation avec OpenAI, Google, Microsoft et AWS autour de la table. Rarement un standard technique aura connu une adoption aussi rapide dans l'écosystème IA.

Mais en mars 2026, deux événements ont fracturé la narrative : Perplexity a annoncé abandonner MCP en interne au profit des API REST classiques, et Cloudflare a publié une analyse démontrant que l'implémentation standard du protocole peut gaspiller jusqu'à 81 % de la fenêtre de contexte des agents. Des signaux que tout développeur doit connaître avant de construire dessus.

Ce guide couvre l'essentiel : ce qu'est réellement MCP, comment il fonctionne, pourquoi il a été adopté si vite, et où il montre ses limites.


Le problème que MCP résout

Avant MCP, chaque intégration entre un modèle d'IA et un système externe exigeait un connecteur sur mesure. Connecter Claude à GitHub demandait du code spécifique. Connecter GPT-4 à ce même GitHub demandait un autre code, différent. Multiplié par le nombre de modèles (N) et d'outils (M), le résultat était un enfer de maintenance que les développeurs ont baptisé le problème N×M.

MCP collapse ce problème en N+M implémentations. Construisez un serveur MCP pour votre CRM — n'importe quel client MCP compatible peut l'utiliser immédiatement, qu'il tourne sous Claude, ChatGPT ou un agent custom. Construisez un client MCP — il accède instantanément à des milliers de serveurs existants.

L'analogie qui circule dans la communauté est celle du port USB-C : un standard universel qui abstrait la complexité des connexions. La comparaison est juste. Elle est aussi incomplète — on y reviendra.


Architecture : les trois couches de MCP

Hosts, Clients, Serveurs

MCP repose sur une architecture à trois niveaux :

L'Host est l'application qui orchestre tout. C'est l'interface utilisateur : Claude Desktop, un IDE comme Cursor ou Zed, ou votre application métier intégrant un LLM. L'Host gère la session, la mémoire, et la coordination.

Le Client est le composant protocolaire. Il vit à l'intérieur de l'Host et maintient une connexion avec un seul serveur MCP — relation strictement 1:1. Ses responsabilités : découvrir les capacités du serveur, invoquer les outils disponibles, gérer l'authentification.

Le Serveur encapsule un système externe. Un serveur expose l'API GitHub, un autre donne accès à une base PostgreSQL, un autre encore enveloppe votre CRM maison. Chaque serveur répond aux requêtes du client selon le protocole standardisé.

Le cycle de vie d'une interaction

1. Initialisation
   Host démarre → crée N Clients → chaque Client fait un handshake
   avec son Serveur (échange de versions et de capacités)

2. Découverte
   Client → tools/list, resources/list, prompts/list → Serveur
   Serveur → retourne la liste des capacités disponibles

3. Invocation (déclenchée par le LLM)
   Utilisateur : "Quels sont les tickets Jira ouverts sur ce sprint ?"
   LLM → sélectionne l'outil → Host ordonne au Client d'envoyer la requête

4. Exécution
   Serveur exécute l'action (appel API Jira) → retourne les données
   Client transmet au LLM → formulation de la réponse finale

Les deux transports

MCP supporte deux mécanismes de transport, tous deux basés sur JSON-RPC 2.0 :

TransportCas d'usageCaractéristiques
stdioServeurs locauxCommunication via stdin/stdout. Zéro overhead réseau. Idéal pour les extensions IDE et les outils de développement.
Streamable HTTPServeurs distantsRequêtes HTTP POST (client → serveur) + SSE pour les réponses asynchrones. Adapté aux déploiements cloud et enterprise.

Les trois primitives : Tools, Resources, Prompts

C'est le cœur du protocole. Tout ce qu'un serveur peut exposer se résume à trois types de capacités.

Tools — ce que le modèle peut faire

Les Tools sont des fonctions exécutables que le LLM peut invoquer. Ils correspondent au function calling que vous connaissez déjà, mais standardisé au niveau protocole. Chaque Tool vient avec un schéma d'entrée et de sortie strict, ce qui garantit que l'agent sait exactement quels paramètres envoyer et quel format attendre en retour.

Exemples : appel d'une API REST, lecture/écriture de fichier, requête SQL, déclenchement d'un webhook.

// Définition d'un Tool côté serveur (SDK TypeScript)
server.tool(
  "get_jira_issues",
  "Récupère les tickets Jira d'un sprint donné",
  {
    sprint_id: z.string().describe("Identifiant du sprint Jira"),
    status: z.enum(["open", "in_progress", "done"]).optional(),
  },
  async ({ sprint_id, status }) => {
    const issues = await jiraClient.getSprintIssues(sprint_id, status);
    return { content: [{ type: "text", text: JSON.stringify(issues) }] };
  }
);

Resources — ce que le modèle peut lire

Les Resources sont des sources de données que le serveur expose au modèle. Contrairement aux Tools qui exécutent des actions, les Resources fournissent du contexte statique ou semi-statique : documents, fichiers de configuration, logs, schémas de base de données.

Chaque Resource est identifiée par une URI unique (par exemple file:///docs/readme.md ou db://schema/users). Elles sont particulièrement utiles pour le RAG : elles permettent d'injecter du contexte dans une conversation sans que le modèle ait à effectuer une recherche active.

Prompts — templates réutilisables

Les Prompts sont des templates de messages prédéfinis que le serveur expose pour standardiser certaines interactions. Contrairement aux Tools (déclenchés par le modèle) ou aux Resources (fournies par l'application), les Prompts sont contrôlés par l'utilisateur — c'est lui qui choisit explicitement d'activer un Prompt, souvent via une commande slash (/review, /debug, /summarize).

L'intérêt pour les équipes : centraliser les prompts critiques en un seul endroit, versionné, réutilisable par n'importe quel agent compatible MCP — au lieu de les disperser dans des fichiers ou de les réinjecter à la main dans chaque conversation.


Chronologie : d'un outil interne à un standard industriel

La montée en puissance du MCP est documentée et vérifiable. Voici les jalons clés :

DateÉvénement
Novembre 2024Anthropic publie MCP en open source avec des SDK Python et TypeScript. Serveurs de référence : GitHub, Slack, Google Drive, PostgreSQL, Puppeteer.
Début 2025Zed, Replit, Codeium et Sourcegraph annoncent leur compatibilité. Block et Apollo intègrent MCP en interne.
Mars 2025OpenAI adopte MCP dans son Agents SDK, son API Responses et ChatGPT Desktop. Sam Altman valide publiquement le protocole.
Avril 2025Google DeepMind annonce l'intégration dans Gemini et son SDK. Microsoft l'intègre dans Copilot Studio.
Décembre 2025Anthropic cède la gouvernance du protocole à l'Agentic AI Foundation (AAIF) sous la Linux Foundation. OpenAI, Block, AWS, Google, Microsoft, Cloudflare et Bloomberg rejoignent la fondation.
Février 202613 000+ serveurs sur GitHub. 97 millions de téléchargements mensuels SDK (Python + TypeScript).
Mars 2026Perplexity abandonne MCP en interne. Cloudflare publie son analyse sur la surconsommation de tokens. La feuille de route 2026 est publiée par les mainteneurs.

L'inspiration initiale du protocole est également documentée : MCP s'est partiellement inspiré du Language Server Protocol (LSP), qui standardise la communication entre les éditeurs de code et les moteurs d'analyse de langage. La même logique — un protocole universel qui découple le client du serveur — appliquée à l'IA agentique.


La gouvernance Linux Foundation : ce que ça change vraiment

Le 9 décembre 2025, Anthropic a donné MCP à l'Agentic AI Foundation (AAIF), une structure sous l'égide de la Linux Foundation. Les membres fondateurs platinum : Anthropic, Block, OpenAI, Google, Microsoft, AWS, Cloudflare, Bloomberg.

Pourquoi c'est important pour vous en tant que développeur ou décideur technique :

Fin du risque vendor-lock-in. Tant que MCP était gouverné par Anthropic, chaque entreprise l'adoptant prenait un risque : la direction du protocole pouvait évoluer selon les priorités internes d'Anthropic. Sous la Linux Foundation — qui gère aussi Kubernetes, PyTorch et Node.js — les décisions techniques passent par des comités de pilotage ouverts et des processus communautaires formalisés (SEP — Specification Enhancement Proposals).

Signal de maturité infrastructure. Le modèle Linux Foundation implique des processus de contribution transparents, des cycles de release communautaires, et une stabilité à long terme. Pour des équipes qui envisagent de construire des agents en production sur MCP, c'est la différence entre s'appuyer sur une expérimentation et construire sur une fondation.

Convergence de l'écosystème. Avec Anthropic (MCP), OpenAI (AGENTS.md) et Block (goose) qui contribuent leurs projets à la même fondation, l'AAIF dessine ce que pourrait être la stack complète de l'agent era : un protocole de connexion (MCP), un standard d'instruction (AGENTS.md), et un framework d'exécution (goose).


La controverse : MCP est-il vraiment prêt pour la production ?

C'est ici que le sujet devient plus nuancé — et plus utile pour votre prise de décision.

Perplexity : "On est retournés aux API REST"

En mars 2026, Denis Yarats, directeur technique de Perplexity, a annoncé publiquement que son entreprise abandonnait MCP en interne au profit des API et CLI classiques. Ses objections sont pragmatiques, non idéologiques :

Surcharge de tokens. Chaque Tool exposé par un serveur MCP injecte sa définition — nom, description, schéma de paramètres — dans la fenêtre de contexte du modèle. Pour un agent qui orchestre de nombreux outils sur des conversations longues, cette surcharge s'accumule et réduit l'espace disponible pour les données réelles.

Complexité d'authentification. Chaque serveur MCP gère son propre flux d'authentification. Connecter plusieurs services crée des frictions qui n'existent pas avec une API REST bien conçue qui absorbe cette complexité côté serveur.

Modèle de sécurité immature. La spécification MCP n'a pas reçu de mise à jour majeure depuis novembre 2025. Les mécanismes d'authentification, les protocoles de gestion des sessions et les contrôles d'accès sont encore en cours de définition dans la feuille de route 2026.

Perplexity maintient son serveur MCP officiel pour les développeurs qui souhaitent l'utiliser. Mais son produit principal pour les développeurs d'agents est désormais une API traditionnelle.

Cloudflare : 81 % de tokens gaspillés

Quelques jours avant l'annonce de Perplexity, Cloudflare avait publié une analyse technique sur ses propres déploiements MCP. La conclusion est sévère : la spécification OpenAPI de Cloudflare représente 2 millions de tokens. Autrement dit, l'implémentation naïve du MCP à grande échelle peut allouer l'essentiel de la fenêtre de contexte à des métadonnées d'outils, laissant très peu de place aux données utiles.

La réponse de Cloudflare est technique : une approche qu'ils nomment "Code Mode", qui évite de charger toutes les définitions d'outils en amont.

Ce que disent les mainteneurs

La feuille de route 2026 publiée le 9 mars par les mainteneurs MCP reconnaît explicitement ces problèmes et les priorise :

  • Scalabilité du transport : évoluer Streamable HTTP pour fonctionner sans état (stateless) derrière des load balancers, avec un modèle de session clair.
  • MCP Server Cards : un standard pour exposer les métadonnées d'un serveur via une URL .well-known, permettant aux registres et aux agents de découvrir les capacités sans établir une connexion préalable.
  • Enterprise readiness : audit trails, SSO-intégré, gateway patterns, portabilité de configuration.

Les risques de sécurité à connaître

Plusieurs vulnérabilités ont été documentées par des chercheurs en sécurité. Ce ne sont pas des raisons d'éviter MCP, mais des contraintes à intégrer dès la conception.

Prompt injection via les descriptions d'outils. Les descriptions de Tools vont directement dans le contexte du modèle. Un serveur MCP malveillant peut y cacher des instructions que l'agent exécutera sans que l'utilisateur en soit conscient.

Absence d'authentification par défaut. Le protocole fournit un cadre, pas une implémentation de sécurité. De nombreux serveurs déployés en production fonctionnent sans authentification. Les sessions IDs dans les URLs violent des pratiques de sécurité fondamentales.

Risque de chaining toxique. La combinaison de plusieurs outils peut permettre l'exfiltration de données par des séquences d'actions que chaque outil individuel n'autoriserait pas.

Stockage de tokens OAuth. Les serveurs MCP stockent souvent des tokens d'accès pour plusieurs services. Une compromission d'un serveur donne accès à l'ensemble des services connectés.

Contre-mesures recommandées

# Auditer les serveurs MCP avant déploiement
# Vérifier les permissions exposées par chaque outil
# Utiliser une couche gateway pour l'authentification enterprise (ex: Agentgateway)
# Implémenter des politiques de moindre privilège par outil
# Logger toutes les invocations d'outils pour l'auditabilité

En enterprise, des outils comme Agentgateway (Linux Foundation) s'intercalent entre les clients et les serveurs MCP pour gérer l'authentification SSO, les guardrails, et l'observabilité — comblant les lacunes actuelles de la spécification de base.


Construire son premier serveur MCP : les bases

Installation

# TypeScript (recommandé pour les projets Node.js/Next.js)
npm install @modelcontextprotocol/sdk

# Python
pip install mcp

Serveur minimal en TypeScript

import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

const server = new McpServer({
  name: "kody-demo-server",
  version: "1.0.0",
});

// Définition d'un Tool
server.tool(
  "get_project_status",
  "Retourne le statut d'un projet KODY",
  {
    project_id: z.string().describe("Identifiant du projet"),
  },
  async ({ project_id }) => {
    // Votre logique métier ici
    const status = await fetchProjectStatus(project_id);
    return {
      content: [{ type: "text", text: JSON.stringify(status) }],
    };
  }
);

// Démarrage avec transport stdio (local)
const transport = new StdioServerTransport();
await server.connect(transport);

Tester votre serveur

MCP fournit un outil d'inspection officiel, MCP Inspector, accessible via navigateur, qui permet de découvrir les capacités exposées et de tester chaque outil interactivement sans avoir à configurer un client complet.

npx @modelcontextprotocol/inspector

Quand utiliser MCP — et quand ne pas l'utiliser

MCP n'est pas la bonne réponse à tous les problèmes d'intégration IA.

Cas où MCP apporte une vraie valeur

  • Projets multi-LLM : vous souhaitez que vos intégrations fonctionnent indépendamment du modèle (Claude, GPT-4, Gemini). Construire une fois, utiliser partout.
  • Écosystème d'agents : vous construisez plusieurs agents qui partagent des outils communs. La standardisation évite la duplication.
  • Intégrations IDE / tooling développeur : le transport stdio est particulièrement adapté aux extensions d'éditeurs de code.
  • Exposition d'outils internes à la communauté : publier un serveur MCP sur le registre permet à n'importe quel développeur de l'utiliser sans code d'intégration.

Cas où une API REST directe reste meilleure

  • Agent unique avec modèle fixe : si vous n'avez qu'un agent Claude et que vous ne prévoyez pas d'en changer, l'overhead MCP n'apporte rien.
  • Workloads à forte consommation de contexte : si votre agent orchestre 50+ outils sur des conversations longues, la surcharge des définitions impactera la performance. Évaluez l'approche "lazy loading" des outils.
  • Contraintes de sécurité enterprise strictes : sans couche gateway dédiée, le modèle de sécurité natif de MCP est insuffisant pour les environnements régulés (santé, finance, gouvernement).

Ce qu'il faut retenir

MCP a résolu un problème réel — la fragmentation des intégrations IA — avec une élégance technique qui explique son adoption fulgurante. En un an, il est passé d'un outil interne Anthropic à un standard industriel soutenu par la quasi-totalité des acteurs majeurs de l'IA.

La gouvernance Linux Foundation est une bonne nouvelle pour la stabilité à long terme du protocole. Les entreprises qui hésitaient à adopter MCP par crainte du vendor lock-in ont maintenant leur réponse.

Mais les critiques de Perplexity et Cloudflare sont légitimes et documentées. La spec actuelle présente des lacunes réelles en production : modèle de sécurité immature, surconsommation de contexte à grande échelle, gestion des sessions fragile derrière un load balancer. La feuille de route 2026 les adresse — mais ils n'ont pas encore été résolus.

La règle pratique : MCP est la bonne fondation pour construire des intégrations IA durables et portables. Mais déployez-le en connaissant ses contraintes actuelles, avec une couche de sécurité complémentaire en production, et en surveillant les mises à jour de la spec tout au long de 2026.


Ressources

Questions fréquentes

Le MCP est un protocole open source lancé par Anthropic en novembre 2024, basé sur JSON-RPC 2.0, qui standardise la communication entre les modèles d'IA et les systèmes externes (APIs, bases de données, fichiers, services cloud). Il élimine le besoin de connecteurs sur mesure pour chaque intégration.

Articles connexes

Vous avez aimé cet article ?