"Proposer une norme universelle et ouverte pour connecter les systèmes d'IA aux sources de données, remplaçant les intégrations fragmentées par un protocole unique". Telle est la dernière promesse d'Anthropic avec son protocole de contextualisation des modèles (model context protocol, mcp) qu'il vient de dévoiler. "Que vous construisiez un IDE alimenté par l'IA, que vous amélioriez une interface de chat ou que vous créiez des flux de travail d'IA personnalisés, le MCP fournit un moyen standardisé de connecter les LLM au contexte dont ils ont besoin", annonce Anthropic sur sa page de projet Github. Ce MCP s'articule autour de trois composants : la spécification du protocole et les kits de développement logiciel (SDK), la prise en charge du serveur MCP local dans les applications Claude Desktop, ainsi qu'un référentiel open source de serveurs MCP.
Comme l'expique Anthropic, MCP fournit un moyen normalisé pour les applications afin de partager des informations contextuelles avec des modèles de langage, d'exposer des outils et des capacités aux systèmes d'IA, et de construire des intégrations et des flux de travail composables. Ce protocole utilise des messages JSON-RPC 2.0 pour établir la communication entre les hôtes (applications LLM qui établissent des connexions), des clients (connecteurs au sein de l'application hôte, et des serveurs (services qui fournissent le contexte et les capacités.) L'éditeur a par ailleurs partagé des serveurs MCP pré-construits pour des systèmes d'entreprise populaires tels que Google Drive, Slack, GitHub, Git, Postgres et Puppeteer. Les premiers utilisateurs comme Block et Apollo ont intégré MCP dans leurs systèmes, tandis que des éditeurs d'IDE comme Zed, Replit, Codeium et Sourcegraph travaillent avec MCP pour améliorer leurs plateformes, permettant par exemple aux agents d'IA de récupérer plus efficacement les informations pertinentes pour mieux comprendre le contexte autour d'une tâche de codage et produire un code plus nuancé et plus fonctionnel en moins d'essais.
Des considérations en sécurité et confiance à prendre en compte
Selon le fournisseur ce protocole "permet des capacités puissantes grâce à un accès arbitraire aux données et à des voies d'exécution de code" nécessitant cependant de prendre en compte plusieurs considérations importantes en termes de sécurité et de confiance. Celles-ci se répartissent en 4 catégories :
Consentement et contrôle de l'utilisateur : Les utilisateurs doivent explicitement consentir à l'accès aux données et à leur exploitation, et les comprendre, mais aussi garder le contrôle sur les données qui sont partagées et sur les actions qui sont entreprises. Les responsables de la mise en œuvre doivent fournir des interfaces utilisateur claires pour l'examen et l'autorisation des activités ;
Confidentialité des données : Les hébergeurs doivent obtenir le consentement explicite de l'utilisateur avant d'exposer les données de l'utilisateur aux serveurs. Les hébergeurs ne doivent pas transmettre les données relatives aux ressources à un tiers sans le consentement de l'utilisateur. Les données des utilisateurs doivent être protégées par des contrôles d'accès appropriés ;
Sécurité des outils : Les outils exécutent des codes arbitraires et doivent être traités avec la prudence qui s'impose. Les hôtes doivent obtenir le consentement explicite de l'utilisateur avant d'invoquer n'importe quel outil. Les utilisateurs doivent comprendre ce que fait chaque outil avant d'en autoriser l'utilisation ;
Contrôles de l'échantillonnage des LLM : Les utilisateurs doivent approuver explicitement toute demande d'échantillonnage des LLM, contrôler s'il a lieu ou non, mais aussi le prompt effectif qui sera envoyé et les résultats que le serveur peut voir. Anthropic indique par ailleurs que le protocole limite intentionnellement la visibilité du serveur sur les invites.
"Bien que MCP lui-même ne puisse pas appliquer ces principes de sécurité au niveau du protocole, les responsables de la mise en œuvre devraient : intégrer dans leurs applications des flux de consentement et d'autorisation robustes, fournir une documentation claire sur les implications en matière de sécurité, implémenter des contrôles d'accès et des protections de données appropriés, suivre les meilleures pratiques en matière de sécurité dans leurs intégrations, et tenir compte des implications en matière de protection de la vie privée dans la conception de leurs fonctionnalités", prévient Anthropic. Reste à savoir si les responsables de projets IA et développeurs intéressés par ce protocole de contexte de modèle tiendront compte de tout ou partie de ces précautions d'usage.