MCP : connecter une IA à vos systèmes
Le MCP, pour Model Context Protocol, est un protocole ouvert qui standardise la manière dont une application d'intelligence artificielle accède à des données et à des outils extérieurs. Publié par Anthropic fin 2024, il a été adopté depuis par la plupart des éditeurs d'assistants.
L'analogie la plus parlante est celle d'un connecteur universel : avant, chaque assistant nécessitait une intégration spécifique pour chaque service. Avec le MCP, un service expose ses capacités une fois, selon une convention commune, et devient utilisable par n'importe quel client compatible.
Comment cela s'articule
Le protocole repose sur une relation entre un client et un serveur, dans laquelle chacun a un rôle bien délimité.
Le serveur MCP
C'est le composant que l'on développe pour exposer un système. Il déclare :
- des outils : des actions exécutables (rechercher, créer, mettre à jour)
- des ressources : des données consultables (documents, enregistrements)
- des modèles d'invite : des consignes réutilisables préparées pour un usage donné
Le client MCP
C'est l'application qui héberge le modèle : un assistant de bureau, un environnement de développement, ou votre propre application web. Elle découvre les capacités déclarées par le serveur et les met à disposition du modèle, qui décide ensuite lesquelles appeler.
À quoi cela sert dans un projet web
Le MCP prend tout son intérêt dès qu'un assistant doit dépasser la conversation pour interagir avec l'existant, c'est à dire ne pas utiliser uniquement ses "connaissances" internes.
- Exposer un système d'information interne : permettre à un assistant d'interroger un catalogue, un annuaire ou un outil métier sans développer une intégration propre à chaque assistant du marché.
- Outiller un agent : fournir de manière structurée les actions qu'il peut déclencher, avec une description explicite de chaque paramètre.
- Brancher une recherche documentaire : un serveur MCP peut exposer un index RAG comme un outil de recherche parmi d'autres.
- Éviter l'enfermement : en normalisant l'interface, changer d'assistant ou de fournisseur de modèle n'impose pas de réécrire les intégrations.
Les précautions à prendre
Un serveur MCP donne à un modèle la capacité d'agir sur un système, parfois avec des données sensibles. Cela rend la question de la sécurité très importante.
Le périmètre d'abord : n'exposez que les opérations strictement nécessaires. Un outil de suppression ou d'envoi qui n'existe pas ne peut pas être détourné. Plusieurs MCP font le choix de n'exposer que les données en lecture seule.
L'authentification reste la vôtre : le serveur doit appliquer les droits de la personne à l'origine de la demande, et non disposer d'un accès privilégié global.
Les serveurs tiers sont du code tiers : installer un serveur MCP trouvé en ligne revient à exécuter un programme non audité avec accès à vos données. Les mêmes précautions que pour n'importe quelle dépendance s'appliquent.
La journalisation n'est pas optionnelle : tracer chaque appel d'outil, ses paramètres et son résultat est indispensable pour diagnostiquer un comportement inattendu.
Le MCP n'est pas une finalité. Beaucoup de besoins se satisfont d'un appel à une API REST, solution stable et maîtrisée. Le protocole devient pertinent quand plusieurs assistants doivent accéder aux mêmes systèmes, ou quand le choix des actions doit rester ouvert.