MCP fonctionne sur une architecture client-serveur via JSON-RPC. Un serveur MCP est un petit programme qui expose un ensemble d'outils, de ressources et de prompts à travers une interface standardisée. Un client MCP — typiquement une application d'IA comme Claude Desktop, Cursor ou Windsurf — découvre ce que le serveur offre et rend ces capacités disponibles au modèle. Quand le modèle décide d'utiliser un outil, le client envoie une requête JSON-RPC au serveur, reçoit le résultat et le réinjecte dans la conversation. La couche de transport est flexible : les serveurs peuvent communiquer via stdio (pour les processus locaux), HTTP avec server-sent events (pour les services distants), ou HTTP streamable (le transport le plus récent, combinant requête-réponse et streaming dans une seule connexion).
Construire un serveur MCP est délibérément simple. En Python, vous pouvez utiliser le SDK officiel mcp et avoir un serveur fonctionnel en une vingtaine de lignes de code — vous décorez une fonction avec @server.tool(), lui donnez une description et des paramètres typés, et le SDK gère le JSON-RPC, la génération de schéma et le transport. En TypeScript, le package @modelcontextprotocol/sdk fonctionne de la même manière. Le serveur déclare ses capacités à l'initialisation (quels outils il a, s'il prend en charge les ressources ou les prompts), et le client négocie ce qu'il veut utiliser. Cela signifie que vous pouvez commencer petit — un serveur qui enveloppe simplement l'API interne de votre entreprise — et ajouter des capacités progressivement.
La vraie puissance de MCP par rapport aux intégrations d'outils sur mesure devient évidente quand on considère le problème combinatoire qu'il résout. Avant MCP, si vous aviez 10 applications d'IA et 10 outils, il fallait 100 intégrations personnalisées. Avec MCP, il faut 10 serveurs et 10 clients — chacun construit une seule fois. C'est exactement le même patron qui a rendu l'USB un succès : standardisez l'interface, et l'écosystème passe à l'échelle. En pratique, cela signifie qu'un serveur MCP pour Postgres construit par un développeur fonctionne avec Claude, Cursor, Zed et tout autre client compatible MCP sans modification. L'écosystème de serveurs MCP comprend déjà des centaines de serveurs construits par la communauté pour des bases de données, des API, des outils de développement et des services dans le nuage.
Il y a quelques nuances importantes que les praticiens devraient connaître. Premièrement, les serveurs MCP existent en deux saveurs : les serveurs locaux qui tournent sur votre machine (excellents pour l'accès aux fichiers, les bases de données locales, les outils de développement) et les serveurs distants qui fonctionnent comme services hébergés (meilleurs pour l'infrastructure partagée, les intégrations SaaS). Deuxièmement, la sécurité est une vraie préoccupation — un serveur MCP a toutes les permissions du processus qui l'exécute, donc un serveur mal délimité pourrait exposer des données sensibles. Le protocole inclut une étape de négociation des capacités, mais le contrôle d'accès et l'authentification pour les serveurs distants sont encore en évolution. Troisièmement, MCP n'est pas la même chose que l'utilisation d'outils — c'est une couche de transport et de découverte qui se situe sous l'utilisation d'outils. Un modèle qui prend en charge l'appel d'outils peut fonctionner avec MCP, mais MCP gère aussi des choses comme les abonnements aux ressources (contexte mis à jour en direct) et les modèles de prompts qui vont au-delà des simples appels de fonctions.
Anthropic a publié MCP en open source fin 2024, et l'adoption a été remarquablement rapide. Début 2025, il était pris en charge par Claude, Cursor, Windsurf, Zed, Sourcegraph et bien d'autres. La spécification continue d'évoluer — l'ajout du transport HTTP streamable, de l'authentification OAuth pour les serveurs distants et de l'élicitation (permettre aux serveurs de demander des informations à l'utilisateur en cours de flux) sont tous arrivés en 2025. Si vous hésitez entre construire une intégration d'outil personnalisée et construire un serveur MCP, la voie MCP l'emporte presque toujours : vous obtenez la compatibilité avec chaque client MCP gratuitement, et le protocole est assez simple pour que le coût de migration soit quasi nul.