Aller au contenu principal

Clients MCP

Le client MCP sert de pont de communication entre votre serveur et les serveurs MCP. C’est votre point d’acces a tous les outils qu’un serveur MCP fournit.

Communication agnostique du transport

L’une des forces cles de MCP est d’etre agnostique du transport : le client et le serveur peuvent communiquer via differentes methodes. La configuration la plus courante fait fonctionner les deux sur la meme machine, communiquant via l’entree/sortie standard. Mais MCP supporte aussi HTTP, WebSockets, et d’autres protocoles reseau.

Types de messages

Les principaux types de messages echanges entre client et serveur :

MessageDescription
ListToolsRequest / ListToolsResultLe client demande “quels outils fournis-tu ?” et recoit la liste complete
CallToolRequest / CallToolResultLe client dit “execute cet outil avec ces arguments” et recoit les resultats

Flux complet

Quand un utilisateur demande “Quels repositories ai-je ?”, voici le flux :

  1. L’utilisateur soumet sa question a votre serveur
  2. Votre serveur demande au client MCP la liste des outils disponibles
  3. Le client envoie un ListToolsRequest au serveur MCP et recoit la liste
  4. Votre serveur envoie a Claude la question + la liste des outils
  5. Claude analyse et decide d’appeler un outil
  6. Votre serveur demande au client MCP d’executer l’outil
  7. Le client envoie un CallToolRequest au serveur MCP
  8. Le serveur MCP appelle l’API GitHub et renvoie les donnees
  9. Le client retransmet les resultats a votre serveur
  10. Votre serveur envoie les resultats a Claude
  11. Claude formule sa reponse finale

Ce flux implique beaucoup d’etapes, mais chaque composant a une responsabilite claire. Le client MCP abstrait la complexite de la communication avec le serveur, vous laissant vous concentrer sur la logique de votre application.