Construire un agent MCP simple
Un agent MCP charge des outils, laisse le modèle choisir une action, exécute l’outil demandé puis reformule le résultat.
La boucle agentique
MCP - Liste d’outilsproduittoolsettoolServerRouting.Instruction LLMprépare le contexte et la consigne métier.Requête LLMreçoit{{listTools-1.tools}}et produit éventuellementgenericToolCalls.Conditiontestegt (length chatCompletion-1.genericToolCalls) 0.MCP - Appel d’outilsconsomme les appels et le routage.- Une deuxième instruction intègre le résultat, puis revient vers la requête LLM.
- Si aucun outil n’est demandé, la réponse
contenttermine directement le tour.
Configurer le catalogue
Pour chaque serveur MCP, renseignez son nom, son URL, ses en-têtes et éventuellement ses métadonnées. Cliquez sur Récupérer les outils, puis autorisez uniquement les actions utiles au workflow.
{
"Authorization": "{{customParams.mcpAuthorization}}"
}{
"conversationId": "{{queryExecutionId}}",
"userEmail": "{{userData.email}}"
}Transmettre les outils au modèle
Dans la Requête LLM :
Outils : {{listTools-1.tools}}
Mode strict : trueLa consigne doit indiquer quand utiliser un outil, quand répondre directement et quelles actions nécessitent une confirmation.
Appeler le bon serveur
Dans MCP - Appel d’outils :
Exécutions d'outils : {{chatCompletion-1.genericToolCalls}}
Serveur de routage : {{listTools-1.toolServerRouting}}Le routage associe chaque outil au serveur qui l’expose. Ne remplacez pas cette référence par une URL écrite en dur.
Reformuler le résultat
Après l’appel, le modèle doit recevoir le résultat de l’outil et l’historique afin de produire une réponse utilisateur, pas un objet technique brut.
Exemple de consigne :
À partir du résultat d'outil, réponds clairement à l'utilisateur.
N'invente aucune donnée absente du résultat.
Si l'action a échoué, explique-le sans exposer de détail technique.Avec ou sans outil
| Sans MCP | Avec MCP |
|---|---|
| Le bot décrit comment accomplir l’action | Le bot peut exécuter l’action |
| Les données externes ne sont pas consultées | Le serveur fournit des données à jour |
| La réponse reste informative | La réponse devient opérationnelle |
Sécurité et fiabilité
- limitez le catalogue aux outils nécessaires ;
- transmettez les jetons via
customParams, jamais en clair dans le workflow ; - ajoutez une confirmation utilisateur pour les actions sensibles ;
- testez les expirations et les droits insuffisants ;
- reliez les erreurs du catalogue, du LLM et des appels d’outils ;
- vérifiez que la boucle possède toujours une route de sortie.