Outils MCP — Référence Complète

Le serveur MCP d'IgnitionRAG met à votre disposition 23 outils organisés en 6 catégories. Chaque outil est décrit ci-dessous avec ses paramètres, ce qu'il retourne, et un exemple concret d'utilisation. Vous n'avez pas besoin de connaître ces détails par cœur — votre assistant IA les utilisera automatiquement quand vous lui parlerez en langage naturel. Mais comprendre ce qui est disponible vous aidera à formuler vos demandes plus efficacement.

Discovery — Explorer vos ressources

Ces outils vous permettent de découvrir ce qui existe dans votre espace IgnitionRAG : vos collections de documents, vos agents IA, vos workflows, et les types de nodes disponibles pour construire des workflows.

list_collections

Liste toutes vos collections de documents. Une collection, c'est comme un dossier intelligent qui contient des documents et permet de les interroger avec l'IA.

Ce que ça retourne : Une liste de collections avec pour chacune : identifiant, nom, description, et nombre de documents.

Note

💬 Exemple d'utilisation : "Montre-moi toutes mes collections IgnitionRAG"

Tip

💡 Bon à savoir : Aucun paramètre nécessaire — l'outil sait automatiquement qui vous êtes grâce à votre clé API.

list_agents

Liste tous vos agents IA configurés. Un agent, c'est un assistant IA spécialisé qui connaît vos documents et peut utiliser des outils.

Ce que ça retourne : Une liste d'agents avec pour chacun : identifiant, nom, modèle utilisé, et collection associée.

Note

💬 Exemple d'utilisation : "Quels agents IA sont disponibles dans mon espace ?"

Tip

💡 Bon à savoir : Utilisez l'identifiant d'un agent pour ensuite discuter avec lui via chat_with_agent.

list_workflows

Liste tous vos workflows existants. Un workflow, c'est une chaîne d'actions automatisées (comme une recette de cuisine pour l'IA).

Ce que ça retourne : Une liste de workflows avec pour chacun : identifiant, nom, description, nombre de nodes et d'arêtes, et statut.

Note

💬 Exemple d'utilisation : "Liste mes workflows IgnitionRAG"

Tip

💡 Bon à savoir : Vérifiez vos workflows existants avant d'en créer un nouveau — peut-être qu'un workflow similaire existe déjà !

list_node_types

Liste tous les types de nodes disponibles pour construire des workflows. Vous pouvez filtrer par catégorie : trigger, llm, rag, evaluate, tool, logic, transform, output.

ParamètreTypeRequisDescription
categorystringNonFiltrer par catégorie (trigger, llm, rag, evaluate, tool, logic, transform, output)

Ce que ça retourne : Une liste de types de nodes avec pour chacun : type, nom, catégorie, et description.

Note

💬 Exemple d'utilisation : "Quels types de nodes RAG sont disponibles ?"

Tip

💡 Bon à savoir : C'est le point de départ idéal quand vous voulez construire un workflow — commencez par voir ce qui est disponible.

get_node_definition

Donne la définition complète d'un type de node : ses options de configuration, ses ports d'entrée/sortie, et des exemples. Utile pour comprendre comment configurer un node avant de l'ajouter.

ParamètreTypeRequisDescription
nodeTypestringOuiLe type de node (ex: 'llm.chat', 'rag.retrieve', 'trigger.manual')

Ce que ça retourne : La définition complète du node : inputs, outputs, schéma de configuration, valeurs par défaut, et exemples.

Note

💬 Exemple d'utilisation : "Comment configurer un node llm.chat ?"

Tip

💡 Bon à savoir : Consultez cette définition avant d'utiliser add_node pour éviter les erreurs de configuration.

Workflow Builder — Construire des workflows

Ces outils vous permettent de créer et modifier des workflows étape par étape. Un workflow est comme une recette : vous ajoutez des ingrédients (nodes), vous les connectez dans l'ordre, et le résultat est un pipeline de traitement automatisé.

create_workflow

Crée un nouveau workflow vide. C'est la première étape — comme ouvrir un nouveau document. Vous recevez un identifiant de workflow à utiliser pour toutes les opérations suivantes.

ParamètreTypeRequisDescription
namestringOuiLe nom de votre workflow (ex: 'Mon pipeline RAG')
descriptionstringNonUne description de ce que fait le workflow

Ce que ça retourne : L'identifiant du workflow créé (workflowId) à utiliser pour add_node, connect_nodes, etc.

Note

💬 Exemple d'utilisation : "Crée un nouveau workflow appelé 'Pipeline Support Client'"

Tip

💡 Bon à savoir : Donnez un nom descriptif — vous le retrouverez plus facilement dans votre liste de workflows.

add_node

Ajoute un node (une étape) à un workflow existant. Chaque node a un type (trigger, llm, rag, etc.) et une configuration optionnelle. C'est comme ajouter un ingrédient à votre recette.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow (obtenu via create_workflow)
nodeTypestringOuiLe type de node à ajouter (ex: 'trigger.manual', 'llm.chat', 'rag.retrieve', 'output.response')
configobjectNonConfiguration du node (ex: systemPrompt pour llm.chat, collectionId pour rag.retrieve)
positionobjectNonPosition sur le canvas {x, y} — calculée automatiquement si non fournie

Ce que ça retourne : L'identifiant du node créé (nodeId) à utiliser pour connect_nodes.

Note

💬 Exemple d'utilisation : "Ajoute un node de recherche RAG lié à ma collection coll_abc123"

Tip

💡 Bon à savoir : Utilisez get_node_definition avant pour connaître les options de configuration disponibles pour chaque type de node.

connect_nodes

Connecte deux nodes dans un workflow. Les données circulent du node source vers le node cible. Les ports sont détectés automatiquement quand chaque node n'a qu'une seule entrée/sortie.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow
sourceNodeIdstringOuiL'identifiant du node source (d'où partent les données)
targetNodeIdstringOuiL'identifiant du node cible (où arrivent les données)
sourcePortstringNonPort de sortie spécifique (auto-détecté si un seul port)
targetPortstringNonPort d'entrée spécifique (auto-détecté si un seul port)

