Aller au contenu

Aller au sommaire de la doc

Les outils MCP

Votre agent agit sur while par 82 outils MCP, avec vos droits et jamais plus. Les gestes sensibles attendent l’accord d’une personne.

Mis à jour le 9 novembre 2026.

Voir en Markdown

Brancher le serveur

Le serveur MCP de while est à https://app.while.sh/mcp. Votre agent s’y connecte par OAuth : au premier appel, une page s’ouvre dans votre navigateur, et vous autorisez while.

Sans compte, le serveur d’essai https://app.while.sh/essai donne 19 de ces outils, sans connexion, pour mettre une appli en ligne à l’essai.

Ce qu’un outil peut faire

Un outil en lecture seule ne change rien. Les autres agissent avec vos droits, jamais plus, et un jeton peut les borner à un projet, à la lecture ou à des environnements. Un geste sensible, comme détruire une base de production ou rendre une appli publique, attend la validation d’une personne : l’outil donne alors le lien de la demande. Quand vous autorisez votre agent, vous choisissez son niveau : Lire, Lire et agir, ou Administrer. Au niveau Lire et agir, un geste d’administration que vous pouvez faire vous-même, comme inviter un membre ou créer un jeton, attend votre confirmation : une page de while dit le geste, pour qui et sur quoi, et vous confirmez d’un clic.

Les groupes d’outils

Aux niveaux Lire et Lire et agir, votre agent reçoit d’abord 40 outils, ce qui tient dans les éditeurs qui limitent leur nombre, comme Cursor ; au niveau Administrer, il les a tous d’emblée. Pour un geste qui n’y est pas, il charge un groupe avec load_tools : alerts (alertes, incidents, canaux), feedback_and_docs (remarques de page, retours, recherche dans la doc), environments_and_storage (domaines, liens d’accès, applis internes, dépôt git, buckets, détruire ou redémarrer un environnement) ou administer (membres, groupes, rôles, accès, jetons, comptes de service, consommation, projets, organisation). Le groupe reste à l’agent d’une session à l’autre, et vous le retirez dans Mes agents. Claude Code et VS Code voient ses outils tout de suite ; Cursor, Claude et ChatGPT après une reconnexion de while.

Mettre en ligne

Lire le catalogue de while

get_catalog ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : format, language, block.

Lire le code du projet

read_source ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, version, format, archive, path, start.

Envoyer le code depuis un terminal

upload_source agit sur vos projets. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, terminal.

Écrire des fichiers du projet

write_files agit sur vos projets. Il est aussi sur le serveur d’essai.

Paramètres : project, files (obligatoire), delete, message.

Lier un dépôt git

link_git_repo agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, forge, repo, token, base_url, unlink.

Calculer un plan de mise en ligne

plan_deploy ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, plan_id, intent, from_state, timeout_seconds.

Mettre une appli en ligne

deploy_app agit sur vos projets. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, source_archive_base64, release, redeploy, image, digest, intent, confirm_overwrite, wait, timeout_seconds.

Appliquer un plan

apply_plan agit sur vos projets.

Paramètres : plan_id (obligatoire), project, wait, timeout_seconds, discard.

Revenir à une version précédente

rollback_app agit sur vos projets.

Paramètres : project, environment, to, wait, approval_id.

Lire l’état d’une appli

get_app_status ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, include, since, probe.

Lire les validations en attente

list_approvals ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : id.

Configurer un environnement

Lire un environnement

get_environment ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : view, project, environment, database.

Poser des variables et des secrets

set_env agit sur vos projets. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, values, secret, file, build, delete, key, value.

Créer une prévisualisation

create_preview agit sur vos projets.

Paramètres : project, name, branch, from, copy_database, ttl_hours, wait.

Détruire un environnement

destroy_environment agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, environment (obligatoire), reason, approval_id.

Redémarrer un service

restart_app agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, environment, service (obligatoire).

Vérifier un domaine

verify_domain agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, environment, domain (obligatoire).

Demander un lien d’accès

request_access_link agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, environment, name, days.

Les données

Lire une base en SQL

query_database ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : format, project, environment, database, sql (obligatoire), limit, max_bytes, timeout_seconds.

Sauvegarder une base

backup_database agit sur vos projets.

Paramètres : project, environment, database, test_restore, wait.

Restaurer une base

restore_backup agit sur vos projets.

Paramètres : project, environment, database, backup_id, instant, approval_id, wait, reason.

Lire un bucket

read_bucket ne fait que lire. Il est dans le groupe environments_and_storage.

Paramètres : project, environment, bucket (obligatoire), key, minutes, download_link, prefix, next.

