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.
Utiliser la connexion d’outils d’un bloc
Si le bloc choisi dans la palette propose une connexion aux outils MCP, ajoutez un bloc MCP - Liste d’outils, configurez ses serveurs et récupérez les outils nécessaires. Associez-le ensuite depuis la section Ports contextuels du bloc qui les utilisera.
Le catalogue reste détaché du parcours principal et est préparé avant le bloc consommateur. Renseignez les champs proposés par ce bloc, reliez ses sorties et testez une demande avec et sans appel d’outil. Suivez le guide des connexions pour les étapes détaillées.
Construire la boucle bloc par bloc
Le parcours suivant utilise les blocs standards pour configurer explicitement l’instruction, la requête au modèle et les appels d’outils.
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.- Le parcours revient vers la même
Instruction LLM, qui intègre le résultat depuis l’historique, puis 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}}"
}Les métadonnées se saisissent dans Meta sous forme de paires clé/valeur, avec Ajouter un élément :
| Clé | Valeur |
|---|---|
userEmail | {{userData.email}} |
Les identifiants d’organisation, de conversation, d’application et d’exécution, ainsi que userData, sont transmis automatiquement : ne les redéfinissez pas dans Meta.
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.
Reliez la sortie succès de l’appel d’outils au bloc Instruction LLM utilisé avant la requête. La requête continue de lire {{generatePrompt-1.instruction}}, qui est recalculée à chaque passage dans la boucle.
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.