Docs/ Assistant IA/ Référence des outils

Référence des outils

Référence complète des 103 outils IA exposés via le serveur MCP. Chaque outil inclut son niveau de risque, ses paramètres et un exemple d'utilisation.

Risk Levels

Chaque outil est classé par niveau de risque. Le risque détermine quelle portée de clé API est requise pour l'exécuter.

RisquePortée requiseDescription
readread / standard / adminRequêtes sûres. Aucune modification d'état.
writestandard / adminModifie l'état (redémarrages, déploiements, commandes sandbox).
destructiveadmin uniquementOpérations irréversibles. Nécessite un jeton de confirmation.

Outils de lecture (37)

list_apps

Lister toutes les applications déployées avec leur statut, stack et utilisation des ressources.

ParamètreTypeRequisDescription
pageintegerNoNuméro de page (défaut : 1)
per_pageintegerNoRésultats par page (défaut : 20, max : 100)

get_app

Obtenir des informations détaillées sur une application spécifique, y compris les domaines, le nombre de variables d'environnement, le statut de déploiement et la configuration des ressources.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

get_server_status

Obtenir l'état de santé du serveur incluant la version, l'uptime, le nombre d'apps et le statut de connectivité Docker. Pas de paramètres.

list_deployments

Lister l'historique des déploiements pour une application.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

get_deployment_logs

Obtenir les logs de build pour un déploiement spécifique.

ParamètreTypeRequisDescription
deployment_idstringYesID du déploiement

get_app_logs

Obtenir les logs récents du conteneur pour une application en cours d'exécution.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app
linesintegerNoNombre de lignes (défaut : 200, max : 1000)

list_databases

Lister toutes les bases de données provisionnées. Pas de paramètres.

list_cron_jobs

Lister toutes les tâches cron planifiées. Pas de paramètres.

list_backups

Lister tous les enregistrements de sauvegarde. Pas de paramètres.

list_domains

Lister les domaines configurés pour une application.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

list_alerts

Lister toutes les règles d'alerte. Pas de paramètres.

server_metrics

Obtenir les métriques de ressources du serveur : utilisation CPU, mémoire, disque et E/S réseau. Pas de paramètres.

list_database_servers

List all database servers with their status, engine, and version.

get_database_server

Get detailed information about a specific database server. Param: server_id (string, required).

get_db_connection_info

Get connection details (host, port, credentials) for a database server. Param: server_id (string, required).

list_auth_servers

List all authentication servers (Logto instances).

list_realtime_servers

List all realtime servers (Centrifugo instances).

list_function_servers

List all function servers (Deno Deploy instances).

list_mail_domains

List all mail domains and their status.

list_storage_instances

List all file storage instances (MinIO).

list_uptime_checks

List all uptime monitoring checks.

list_nodes

List all registered server nodes in the cluster.

list_projects

List all projects and their resource counts.

Plus 18 more read tools for getting details on individual auth servers, realtime servers, function servers, mail domains, mailboxes, aliases, storage instances, buckets, access keys, usage, uptime checks, incidents, nodes, and project members. All follow the same pattern with a required ID parameter.

Outils d'écriture (44)

Ces outils modifient l'état du serveur. Ils nécessitent une clé API avec la portée standard ou admin.

restart_app

Redémarrer le conteneur d'une application (principal + réplicas).

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

deploy_app

Déclencher un nouveau déploiement pour une application.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

scale_app

Modifier le nombre de réplicas pour une application.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app
replicasintegerYesNombre de réplicas (1-50)

trigger_backup

Déclencher un job de sauvegarde immédiatement.

ParamètreTypeRequisDescription
backup_idstringYesID de la configuration de sauvegarde

trigger_cron

Exécuter une tâche cron immédiatement (hors planification).

ParamètreTypeRequisDescription
cron_idstringYesID de la tâche cron

sandbox_exec_command

Exécuter une commande dans le conteneur AI sandbox de l'app. Le sandbox est un environnement Alpine Linux complet avec accès root, réseau partagé et volumes en écriture. Timeout de 5 minutes, limite de sortie de 100 Ko.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app
commandstringYesCommande shell à exécuter
Example
{"name": "sandbox_exec_command", "arguments": {"app_id": "my-app", "command": "curl -s localhost:3000/health"}}
Note
Nécessite sandbox_enabled: true sur l'app. Activez-le dans les paramètres de l'app ou via PATCH /api/v1/apps/:id.

create_database_server

Create a new database server (PostgreSQL, MySQL, MariaDB, or Redis). Params: name, engine, version (optional).

start_* / stop_*

Start or stop database servers, auth servers, realtime servers, and function servers. Each takes a server_id parameter.

create_* (service resources)

Create auth servers, realtime servers, function servers, mail domains, mailboxes, aliases, storage instances, buckets, access keys, uptime checks, nodes, and projects. Each follows the same pattern with resource-specific required parameters.

28 new write tools for creating and managing all service types. All require standard or admin API key scope.

Outils destructifs (16)

Opérations irréversibles qui nécessitent une clé API à portée admin et un flux de confirmation en deux étapes.

Warning
Les outils destructifs ne s'exécutent pas immédiatement. Ils retournent un jeton de confirmation à usage unique (valide 5 minutes). L'IA doit ensuite appeler confirm_action avec ce jeton pour continuer. Cela empêche les suppressions accidentelles.

delete_app

Supprimer une application, ses conteneurs et optionnellement ses volumes. Retourne un jeton de confirmation.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

delete_database

Supprimer une base de données provisionnée. Retourne un jeton de confirmation.

ParamètreTypeRequisDescription
database_idstringYesID de la base de données

confirm_action

Confirmer et exécuter une action destructive en attente en utilisant le jeton retourné par delete_app ou delete_database.

ParamètreTypeRequisDescription
tokenstringYesJeton de confirmation (usage unique, TTL de 5 minutes)

delete_* (services)

Delete database servers, auth servers, realtime servers, function servers, mail domains, storage instances, uptime checks, nodes, and projects. All require confirmation and admin API key scope. 9 new destructive tools in total.

Outils sandbox (5)

Ces outils interagissent avec le conteneur AI sandbox. Tous nécessitent sandbox_enabled: true sur l'app cible. sandbox_exec_command est documenté ci-dessus sous les outils d'écriture. Les 4 restants sont des outils à risque de lecture.

sandbox_read_file

Lire un fichier depuis les volumes montés de l'app via le sandbox. Retourne jusqu'à 100 Ko.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app
pathstringYesChemin absolu du fichier (ex. : /app/config.yml)
Example
{"name": "sandbox_read_file", "arguments": {"app_id": "my-app", "path": "/app/package.json"}}

sandbox_list_processes

Lister les processus en cours dans le conteneur de l'application (exécute ps aux dans le conteneur de l'app, pas dans le sandbox).

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app

sandbox_check_connectivity

Tester la connectivité réseau depuis le sandbox. Utilise nc pour les vérifications de port TCP ou curl pour HTTP.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app
targetstringYesNom d'hôte ou IP (ex. : db, redis, localhost)
portintegerNoNuméro de port. Si omis, utilise HTTP (curl).
Example (TCP)
{"name": "sandbox_check_connectivity", "arguments": {"app_id": "my-app", "target": "db", "port": 5432}}

sandbox_status

Vérifier l'état du sandbox pour une application. Retourne si le sandbox est activé, en cours d'exécution et son ID de conteneur.

ParamètreTypeRequisDescription
app_idstringYesID de l'app ou nom de l'app