Créer un lien d’envoi vers un bucket

create_upload_link agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, environment, bucket (obligatoire), key (obligatoire), minutes.

Changer la clé S3 d’un environnement

rotate_s3_key agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, environment, immediate.

Les tâches planifiées

Lister les tâches planifiées

list_tasks ne fait que lire.

Paramètres : project, environment, task, limit.

Lancer une tâche

run_task agit sur vos projets.

Paramètres : project, environment, task (obligatoire), args, env, catch_up, wait, timeout_seconds, approval_id.

Observer

Lire les journaux

get_logs ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : project, environment, build_id, query, limit.

Comprendre ce qui se passe

observe_app ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : view, project, environment, query, range, trace_id, service, operation, since_minutes, min_duration, errors, limit, since, fingerprint, until, families, version, window_minutes, database, question.

Lire les alertes

list_alerts ne fait que lire. Il est dans le groupe alerts.

Paramètres : view, project, status_page, organization.

Poser une règle d’alerte

set_alert_rule agit sur vos projets. Il est dans le groupe alerts.

Paramètres : project, name, source, condition, window_minutes, severity, message, channels, environment, active, delete, default, mute, public_page.

Prendre en charge un incident

acknowledge_incident agit sur vos projets. Il est dans le groupe alerts.

Paramètres : project, incident (obligatoire), reason.

Créer un canal d’alerte

create_alert_channel agit sur vos projets. Il est dans le groupe alerts.

Paramètres : organization, type (obligatoire), name (obligatoire), address, url, min_severity.

Supprimer un canal d’alerte

delete_alert_channel agit sur vos projets. Il est dans le groupe alerts.

Paramètres : organization, channel (obligatoire).

Essayer un canal d’alerte

test_alert_channel agit sur vos projets. Il est dans le groupe alerts.

Paramètres : organization, channel (obligatoire).

Les connexions

Lire les connexions

list_connections ne fait que lire.

Paramètres : view, organization, connection, since, until, refusal.

Déclarer une connexion

declare_connection agit sur vos projets.

Paramètres : organization, name (obligatoire), model, domain, secondary_domains, authentication, rules, post_read, learning_days, rate_per_minute, owner, label, project, apps, direction, update.

Régler une connexion

update_connection agit sur vos projets.

Paramètres : organization, connection, method, pattern, approve_each_call, read, reason, lock, caller, window, calls, remove_limit.

Demander ou régler une liaison fédérée

set_connection_binding agit sur vos projets.

Paramètres : organization, connection (obligatoire), binding, reason, resume, approve_production_deploys, project, caller.

Retirer une liaison

remove_connection_binding agit sur vos projets.

Paramètres : organization, connection (obligatoire), binding (obligatoire), reason.

Appeler l’API d’une connexion

call_connection agit sur vos projets.

Paramètres : organization, connection (obligatoire), method, path, body, type, call.

Les projets

Lire les projets

get_project ne fait que lire. Il est aussi sur le serveur d’essai.

Paramètres : project, include.

Créer un projet

create_project agit sur vos projets. Il est aussi sur le serveur d’essai.

Paramètres : project (obligatoire), name, budget_eur, organization.

Régler un projet

update_project_settings agit sur vos projets. Il est dans le groupe administer.

Paramètres : project, budget_eur, owner, add_webhook, types, remove_webhook.

Supprimer un projet

delete_project agit sur vos projets. Il est dans le groupe administer.

Paramètres : project (obligatoire), confirm (obligatoire), approval_id.

Lire le journal de l’organisation

get_activity_log ne fait que lire.

Paramètres : organization, tab, person, via, family, project, resource, who, assignment, since, until, limit, cursor, verify.

Les accès et les droits

Expliquer les droits

explain_access ne fait que lire.

Paramètres : organization, project, scope, who, permission, activity.

Annuler une demande d’accès

cancel_access_request agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, id (obligatoire), reason.

Revoir les accès

review_access ne fait que lire. Il est dans le groupe administer.

Paramètres : view, organization, role, request, project, scope, unused_days.

Donner un rôle

grant_role agit sur vos projets.

Paramètres : organization, who (obligatoire), role (obligatoire), scope (obligatoire), until, days, reason (obligatoire).

Retirer un rôle

revoke_role agit sur vos projets.

Paramètres : organization, assignment (obligatoire), reason (obligatoire).

Garder un accès revu

keep_access agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, assignment (obligatoire), reason.

Définir un rôle

define_role agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, role (obligatoire), name, description, permissions, reason.

Supprimer un rôle

