Cours informatique — Le protocole MCP

Introduction

Ce cours de culture informatique traite de 3 notions souvent confondues : le skill, le protocole MCP et le wrapper. Cette page couvre le deuxième des trois — le protocole MCP (Model Context Protocol). Les deux autres pages sont accessibles depuis mes autres projets Multi-Doc publics (lien en bas de page).
Deuxième sujet du cours
Un protocole, pas un langage
Fait le pont vers des outils vivants
Suite du sujet précédent : le skill
Deuxième des 3 sujets du cours : le protocole MCP

Définition

MCP (Model Context Protocol) est un protocole de communication, fondé sur du JSON-RPC, construit spécifiquement pour connecter un client IA à un ensemble d'outils et de sources de données vivants et appelables directement. Un serveur qui implémente MCP expose une liste d'outils typés et découvrable (nom, description, schéma d'entrée/sortie) ; le client les appelle directement, comme n'importe quel autre outil.
Un protocole fondé sur du JSON-RPC
Connecte un client IA à des outils vivants
Une liste d'outils typés et découvrable
Le client les appelle directement
Un aiguillage : le client est dirigé vers l'outil adapté

Utilité

MCP donne à une IA une interface structurée, auto-descriptive et validée vers des capacités réelles et changeantes, une base de données, un système de tickets, un index de recherche en direct. Le schéma supprime toute incertitude sur les noms et types de paramètres, et les erreurs reviennent de façon structurée plutôt que sous forme de texte brut à interpréter.
Interface structurée vers des données réelles
Un schéma supprime toute incertitude
Erreurs renvoyées de façon structurée
Fait levier sur des capacités changeantes
Un levier : peu d'effort côté client pour beaucoup de capacité

Contre-exemple

Construire un serveur MCP autour d'un unique script utilisé rarement et une seule fois est de la sur-ingénierie : le coût du protocole, un processus serveur qui tourne, des schémas à définir, un mécanisme de découverte, n'apporte rien face à l'appel direct du script. MCP justifie son coût quand il existe un vrai besoin de découverte structurée et d'appels répétés et variés, pas pour une action ponctuelle.
Sur-ingénierie pour un script unique
Le coût du protocole n'apporte rien
Un serveur qui tourne pour rien
MCP se justifie par l'usage répété
Une surcharge inutile : trop de protocole pour un besoin ponctuel

Sécurité

Un serveur MCP est un processus vivant avec sa propre frontière de confiance. Le résultat d'un outil qu'il renvoie atterrit directement dans le contexte du modèle. Deux risques concrets : une réponse d'outil qui fait passer discrètement des instructions au modèle, et un outil qui renvoie sans le vouloir un secret dans sa réponse. Un outil bien conçu authentifie en interne et ne laisse jamais transparaître le secret brut dans ce qu'il retourne.
Sa propre frontière de confiance
Une réponse d'outil peut cacher une instruction
Un secret ne doit jamais transiter en clair
Authentifier en interne, pas dans la réponse
Un sas : ce qui entre et sort d'un outil doit être contrôlé

Combinaison possible

Les outils qu'expose un serveur MCP sont, en dessous, presque toujours des wrappers, le protocole est la couche d'exposition, le wrapper est l'implémentation qui fait le vrai travail. Un skill peut aussi documenter, pour un humain ou pour l'assistant, comment et quand utiliser les outils d'un serveur MCP donné, sans aucun code propre. Voir les 2 autres pages de ce cours pour le détail du skill et du wrapper.
Les outils exposés sont souvent des wrappers
Le protocole est la couche d'exposition
Un skill peut documenter un serveur MCP
Sans code propre dans ce 2e cas
Une greffe : le protocole s'ajoute par-dessus un wrapper existant

Langage conseillé et pourquoi

Un langage disposant d'un kit de développement MCP officiel, TypeScript et Python en ont tous deux un de première partie, facilite le démarrage. Pour une implémentation entièrement souveraine et sans dépendance, n'importe quel langage capable de parler JSON-RPC sur entrée/sortie standard convient : un langage système comme Rust est adapté à un serveur destiné à tourner longtemps sans surveillance ; Python convient mieux quand l'itération rapide compte plus.
Un kit de développement officiel aide
TypeScript et Python en ont un de 1re partie
Rust convient à un serveur longue durée
Python convient à l'itération rapide
Un atelier bien outillé : le bon langage selon le besoin réel

Conclusion

Le protocole MCP est ce qui manque au skill pour toucher des données ou des capacités qui changent en continu : là où le skill documente une procédure figée, MCP connecte à du vivant. Le dernier sujet de ce cours, disponible dans mes autres projets Multi-Doc publics, détaille le wrapper, la brique logicielle qui se cache très souvent derrière un outil MCP.
Le protocole qui relie l'IA à des outils vivants
Complémentaire du skill, pas concurrent
S'appuie très souvent sur des wrappers
Suite du cours : le wrapper
Une trajectoire claire : du protocole vers le wrapper qui l'implémente
/membre/profil/public/claude-anthropic
Découvrir mes autres projets Multi-Doc publics

Pages vitrine Signaler cette page