Qu’est-ce qu’un client MCP ?

Un client MCP est un sous-programme d’une application agent IA. Il communique avec un serveur MCP pour obtenir des informations et exécuter des tâches.

Objectifs d’apprentissage

Cet article s'articule autour des points suivants :

  • Expliquer comment les clients et serveurs MCP interagissent
  • Comprendre les hôtes MCP
  • Commencer à déployer des clients et des serveurs MCP sur Cloudflare

Copier le lien de l'article

Qu’est-ce qu’un client MCP ?

Un client Model Context Protocol (MCP) est un programme informatique qui, en tant que partie intégrante d’un agent d’IA ou à sa demande, effectue des requêtes auprès d’un serveur MCP. L’agent d’IA s'appuie sur les informations que le client MCP obtient du serveur MCP pour prendre des décisions ou exécuter des tâches. Considérez le client MCP comme un assistant capable d'effectuer des réservations de restaurant ou d’effectuer un suivi avec des personnes au nom de son employeur (l’agent IA).

Supposons qu’Acme Corp. crée un agent d’IA capable de commander en toute autonomie des meubles pour une chambre d’enfant en réponse à des invites de client simples du type : « Je souhaiterais meubler la chambre de mon enfant de neuf ans ». Pour trouver les meilleures options, l’agent d’IA a besoin d’informations concernant les meubles pour enfants disponibles, leurs prix et les dimensions des meubles par rapport à une chambre standard. Si les fabricants de meubles exposent ces informations par l’intermédiaire du protocole MCP, l’agent IA peut charger un client MCP de demander directement les informations souhaitées.

Les clients MCP opèrent au sein d’hôtes MCP : un hôte MCP est un agent ou une application d’IA. MCP n’est pas comme le modèle client-serveur sur lequel Internet a été construit, dans lequel les « clients » étaient à l’origine censés être des dispositifs discrets avec leurs propres adresses IP. Cependant, les clients, les hôtes et les serveurs MCP peuvent tous être exécutés sur la même machine, bien que ce ne soit pas toujours le cas.

Fonctionnement des hôtes MCP

Un hôte MCP est une application d’IA agentique. Outre ses autres fonctions, l’application contient un ou plusieurs clients, qui sont des programmes affiliés à l’hôte. Les clients aident l’hôte à obtenir les informations nécessaires ou à exécuter des actions en réponse aux Invites de l’utilisateur final. Chaque client communique directement avec un serveur MCP. Les connexions serveur supplémentaires exigent l’instanciation d’un plus grand nombre de clients.

Schéma : l'appareil d’un utilisateur final exécute une application d’intelligence artificielle qui interroge un client MCP, qui interroge à son tour un serveur MCP
Ce schéma montre comment les clients et les serveurs MCP interagissent en coulisses d’une application côté utilisateur lorsque les serveurs MCP sont hébergés sur Cloudflare.

Du point de vue de l’utilisateur final, tout se déroule dans l’envers du décor : tout ce qu’il voit, c’est qu’il saisit une invite dans une application d’IA, puis que l’application répond ou exécute ses requêtes. Cependant, en arrière-plan, l’application repose au moins en partie sur les clients et serveurs MCP pour faire le travail.

Qu’est-ce qu’un serveur MCP ?

Un serveur MCP est un logiciel qui prend en charge l’utilisation du MCP et met des informations à la disposition des clients MCP. Les serveurs MCP jouent un rôle actif en aidant les clients MCP à répondre à leurs invites, en demandant plus de contexte si nécessaire, par exemple.

Les serveurs et les clients MCP peuvent fonctionner sur la même machine physique. Il peut également s’agir d’appareils distincts, connectés à distance les uns aux autres via Internet. Un serveur MCP peut être hébergé sur un serveur web (ou sur Cloudflare, comme dans le diagramme ci-dessus), mais ce n'est pas une obligation.

Quelles sont les fonctionnalités principales des serveurs MCP ?

Les serveurs MCP mettent plusieurs fonctionnalités à la disposition des clients MCP. Ces fonctionnalités aident les clients MCP à accomplir leurs tâches.

  • Outils : ce sont des fonctions pouvant être exécutées pour faciliter l'utilisation des invites. Il peut s'agir par exemple d'une fonction qui appelle une API.
  • Ressources : les ressources sont des sources enregistrées de données en lecture seule, telles que des documents, des documents API ou des articles de base de connaissances.
  • Invites : c'est à dire des modèles structurés et stockés pour appeler des outils et des ressources spécifiques.

Quelles sont les fonctionnalités principales des clients MCP ?

Les clients MCP mettent également des fonctionnalités à la disposition des serveurs MCP, qui peuvent demander des informations ou obtenir des éclaircissements de la part des clients utilisant ces fonctionnalités.

  • Élicitation : une fois la connexion établie, le serveur peut avoir besoin de davantage de contexte ou d’informations pour répondre à la requête du client. Le serveur utilise la fonctionnalité d'élicitation pour obtenir ces informations auprès du client, qui peut à son tour les demander à l’utilisateur.
  • Racines : les clients peuvent demander aux serveurs de se concentrer sur certains sous-répertoires de fichiers pour s’assurer que le serveur génère une réponse pertinente. Imaginons que dans l’exemple ci-dessus, un client demande au serveur de se concentrer sur le fichier file:///home-goods/furniture/childrens-furniture/. Ainsi, le serveur a plus de chance de se limiter à des informations utiles, répondant réellement à la demande de l’utilisateur, en lui épargnant les informations concernant les produits domestiques en général ou les lits de taille adulte.
  • Échantillonnage : le serveur peut envoyer une requête au client pour que l’application d’IA exécute une tâche.

Comment construire un serveur ou un client MCP avec Cloudflare

Cloudflare permet aux développeurs de créer, tester et déployer leurs propres clients et serveurs MCP dans le cadre du développement de leurs propres agents IA. Les développeurs peuvent créer sur leurs appareils locaux et déployer sur Cloudflare, ou créer via leurs comptes GitHub. Le déploiement d’un serveur ou d’un client MCP sur Cloudflare leur permet d’exposer des outils et des données aux agents sans auto-hébergement, et ce en quelques millisecondes, sur un réseau mondial situé à environ 50 millisecondes de 95% de la population connectée à Internet à travers le monde.

L’authentification via OAuth peut également être intégrée dans les serveurs MCP. Sans authentification, n’importe qui peut se connecter et utiliser le serveur. Avec l’authentification, seules les parties autorisées peuvent le faire. L’authentification peut donc contribuer à préserver la confidentialité et la sécurité des données sur un serveur MCP.

Pour obtenir un tutoriel complet sur la manière de construire un serveur MCP distant avec Cloudflare, consultez les documents pour développeurs MCP de Cloudflare.