delete_role agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, role (obligatoire), reason.

Lire les entrées par la connexion d’entreprise

list_sign_ins ne fait que lire. Il est dans le groupe administer.

Paramètres : organization, project.

Demander un accès

request_access agit sur vos projets.

Paramètres : organization, role, permission, scope, days, reason (obligatoire), renew, for.

L’organisation

Lire les organisations

get_organization ne fait que lire.

Paramètres : view, organization.

Lire la consommation

get_usage ne fait que lire. Il est dans le groupe administer.

Paramètres : view, project, organization, period.

Inviter une personne

invite_member agit sur vos projets.

Paramètres : organization, email (obligatoire), role, reason, resend.

Changer le rôle ou les groupes d’un membre

update_member agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, email (obligatoire), role, reason, add_groups, remove_groups.

Retirer un membre

remove_member agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, email (obligatoire).

Créer un groupe

create_group agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, group (obligatoire), sso.

Supprimer un groupe

delete_group agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, group (obligatoire).

Régler l’organisation

update_organization_settings agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, retention_months, confirm, call_retention_days, language, rules, budget_eur, approvals, no_budget, add_approvers, subject_type, resource_type, resource, remove_approvers, group, sso_group.

Les jetons et les comptes de service

Lister les jetons et les comptes de service

list_tokens ne fait que lire. Il est dans le groupe administer.

Paramètres : view, organization, account, scope, project, environment.

Créer un jeton d’API

create_token agit sur vos projets.

Paramètres : scope, project, organization, name, permissions, environments, days.

Raccourcir la vie d’un jeton

update_token_expiry agit sur vos projets. Il est dans le groupe administer.

Paramètres : id (obligatoire), days (obligatoire).

Révoquer un jeton

revoke_token agit sur vos projets. Il est dans le groupe administer.

Paramètres : app_session, token.

Créer un compte de service

create_service_account agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, name (obligatoire), description, project, reason (obligatoire).

Activer ou désactiver un compte de service

update_service_account agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, account (obligatoire), reason (obligatoire), enabled (obligatoire).

Supprimer un compte de service

delete_service_account agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, account (obligatoire), reason (obligatoire).

Créer une clé de compte de service

create_service_account_key agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, account (obligatoire), replace, name, until, days, overlap_hours.

Révoquer une clé de compte de service

revoke_service_account_key agit sur vos projets. Il est dans le groupe administer.

Paramètres : organization, account (obligatoire), key_id (obligatoire), reason (obligatoire).

Obtenir un identifiant git d’une heure

get_git_credentials agit sur vos projets.

Paramètres : project.

Ouvrir une appli interne

open_internal_app agit sur vos projets. Il est dans le groupe environments_and_storage.

Paramètres : project, service, environment, address, read_only, approval_id.

Les retours, la doc et les groupes d’outils

Envoyer un retour à l’équipe while

send_feedback agit sur vos projets. Il est aussi sur le serveur d’essai.

Paramètres : kind (obligatoire), message (obligatoire), project, organization, tool, route, reference, service, usage, block, volume, authentication, documentation.

Lire les retours et leurs réponses

list_feedback ne fait que lire. Il est dans le groupe feedback_and_docs. Il est aussi sur le serveur d’essai.

Paramètres : organization.

Accuser réception d’une annonce

acknowledge_announcement agit sur vos projets.

Paramètres : id (obligatoire).

Lire les remarques des pages

list_page_notes ne fait que lire. Il est dans le groupe feedback_and_docs.

Paramètres : project, state, limit.

Marquer une remarque

update_page_note agit sur vos projets. Il est dans le groupe feedback_and_docs.

Paramètres : project, id (obligatoire), state (obligatoire), version, note.

Ouvrir les remarques en production

update_page_notes_settings agit sur vos projets. Il est dans le groupe feedback_and_docs.

Paramètres : project, production_open (obligatoire), environment.

Chercher dans la doc de while

search_docs ne fait que lire. Il est dans le groupe feedback_and_docs. Il est aussi sur le serveur d’essai.

Paramètres : query (obligatoire), lang.

Charger un groupe d’outils

load_tools change la liste des outils de votre agent.

Paramètres : group (obligatoire).

Prochaines étapes

Branchez votre agent, il s’occupe du reste

À coller dans votre agent

Lis while.sh/agents, puis mets mon appli en ligne avec while.

Copier les instructions

Pas besoin de compte pour essayer : votre appli est en ligne tout de suite. Pour la garder, connectez-vous.

Un projet pour votre entreprise ? Parlez à l’équipe : hello@while.sh