Qu'est-ce qu'un outil ?

Définition

Un outil est une capacité d'action mise à disposition d'un agent. Contrairement au texte généré par le modèle de langage, un outil permet d'agir concrètement : lire un fichier, exécuter une commande, interroger une base de données ou poser une question à l'utilisateur.

Zileo Chat distingue deux familles d'outils :

  • Outils intégrés — fonctions natives compilées dans l'application (mémoire, tâches, calculatrice, gestion de fichiers, questions utilisateur)
  • Outils MCP — fonctions distantes découvertes dynamiquement via des serveurs compatibles avec le protocole MCP (Model Context Protocol)

Les deux familles partagent le même cycle d'exécution et sont transparentes pour le modèle de langage : il les utilise de la même manière.

Cycle de vie d'un appel d'outil

Lorsqu'un agent travaille sur une tâche, le modèle de langage peut décider d'appeler un ou plusieurs outils. Voici le déroulement complet :

  1. Découverte — Au démarrage du flux de travail, l'agent reçoit la liste de ses outils disponibles (intégrés et MCP). Chaque outil est décrit par un schéma : nom, description, paramètres attendus.
  2. Injection — Ces définitions sont intégrées dans le prompt système envoyé au modèle, qui sait ainsi quels outils il peut utiliser.
  3. Appel — Le modèle génère un appel d'outil structuré contenant le nom de l'outil et ses paramètres au format JSON.
  4. Validation — Les paramètres sont vérifiés avant exécution. Selon le niveau de risque et le mode de validation configuré, une confirmation peut être demandée à l'utilisateur.
  5. Exécution — L'outil est exécuté : localement pour les outils intégrés, via le réseau pour les outils MCP.
  6. Résultat — Le résultat (succès ou erreur) est renvoyé au modèle, qui peut alors poursuivre son raisonnement ou appeler un autre outil.
  7. Enregistrement — Chaque appel est enregistré en base de données avec ses paramètres, son résultat, sa durée et son statut.

Ce cycle se répète en boucle jusqu'à ce que le modèle estime avoir terminé sa tâche, dans la limite du nombre maximal d'itérations configuré pour l'agent.

Outils intégrés et outils MCP

Outils intégrés

Les outils intégrés sont des fonctions compilées directement dans Zileo Chat. Ils ne nécessitent aucune configuration externe et sont immédiatement disponibles.

Chaque agent peut activer ou désactiver individuellement les outils intégrés depuis sa configuration. Certains outils ne sont accessibles qu'à l'agent principal (les outils de sous-agents).

Outils MCP

Les outils MCP proviennent de serveurs externes conformes au protocole Model Context Protocol. Lorsqu'un serveur MCP est démarré, Zileo Chat interroge automatiquement sa liste d'outils disponibles.

Un outil MCP est identifié par un nom composé : le nom du serveur suivi du nom de l'outil, séparés par un double tiret bas. Par exemple, un outil « rechercher un symbole » sur le serveur « serena » sera identifié comme mcp__serena__find_symbol.

Les outils MCP sont assignés globalement via la configuration des serveurs MCP dans les paramètres de l'application.

Schéma d'un outil

Chaque outil, qu'il soit intégré ou MCP, expose un schéma qui décrit :

  • Nom — identifiant unique de l'outil
  • Description — texte explicatif destiné au modèle de langage
  • Paramètres d'entrée — schéma JSON définissant les champs attendus, leur type et leur caractère obligatoire ou optionnel
  • Résultat — structure retournée après exécution (succès, données, message d'erreur)

Ce schéma permet au modèle de langage de comprendre quand et comment utiliser chaque outil sans intervention humaine.

Traçabilité

Tous les appels d'outils sont enregistrés et consultables dans l'historique du flux de travail. Pour chaque appel, vous pouvez voir :

  • L'outil utilisé et son type (intégré ou MCP)
  • Les paramètres envoyés
  • Le résultat obtenu
  • La durée d'exécution
  • Le statut (succès ou erreur)

Cette traçabilité permet de comprendre le raisonnement de l'agent et de diagnostiquer d'éventuels problèmes.

Définition

Un outil est une capacité d'action concrète mise à disposition d'un agent pour interagir avec son environnement.

Outils intégrés

Fonctions natives compilées dans l'application. Disponibles immédiatement, sans configuration externe.

Locaux

Outils MCP

Fonctions distantes découvertes via des serveurs conformes au protocole Model Context Protocol.

Distants

Cycle de vie d'un appel

Du déclenchement à l'enregistrement, chaque appel d'outil suit un parcours en sept étapes.

1
Découverte L'agent reçoit la liste de ses outils disponibles avec leurs schémas
2
Injection Les définitions sont intégrées dans le prompt système du modèle
3
Appel Le modèle génère un appel structuré avec nom et paramètres JSON
4
Validation Vérification des paramètres et confirmation utilisateur si nécessaire
5
Exécution Localement pour les outils intégrés, via le réseau pour les outils MCP
6
Résultat Le résultat est renvoyé au modèle pour poursuivre son raisonnement
7
Enregistrement Paramètres, résultat, durée et statut sont sauvegardés en base
Ce cycle se répète en boucle jusqu'à ce que le modèle estime avoir terminé, dans la limite du nombre maximal d'itérations configuré pour l'agent (50 par défaut).

Schéma d'un outil

Chaque outil expose un schéma standardisé que le modèle de langage utilise pour comprendre quand et comment l'appeler.

Nom
Identifiant unique de l'outil
MemoryTool
Description
Texte explicatif pour le modèle
Gère la mémoire persistante de l'agent
Paramètres d'entrée
Schéma JSON des champs attendus
{ operation, content, id, ... }
Résultat
Structure retournée après exécution
{ success, data, error }

Traçabilité

Chaque appel d'outil est enregistré et consultable dans l'historique du flux de travail.

Outil utilisé et type
Paramètres envoyés
Résultat obtenu
Durée d'exécution
Statut (succès ou erreur)

Intégrés vs MCP

Outils intégrés
Outils MCP
Origine
Compilés dans l'application
Serveurs externes
Configuration
Aucune
Serveur MCP à configurer
Découverte
Registre statique
Dynamique au démarrage du serveur
Assignation
Par agent
Globale via le serveur
Nommage
Nom simple (ex : MemoryTool)
mcp__serveur__outil
Les outils MCP nécessitent un serveur MCP démarré et connecté. Si le serveur est arrêté, ses outils ne sont plus disponibles pour les agents.