Ce que ça retourne : L'identifiant de la connexion créée (edgeId).

Note

💬 Exemple d'utilisation : "Connecte le trigger au node RAG, puis le RAG au LLM"

Tip

💡 Bon à savoir : Dans la plupart des cas, vous n'avez pas besoin de spécifier les ports — ils sont détectés automatiquement.

update_node_config

Modifie la configuration d'un node existant. Utile pour ajuster un paramètre sans recréer le node entier.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow
nodeIdstringOuiL'identifiant du node à modifier
configobjectOuiLes nouvelles valeurs de configuration

Ce que ça retourne : Confirmation de la mise à jour avec la nouvelle configuration.

Note

💬 Exemple d'utilisation : "Change le system prompt du node LLM pour qu'il réponde en français"

Tip

💡 Bon à savoir : Seuls les champs fournis sont modifiés — les autres gardent leur valeur actuelle.

remove_node

Supprime un node et toutes ses connexions d'un workflow.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow
nodeIdstringOuiL'identifiant du node à supprimer

Ce que ça retourne : Confirmation de la suppression.

Note

💬 Exemple d'utilisation : "Supprime le node de reranking du workflow"

Tip

💡 Bon à savoir : Attention : toutes les connexions vers et depuis ce node seront aussi supprimées.

remove_edge

Supprime une connexion spécifique entre deux nodes.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow
edgeIdstringOuiL'identifiant de la connexion à supprimer

Ce que ça retourne : Confirmation de la suppression de la connexion.

Note

💬 Exemple d'utilisation : "Déconnecte le node RAG du node LLM"

Tip

💡 Bon à savoir : Utilisez get_workflow pour voir tous les identifiants de connexions.

get_workflow

Récupère l'état complet d'un workflow : tous ses nodes, connexions, et configurations. C'est comme voir votre recette complète d'un coup d'œil.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow

Ce que ça retourne : L'état complet du workflow : nodes (avec configs), connexions (edges), et métadonnées.

Note

