Consigne. Choisissez un patron d'architecture, puis glissez les agents de NewsRoom 📰 dans les emplacements en pointillés cuivre. Quand tous les rôles sont pourvus, lancez l'animation pour voir les messages circuler. Le bouton « 💥 Injecter une erreur » montre comment chaque patron gère un rejet du Vérificateur.
« Un agent seul, c'est un employé qui fait tout. Une équipe d'agents spécialisés, c'est une entreprise : chacun son rôle, ses outils, ses limites. »
1. Choisissez un patron
2. Placez les agents
Agents disponibles — glissez-les sur le plateau
Journal des messages
À comparer entre les patrons
- Qui décide du chemin ? Pipeline : le développeur (fixe). Orchestrateur : l'agent central (dynamique). Débat : le juge tranche à la fin.
- Nombre de messages : comptez-les dans le journal — l'orchestrateur en échange davantage (tout passe par le chef).
- Gestion d'erreur : le pipeline doit prévoir un retour en arrière ; l'orchestrateur réassigne ; le débat relance un tour.
- Le superviseur (4ᵉ patron, non simulé ici) s'ajoute par-dessus n'importe lequel des trois : il observe, valide, interrompt. Orchestrateur = distribue le travail ; superviseur = contrôle qualité & sécurité.
MCP = Model Context Protocol (protocole de contexte de modèle) : un standard universel pour connecter les modèles d'IA (intelligence artificielle) à leurs outils et sources de données — « l'USB de l'IA ». Proposé fin 2024 ⚠ par Anthropic, publié en standard ouvert. Cliquez sur chaque composant du diagramme, puis explorez les 3 primitives.
Sans standard : N modèles × M outils = N × M intégrations sur mesure. Avec MCP : N + M connecteurs. Comme l'USB (Universal Serial Bus) : une prise, un protocole, tout se branche.
1. L'architecture : Hôte ↔ Client ↔ Serveur (cliquez sur chaque bloc)
🖥️
HÔTE (host)
Votre application — là où vit le modèle
🔌
CLIENT MCP
Le connecteur — 1 client ↔ 1 serveur
transport :
stdio (local) ou HTTP+SSE (distant)
stdio (local) ou HTTP+SSE (distant)
🧰
SERVEUR MCP
Expose : Tools · Resources · Prompts
(ex. serveur GitHub, filesystem…)
(ex. serveur GitHub, filesystem…)
👆 Cliquez sur un bloc du diagramme
Analogie complète : l'hôte est l'ordinateur, le client est le port USB, le serveur est le périphérique.2. Les 3 primitives — qui a la main ? (cliquez sur chaque carte)
🔧 Tools (outils)
Invoqués par LE MODÈLECliquez pour le détail…
Des actions exécutables — c'est le tool calling de la Session 5, standardisé. Le modèle décide quand les appeler, pendant sa boucle (Session 6).
- Exemple (serveur GitHub) :
créer_issue(titre, corps) - Exemple (serveur base de données) :
exécuter_requête(sql) - ⚠️ Garde-fous obligatoires pour les actions irréversibles (Sessions 5–6) : le standard n'en dispense d'aucun.
📚 Resources (ressources)
Contrôlées par L'APPLICATIONCliquez pour le détail…
Des données en lecture que l'hôte choisit d'injecter dans le contexte du modèle — l'esprit du RAG (Retrieval-Augmented Generation, génération augmentée par récupération, Session 4).
- Exemple : le contenu de
README.mdd'un dépôt - Exemple : la liste des clients actifs du CRM (Customer Relationship Management, gestion de la relation client)
- Différence clé avec un Tool en lecture : ici, c'est l'application qui décide quoi montrer, pas le modèle.
📋 Prompts (modèles d'invite)
Choisis par L'UTILISATEURCliquez pour le détail…
Des invites prêtes à l'emploi, paramétrables, que l'utilisateur sélectionne dans un menu de l'hôte.
- Exemple : « Analyse cette pull request selon nos standards »
- Exemple : « Analyse cette réclamation client selon notre grille conformité »
- Intérêt : capitaliser les bonnes invites de l'équipe, au lieu que chacun réinvente la sienne.
Le point qui différencie tout : qui a la main. Tools → le modèle décide d'agir · Resources → l'application décide quoi montrer · Prompts → l'utilisateur choisit dans un menu. Trois primitives, trois déclencheurs.
3. Les deux transports
| Transport | Où ? | Comment ? | Cas type |
|---|---|---|---|
| stdio (standard input/output, entrée/sortie standard) | Local | Le serveur est un processus lancé par l'hôte ; dialogue par l'entrée/sortie du système | Serveur filesystem sur votre poste |
| HTTP+SSE (HyperText Transfer Protocol + Server-Sent Events, événements envoyés par le serveur) | Distant | Par le réseau ; le serveur peut pousser des événements vers le client | Serveur MCP d'entreprise, partagé par les équipes |
⚠ Le transport distant évolue (variantes « streamable HTTP »). Mnémotechnique stable : stdio = local · HTTP = distant.
4. L'écosystème : servez-vous avant de coder ⚠
Serveurs MCP disponibles sur étagère (liste indicative — l'écosystème grandit chaque semaine ⚠) :
📁 filesystem🗄️ PostgreSQL / SQLite🔍 recherche web
🐙 GitHub💬 Slack🌐 navigateur📅 calendriers📧 e-mail
Et pour VOTRE logique métier : écrivez votre serveur
serveur = nouveau ServeurMCP("crm-interne")
serveur.tool("chercher_client",
description: "Recherche un client par nom ou e-mail",
schéma: { requete: string },
exécution: (args) => crm.chercher(args.requete))
serveur.resource("crm://clients/actifs",
description: "Liste des clients actifs",
lecture: () => crm.listeActifs())
serveur.démarrer(transport: stdio)
Chaque tool = exactement la définition d'outil de la Session 5 (nom, description, schéma). Écrit une fois → tous vos hôtes en profitent : c'est le gain N+M.
Vérifiez vos acquis — 4 questions éclair. Cliquez sur une réponse pour voir la correction immédiatement.