Model Context Protocol (MCP) — Plongée dans la spécification
À jour au 2026-07-24T14:00:00Z
Qu'est-ce que Model Context Protocol (MCP) — Plongée dans la spécification ?
La négociation de capacités de MCP signifie qu'un client ne doit jamais présumer d'une capacité non déclarée — un serveur qui omet « resources » rend tout appel resources/list du client une violation de protocole, pas un no-op gracieux.
Le Model Context Protocol est un contrat précis et versionné qui régit la façon dont un agent d'IA communique avec le monde extérieur — les bases de données, les applications métier et les outils dont il a besoin pour réellement accomplir un travail plutôt que de simplement en parler. Pour un praticien de l'analytique SAP, comprendre la mécanique même du protocole, et pas seulement le fait que Joule ou un autre assistant « prend en charge MCP », est ce qui distingue quelqu'un capable d'évaluer les affirmations d'intégration d'un éditeur de quelqu'un qui doit les prendre pour argent comptant.
Ce qu'est réellement le protocole
MCP repose sur JSON-RPC 2.0, le même format léger d'appel de procédure à distance qui alimente déjà le Language Server Protocol derrière les éditeurs de code modernes. Chaque message est un simple objet JSON portant un nom de méthode, des paramètres optionnels et, pour les requêtes qui attendent une réponse, un identifiant utilisé pour faire correspondre la réponse à l'appel. Ce choix est délibéré et non accessoire : JSON-RPC est largement implémenté, possède une gestion d'erreurs prévisible et structurée, et se moque du tuyau par lequel il transite — le même format de message fonctionne aussi bien sur un pipe de processus local, une connexion en flux continu sur le web, qu'une socket persistante. Cette indépendance vis-à-vis du transport est ce qui permet au même protocole de servir aussi bien l'ordinateur portable d'un développeur qu'un déploiement multi-tenant en production, sans avoir à repenser la couche de messages.
Pourquoi c'est important
- Construit sur JSON-RPC 2.0 (même format que le Language Server Protocol), MCP hérite d'une sémantique d'erreur structurée prévisible et d'une neutralité de transport entre stdio, SSE ou WebSocket.
- La poignée de main initialize force client et serveur à déclarer explicitement leurs capacités, rendant le protocole compatible vers l'avant : les nouveaux types de capacités se dégradent gracieusement sur les anciens clients.
- Les outils sont la primitive la plus risquée car un appel tools/call peut écrire des données ou déclencher des workflows irréversibles — la qualité du schéma compte davantage sur cette primitive que sur resources ou prompts.
Points clés
- Format JSON-RPC 2.0 — requêtes, réponses, notifications ; révision de spec épinglée à 2025-06-18 mi-2026.
- Deux transports — stdio pour le local (Claude Desktop, Cursor, serveur local SAP Build) et Streamable HTTP pour le distant (remplace l'ébauche SSE).
- Session en trois phases — initialize (version + capacités) → notifications/initialized → appels jusqu'à la fermeture.
- Négociation de capacités — tools, resources, prompts, sampling, roots ; ce que chaque partie déclare contraint ce que l'autre peut demander.
- Adopté par SAP, OpenAI, Google, Microsoft — la surface mono cross-vendeur ; le serveur MCP Analytics Legends est la référence interne.
Termes employés sur cette page
- JSON-RPC 2.0
- Protocole léger d'appel de procédure distante sur un flux d'octets bidirectionnel ; définit les formes de message requête, réponse et notification sur lesquelles MCP superpose sa sémantique.
- Streamable HTTP transport
- Le transport distant de MCP depuis la révision 2025-06-18 ; un unique point de terminaison HTTP accepte des POST JSON-RPC et peut basculer vers un flux server-sent-event pour des réponses progressives, avec continuité de session via Mcp-Session-Id.
- Capability negotiation
- L'échange à l'initialisation par lequel client et serveur déclarent les fonctionnalités optionnelles (tools.listChanged, resources.subscribe, sampling, roots, prompts) qu'ils prennent en charge ; les appels hors de l'ensemble négocié doivent être refusés.
- Initialize handshake
- Le premier échange obligatoire d'une session MCP : le client envoie initialize avec protocolVersion et capabilities, le serveur répond, le client envoie la notification notifications/initialized, puis les appels normaux peuvent commencer.
- Decision owner
- La personne responsable qui assume l'arbitrage et finance l'action suivante.
- Semantic contract
- La définition partagée des termes métier, métriques, entités et règles d'accès utilisée par les outils et les équipes.
- Control plane
- La couche qui applique la politique, l'accès, la traçabilité, la supervision et l'escalade à travers le modèle opérationnel.
- Evidence grade
- Une étiquette qui distingue le fait vérifié, le signal directionnel, l'hypothèse modélisée et l'observation de terrain.
Sources
- Model Context Protocol — official specification
- Anthropic — Introducing the Model Context Protocol
- SAP News Center — Accelerate the Autonomous Enterprise with SAP Business Data Cloud
- SAP News Center — SAP Unveils the Autonomous Enterprise
- SAP News Center — The Future of the Enterprise Is Autonomous
- SAP News Center — 2026 SAP Sapphire Keynote: Powering the Autonomous Enterprise
- SAP Help Portal — Administering SAP Datasphere: Enable Joule for SAP Datasphere
- SAP Datasphere — Help Portal
- SAP Datasphere — official product page
- SAP Analytics Cloud — Help Portal
- SAP Analytics Cloud — official product page
- SAP BW/4HANA — Help Portal
- SAP S/4HANA — Help Portal
- SAP News Center
- SAP Community
- SAP — industries overview
- SAP Business AI — official product page
- SAP Joule (work companion) — official product page
- SAP Generative AI — official product page
- Stanford HAI — AI Index Report
- Meta AI — Llama model research
- arXiv — preprint archive (cs.CL/cs.AI)
- HuggingFace — model hub
- Gartner — research & analyst site
- BARC — BI & Analytics research
- TDWI — data & analytics research
- DSAG — German-speaking SAP user group
- ASUG — Americas' SAP User Group
- Databricks — official site
Fiche complète réservée aux abonnés. Ce que la fiche complète ajoute : le cadre de décision complet · la comparaison SAP · Snowflake · Databricks · Fabric · les pièges courants et leur correctif · l'aide-mémoire · les schémas d'architecture · les blocs de code · les chiffres à citer.