💬 Exemple d'utilisation : "Montre-moi le contenu de mon workflow Pipeline Support Client"

Tip

💡 Bon à savoir : Utile pour vérifier l'état de votre workflow avant de le valider ou l'exécuter.

Validation & Exécution — Tester et lancer

Ces outils vous permettent de vérifier qu'un workflow est correct (pas de connexions manquantes, pas d'erreurs de configuration) puis de le lancer et suivre son exécution.

validate_workflow

Vérifie qu'un workflow est valide et prêt à être exécuté. Détecte les connexions manquantes, les configurations invalides, les cycles, etc.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow à valider

Ce que ça retourne : Le résultat de la validation : valide ou invalide, avec la liste des erreurs et suggestions de correction.

Note

💬 Exemple d'utilisation : "Vérifie que mon workflow est prêt à être lancé"

Tip

💡 Bon à savoir : Validez toujours avant d'exécuter — ça évite les erreurs en pleine exécution.

execute_workflow

Lance l'exécution d'un workflow validé. Vous recevez un identifiant d'exécution pour suivre la progression.

ParamètreTypeRequisDescription
workflowIdstringOuiL'identifiant du workflow à exécuter
inputobjectNonDonnées d'entrée pour le trigger du workflow (ex: {"query": "Quelle est la politique de remboursement ?"})
streambooleanNonActiver le mode streaming SSE pour suivre en temps réel

Ce que ça retourne : L'identifiant d'exécution (executionId) pour suivre la progression avec get_execution_status.

Note

💬 Exemple d'utilisation : "Lance mon workflow avec la question 'Comment résilier mon abonnement ?'"

Tip

💡 Bon à savoir : Si le workflow a un trigger manuel, l'input est le texte que vous passez. Pour un webhook trigger, l'input simule le payload du webhook.

get_execution_status

Vérifie la progression et les résultats d'une exécution de workflow. Montre le statut de chaque node et le résultat final quand c'est terminé.

ParamètreTypeRequisDescription
executionIdstringOuiL'identifiant d'exécution (obtenu via execute_workflow)

Ce que ça retourne : Le statut de l'exécution (pending, running, completed, failed), l'état de chaque node, et le résultat final.

Note

💬 Exemple d'utilisation : "Quel est le statut de mon exécution ?"

Tip

💡 Bon à savoir : Les statuts possibles sont : pending (en attente), running (en cours), completed (terminé), failed (échoué).

Agent — Discuter avec vos agents IA

Cet outil vous permet d'envoyer un message à un agent IA pré-configuré et d'obtenir une réponse. L'agent utilise sa base de connaissances (RAG) et ses outils pour répondre intelligemment.

chat_with_agent

Envoie un message à un agent IA pré-configuré et reçoit sa réponse. L'agent utilise son modèle LLM, sa base de connaissances (RAG), et ses outils pour répondre intelligemment.

ParamètreTypeRequisDescription
agentIdstringOuiL'identifiant de l'agent (obtenu via list_agents)
messagestringOuiLe message à envoyer à l'agent
conversationHistoryarrayNonHistorique de conversation optionnel pour le contexte (liste de {role, content})

Ce que ça retourne : La réponse de l'agent avec le texte, les sources utilisées, et les outils appelés.

Note

💬 Exemple d'utilisation : "Demande à mon agent Support comment configurer le SSO"

Tip

💡 Bon à savoir : L'agent se souvient du contexte si vous passez l'historique de conversation. Sans historique, chaque message est traité indépendamment.

Widgets — Gérer vos widgets embarquables

Ces outils vous permettent de créer, configurer et suivre les widgets que vous pouvez intégrer dans vos sites web. Un widget, c'est comme un mini-chatbot que vous pouvez coller sur n'importe quelle page.

list_widgets

Liste tous vos widgets. Un widget, c'est un mini-chatbot que vous pouvez intégrer dans n'importe quel site web.

Ce que ça retourne : Une liste de widgets avec pour chacun : identifiant, nom, type, statut, et préfixe de clé.

Note

💬 Exemple d'utilisation : "Montre-moi tous mes widgets"

Tip

💡 Bon à savoir : 5 types de widgets : collection (chat RAG), agent (chat agent), workflow-button, workflow-form, workflow-webhook.

create_widget

Crée un nouveau widget embarquable. Vous choisissez le type, la ressource liée (collection, agent, ou workflow), et les options de personnalisation.

ParamètreTypeRequisDescription
namestringOuiLe nom du widget (1-100 caractères)
typestringOuiLe type de widget : collection, agent, workflow-button, workflow-form, ou workflow-webhook
collectionIdstringNonID de collection (requis pour type 'collection')
agentIdstringNonID d'agent (requis pour type 'agent')
workflowIdstringNonID de workflow (requis pour les types workflow-*)
allowedDomainsarrayNonDomaines autorisés à intégrer ce widget (ex: ['*.example.com'])
themeobjectNonPersonnalisation visuelle (primaryColor, backgroundColor, textColor, fontFamily, borderRadius)
welcomeMessagestringNonMessage d'accueil affiché à l'ouverture du widget (max 500 caractères)

Ce que ça retourne : L'identifiant du widget, la clé d'accès, et le code d'intégration HTML à copier-coller.

Note

💬 Exemple d'utilisation : "Crée un widget de chat pour ma collection 'Documentation Produit' avec un thème bleu"

Tip

💡 Bon à savoir : Le code d'intégration retourné est prêt à être collé dans votre site web.

get_widget

Récupère la configuration détaillée d'un widget.

ParamètreTypeRequisDescription
widgetIdstringOuiL'identifiant du widget

Ce que ça retourne : La configuration complète du widget : nom, type, thème, domaines autorisés, statut, etc.

Note

💬 Exemple d'utilisation : "Montre-moi les détails de mon widget Support"

Tip

💡 Bon à savoir : La clé complète n'est pas affichée pour des raisons de sécurité — seul le préfixe est visible.

update_widget

Modifie la configuration d'un widget existant. Seuls les champs fournis sont modifiés. Le type et la ressource liée ne peuvent pas être changés.

ParamètreTypeRequisDescription
widgetIdstringOuiL'identifiant du widget à modifier
namestringNonNouveau nom du widget
isActivebooleanNonActiver ou désactiver le widget
allowedDomainsarrayNonNouvelle liste de domaines autorisés
themeobjectNonNouveau thème visuel
welcomeMessagestringNonNouveau message d'accueil

Ce que ça retourne : Confirmation de la mise à jour avec la nouvelle configuration.

Note

💬 Exemple d'utilisation : "Désactive mon widget Support temporairement"

Tip

💡 Bon à savoir : Pour changer le type ou la ressource liée, vous devez supprimer le widget et en créer un nouveau.

delete_widget

Supprime définitivement un widget. Sa clé est invalidée et les sessions actives sont terminées.

ParamètreTypeRequisDescription
widgetIdstringOuiL'identifiant du widget à supprimer

Ce que ça retourne : Confirmation de la suppression.

Note

💬 Exemple d'utilisation : "Supprime le widget 'Ancien Chat'"

Tip

💡 Bon à savoir : Attention : cette action est irréversible. Le code d'intégration sur vos sites cessera de fonctionner.

regenerate_widget_key

Régénère la clé d'accès d'un widget pour rotation de sécurité. L'ancienne clé est immédiatement invalidée.

ParamètreTypeRequisDescription
widgetIdstringOuiL'identifiant du widget

Ce que ça retourne : La nouvelle clé et le nouveau code d'intégration HTML.

Note

💬 Exemple d'utilisation : "Régénère la clé de mon widget Support"

Tip

💡 Bon à savoir : Pensez à mettre à jour le code d'intégration sur vos sites après régénération.

get_widget_analytics

Récupère les statistiques d'utilisation d'un widget : nombre de sessions, messages, requêtes populaires, et détail par jour.

ParamètreTypeRequisDescription
widgetIdstringOuiL'identifiant du widget
periodstringNonPériode d'analyse : 7d, 30d, ou 90d (défaut : 30d)

Ce que ça retourne : Les analytics : nombre de sessions, messages, top requêtes, et détail quotidien.

Note

💬 Exemple d'utilisation : "Montre-moi les statistiques de mon widget Support sur les 7 derniers jours"

Tip

💡 Bon à savoir : Les analytics sont mises à jour en quasi temps réel.

Cas d'usage concrets

Voici 3 exemples complets que vous pouvez suivre pas à pas. Chaque exemple montre ce que vous dites à votre assistant IA et ce qui se passe en coulisses.

Créer un workflow RAG simple

Dans cet exemple, nous allons créer un workflow complet qui prend une question, cherche dans vos documents, et génère une réponse. C'est le cas d'usage le plus courant.

🗣️ Crée un nouveau workflow appelé 'FAQ Automatique'

L'assistant utilise create_workflow et vous retourne l'identifiant du workflow.

Workflow 'FAQ Automatique' créé avec l'identifiant wf_abc123

🗣️ Ajoute un trigger manuel pour démarrer le workflow

L'assistant utilise add_node avec le type 'trigger.manual'.

Node trigger ajouté (node_001)

🗣️ Ajoute un node de recherche RAG connecté à ma collection 'Documentation Produit'

L'assistant utilise add_node avec le type 'rag.retrieve' et configure le collectionId.

Node RAG ajouté (node_002) avec collection 'Documentation Produit'

🗣️ Ajoute un node LLM pour générer la réponse, puis un node de sortie

L'assistant utilise add_node deux fois (llm.chat + output.response).

Node LLM ajouté (node_003) et node output ajouté (node_004)

🗣️ Connecte tous les nodes dans l'ordre : trigger → RAG → LLM → output

L'assistant utilise connect_nodes trois fois pour créer la chaîne complète.

3 connexions créées : trigger→RAG, RAG→LLM, LLM→output

🗣️ Valide et lance le workflow avec la question 'Comment réinitialiser mon mot de passe ?'

L'assistant utilise validate_workflow puis execute_workflow avec l'input.

Workflow valide. Exécution lancée. Réponse : 'Pour réinitialiser votre mot de passe, allez dans Paramètres > Sécurité > Réinitialiser...' (3 sources citées)

Interroger une collection via un agent

Dans cet exemple, nous allons utiliser un agent IA existant pour poser des questions sur vos documents — sans créer de workflow.

🗣️ Quels agents sont disponibles ?

L'assistant utilise list_agents pour trouver vos agents.

2 agents trouvés : 'Support Client' (agent_001) et 'Documentation Technique' (agent_002)

🗣️ Demande à l'agent Support Client comment configurer le SSO

L'assistant utilise chat_with_agent avec l'identifiant de l'agent et votre question.

L'agent répond avec une explication détaillée du SSO, citant 2 documents sources.

🗣️ Et quelles sont les limites du SSO sur le plan gratuit ?

L'assistant utilise à nouveau chat_with_agent avec l'historique de conversation pour le contexte.

L'agent répond en tenant compte du contexte précédent, expliquant les limitations du plan gratuit.

Gérer des widgets

Dans cet exemple, nous allons créer un widget de chat, le personnaliser, et consulter ses statistiques.

🗣️ Crée un widget de chat lié à ma collection 'FAQ Produit' avec un message d'accueil 'Comment puis-je vous aider ?'

L'assistant utilise create_widget avec le type 'collection', le collectionId, et le welcomeMessage.

Widget créé ! Voici le code d'intégration HTML à coller sur votre site.

🗣️ Change le thème du widget pour utiliser du bleu (#3B82F6) comme couleur principale

L'assistant utilise update_widget avec le nouveau thème.

Widget mis à jour avec le thème bleu.

🗣️ Montre-moi les statistiques du widget sur les 7 derniers jours

L'assistant utilise get_widget_analytics avec la période 7d.

142 sessions, 387 messages, top requête : 'comment résilier' (23 fois)

🗣️ Régénère la clé du widget pour des raisons de sécurité

L'assistant utilise regenerate_widget_key.

Nouvelle clé générée. Pensez à mettre à jour le code sur votre site.