Connecter Claude à WordPress : exécuter WP-CLI et vérifier chaque changement avec Relvato
Connecter Claude à WordPress change la donne : un assistant IA peut désormais faire un vrai travail sur un site WordPress. Claude Code exécute WP-CLI via SSH, et le MCP Adapter de WordPress permet à Claude d'agir directement sur un site. Cela couvre la modification du site. Cela ne vous dit pas si le changement a cassé le paiement. Le connecteur Relvato, référencé dans l'annuaire de Claude, couvre la vérification : le même assistant peut lancer vos moniteurs Relvato et lire ce qu'ils ont trouvé. Ce guide met en place les deux et déroule une mise à jour d'extension vérifiée du début à la fin.
Deux moitiés : modifier le site, et le vérifier
WP-CLI est la ligne de commande de WordPress. Il liste les extensions, les met à jour, exporte la base de données, compare les fichiers du cœur avec WordPress.org, et plus encore. C'est ainsi qu'un assistant modifie un site. Ce qu'il ne peut pas vous montrer, c'est le site tel qu'un visiteur le voit : si le paiement passe toujours, si le formulaire de connexion s'envoie toujours, si une page est toujours rapide.
C'est la faille derrière la plupart des histoires du type « une mise à jour a cassé mon site » : la mise à jour elle-même annonce un succès, et la panne est ailleurs, dans un formulaire, un script ou un gabarit. Relvato vérifie précisément cela, dans un vrai navigateur, depuis l'extérieur. Via son connecteur, un assistant peut demander l'état d'un site (site_overview), lancer ses moniteurs tout de suite (trigger_scan), lire une exécution en détail (get_run) et obtenir le brief derrière un échec (get_fix_prompt).
Ensemble, ils forment une boucle : modifier quelque chose avec WP-CLI, le vérifier avec Relvato et lire le résultat avant de continuer, dans la même conversation.
Quel Claude peut faire quoi
Claude Code, dans le terminal ou dans l’application de bureau de Claude, peut exécuter des commandes shell. Il peut lancer WP-CLI sur un site local ou, en SSH, sur un site distant. C’est la façon la plus directe de connecter Claude à WordPress.
Le chat de l’application de bureau de Claude ne peut pas exécuter de shell, mais il peut démarrer des serveurs MCP locaux depuis son fichier de configuration : il peut donc utiliser le MCP Adapter de WordPress. Claude sur le web et sur mobile ne se connecte qu’à des serveurs distants qui s’authentifient en OAuth, et l’adapter s’authentifie avec un mot de passe d’application WordPress : depuis là, vous ne pouvez donc pas modifier un WordPress auto-hébergé ; les sites sur WordPress.com peuvent utiliser le connecteur de WordPress.com. Le connecteur de Relvato fonctionne sur toutes les versions de Claude.
Étape 1 : ajouter le connecteur Relvato
Dans Claude, ouvrez Settings → Connectors, cherchez Relvato (ou ouvrez sa page dans l'annuaire), cliquez sur Connect et identifiez-vous sur Relvato. Sur l'écran de consentement, vous autorisez l'assistant à lire vos sites et résultats et à faire des changements : ajouter des sites et des moniteurs, modifier les plannings et lancer des scans. Si vous appartenez à une organisation, vous choisissez lequel de ses espaces de travail il peut utiliser.
Dans Claude Code, ajoutez le serveur en une commande, puis identifiez-vous quand on vous le demande. Les clients qui ne peuvent pas s'identifier peuvent utiliser une clé d'API Relvato. La page développeurs présente les deux options.
# Claude Code : ajoutez Relvato, puis lancez /mcp dans Claude Code et choisissez Authenticate claude mcp add --transport http relvato https://app.relvato.com/api/mcp
Étape 2 : lui donner WP-CLI, via SSH
WP-CLI peut exécuter des commandes sur un serveur distant via SSH. Placez des alias pour vos sites dans un wp-cli.yml, dans le dossier où vous lancez Claude Code : chaque commande désigne alors le site visé. WP-CLI doit être installé sur le serveur et accessible sous le nom wp pour l'utilisateur SSH, et votre clé SSH doit fonctionner sans demande de mot de passe.
Commencez par une copie de staging. Vérifiez d'abord la connexion avec une commande sans risque : wp @staging core version doit afficher votre version de WordPress.
# wp-cli.yml @staging: ssh: deploy@staging.example.com/var/www/html @prod: ssh: deploy@example.com/var/www/html # vérifier la connexion wp @staging core version
Étape 3 : décider de ce qu'il peut lancer sans demander
Par défaut, Claude Code demande avant chaque nouvelle commande. Dans .claude/settings.json, vous pouvez pré-autoriser les commandes en lecture seule, garder les changements derrière une confirmation et interdire purement et simplement les commandes destructrices. Les règles deny l'emportent toujours sur les règles allow.
Deux précautions. Les règles correspondent à la commande telle qu'elle est écrite : wp @staging plugin list et wp @prod plugin list sont donc des règles différentes. Et la documentation de Claude Code elle-même qualifie de fragiles les règles qui cherchent à figer les arguments d'une commande. Voyez-les comme une ceinture de sécurité, pas comme un verrou : la vraie limite, c'est ce que l'utilisateur SSH peut faire sur le serveur.
{
"permissions": {
"allow": [
"Bash(wp @staging core version)",
"Bash(wp @staging plugin list *)",
"Bash(wp @staging plugin update * --dry-run)"
],
"ask": [
"Bash(wp @staging plugin update *)",
"Bash(wp @staging db export *)"
],
"deny": [
"Bash(wp * db drop *)",
"Bash(wp * db reset *)",
"Bash(wp * eval *)",
"Bash(wp * search-replace *)"
]
}
}Un cas concret : mettre à jour les extensions sans casser le paiement
Voici la boucle en pratique, d'abord en staging. Demandez à Claude quelles extensions sont obsolètes. Il lance wp @staging plugin list --update=available. Demandez ensuite à Relvato l'état du site avant de toucher à quoi que ce soit (site_overview), pour avoir une référence à comparer.
Faites une sauvegarde (wp @staging db export) et prévisualisez la mise à jour (--dry-run). Mettez à jour une extension, puis demandez à Relvato de lancer tout de suite les moniteurs du site (trigger_scan) et lisez les résultats (get_run). Si le paiement, la connexion ou un formulaire échoue, get_fix_prompt renvoie le même brief que celui de l'IA de Relvato : la pile technique du site, ce qui a changé juste avant et l'erreur exacte. Claude peut raisonner sur la cause et, si besoin, revenir à la version précédente de l'extension avec WP-CLI.
Ce n'est que lorsque le staging est propre que vous recommencez en production. Si l'extension Relvato est connectée, Relvato relance aussi ses moniteurs de lui-même après les mises à jour d'extensions. Demander dans la conversation vous donne simplement la réponse pendant que vous y êtes encore.
Terminez par des tests d'intégrité que WP-CLI sait faire seul : wp core verify-checksums compare les fichiers du cœur avec WordPress.org, et wp plugin verify-checksums --all fait de même pour les extensions de WordPress.org. Les extensions premium ne peuvent pas être vérifiées ainsi.
wp @staging plugin list --update=available wp @staging db export wp @staging plugin update woocommerce --dry-run wp @staging plugin update woocommerce # → Relvato : trigger_scan, puis get_run # → en cas d'échec : get_fix_prompt, puis retour en arrière : wp @staging plugin install woocommerce --version=<version précédente> --force wp @staging core verify-checksums wp @staging plugin verify-checksums --all
Sans terminal : le WordPress MCP Adapter
WordPress 6.9 a ajouté l’Abilities API, une façon standard pour les extensions de décrire ce qu’elles savent faire. Le MCP Adapter, une extension WordPress officielle hors du cœur et pas encore en version 1.0, transforme ces capacités en serveur MCP qu’un assistant peut utiliser. L’ancienne extension wordpress-mcp d’Automattic est archivée à son profit.
Il n’est pas dans le répertoire d’extensions de WordPress.org : vous le téléchargez depuis ses releases GitHub, et WordPress ne le met pas à jour pour vous. Les étapes ci-dessous l’installent, prouvent qu’il fonctionne, donnent à l’assistant son propre compte et connectent Claude.
MCP Adapter, étape 1 : vérifier les prérequis
WordPress 6.9 ou plus récent — l’Abilities API fait partie du cœur, il n’y a donc pas d’extension Abilities API à installer (les anciennes versions de l’adapter en demandaient une ; ce n’est plus pris en charge). PHP 7.4 ou plus récent. Des permaliens « jolis » : avec Réglages → Permaliens sur « Simple », l’adresse REST de l’adapter ne répond pas.
Pour un site distant, il faut aussi HTTPS : WordPress ne propose les mots de passe d’application qu’en HTTPS (ou sur un site marqué comme environnement local), et la connexion distante s’authentifie avec l’un d’eux.
MCP Adapter, étape 2 : le télécharger et l’installer
Avec WP-CLI, une commande télécharge depuis GitHub la dernière version stable et l’active — l’adresse ci-dessous pointe toujours vers la release que GitHub marque Latest. Lancez-la d’abord sur la préproduction, comme les étapes WP-CLI plus haut.
Sans WP-CLI : ouvrez la page Releases du projet sur GitHub, choisissez la release marquée Latest et, sous Assets, téléchargez mcp-adapter.zip. Ignorez la release nommée CI Artifacts en haut de la liste : c’est une préversion pleine de builds de test de pull requests, rien à installer. Puis, dans WordPress, allez dans Extensions → Ajouter une extension → Téléverser une extension, choisissez le zip, cliquez sur Installer maintenant puis sur Activer l’extension.
Utilisez la 0.6.1 ou plus récente, jamais la 0.6.0 : le zip de cette version pouvait provoquer une erreur fatale lors d’un chargement de page normal dès qu’une autre extension vérifiait la présence de WP-CLI, et la 0.6.1 n’existe que pour corriger cela. Pour mettre à jour plus tard, relancez la même commande avec --force, ou téléversez le zip plus récent de la même façon. Les développeurs d’extensions qui embarquent l’adapter peuvent le requérir avec Composer (composer require wordpress/mcp-adapter, avec le Jetpack Autoloader) ; pour le faire tourner sur un site, l’extension est la voie la plus simple.
# install and activate the latest stable release (0.6.1 on 1 Oct 2026) wp plugin install https://github.com/WordPress/mcp-adapter/releases/latest/download/mcp-adapter.zip --activate # later: update to a newer release wp plugin install https://github.com/WordPress/mcp-adapter/releases/latest/download/mcp-adapter.zip --force
MCP Adapter, étape 3 : confirmer qu’il fonctionne
L’extension crée son serveur par défaut dès qu’elle est active. wp mcp-adapter list doit afficher mcp-adapter-default-server, dont l’adresse est /wp-json/mcp/mcp-adapter-default-server sur votre site. Dans wp-admin, MCP Adapter apparaît comme active sous Extensions → Extensions installées.
Si l’adresse répond par une 404, vérifiez d’abord les permaliens. Si elle répond que vous n’êtes pas connecté, le serveur tourne : il ne parle qu’aux utilisateurs connectés, ce qui est l’étape suivante.
wp plugin status mcp-adapter wp mcp-adapter list # → mcp-adapter-default-server, at /wp-json/mcp/mcp-adapter-default-server
MCP Adapter, étape 4 : un utilisateur dédié et un mot de passe d’application
Ne connectez pas votre propre compte administrateur. Créez pour l’assistant un utilisateur avec le rôle le plus bas qui suffit — Éditeur pour le contenu, Administrateur seulement s’il doit vraiment gérer les extensions —, car tout ce que fait l’assistant s’exécute avec les droits de cet utilisateur.
Donnez ensuite à cet utilisateur un mot de passe d’application : dans wp-admin, ouvrez Comptes, modifiez l’utilisateur, trouvez Mots de passe d’application, saisissez un nom comme « Claude » et cliquez sur Ajouter un nouveau mot de passe d’application. WordPress ne l’affiche qu’une fois ; copiez-le à ce moment-là. Vous pouvez le révoquer au même endroit à tout moment, ce qui déconnecte l’assistant sans toucher au reste.
# a user just for the assistant, with only the role it needs wp user create ai-editor ai-editor@example.com --role=editor # its Application Password (printed once) wp user application-password create ai-editor "Claude" --porcelain
MCP Adapter, étape 5 : connecter Claude Code
Claude Code avec le site sur la même machine : Claude démarre lui-même l’adapter via WP-CLI, connecté comme l’utilisateur indiqué avec --user (STDIO, sans mot de passe).
Claude Code avec un site distant, ou l’application de bureau de Claude : les deux passent par @automattic/mcp-wordpress-remote, un petit proxy d’Automattic qui tourne sur votre ordinateur (il faut Node.js) et parle au site en HTTPS avec le mot de passe d’application de l’utilisateur.
# Claude Code, site on this machine (STDIO through WP-CLI) claude mcp add wordpress -- wp --path=/var/www/html mcp-adapter serve --server=mcp-adapter-default-server --user=ai-editor # Claude Code, remote site (HTTPS through Automattic's proxy; needs Node.js) claude mcp add \ -e WP_API_URL=https://example.com/wp-json/mcp/mcp-adapter-default-server \ -e WP_API_USERNAME=ai-editor \ -e WP_API_PASSWORD="xxxx xxxx xxxx xxxx xxxx xxxx" \ wordpress -- npx -y @automattic/mcp-wordpress-remote@latest
MCP Adapter, étape 6 : connecter l’application de bureau de Claude
Dans l’application de bureau, ouvrez Settings → Developer → Edit Config, ajoutez le bloc ci-dessous à claude_desktop_config.json et redémarrez Claude. Le mot de passe y est en clair : gardez ce fichier sur votre propre machine.
{
"mcpServers": {
"wordpress": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://example.com/wp-json/mcp/mcp-adapter-default-server",
"WP_API_USERNAME": "ai-editor",
"WP_API_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx"
}
}
}
}MCP Adapter, étape 7 : ce que Claude peut faire une fois connecté
Claude voit trois outils du serveur par défaut : mcp-adapter/discover-abilities liste ce que le site propose, mcp-adapter/get-ability-info décrit une capacité et mcp-adapter/execute-ability l’exécute. Les capacités sont privées par défaut : seules celles qu’une extension marque comme publiques (meta.public) apparaissent, et chacune vérifie quand même les droits de l’utilisateur au moment de s’exécuter.
Ce que l’assistant peut faire dépend donc de vos extensions : un site neuf expose peu de chose, et l’aperçu développeur de WooCommerce ajoute produits et commandes. Demandez d’abord à Claude de lister les capacités, pour que vous sachiez tous deux ce qu’il peut toucher — et après chaque modification, lancez vos moniteurs Relvato dans la même conversation, exactement comme dans le parcours WP-CLI plus haut.
Avec l’extension Relvato (1.42.0 ou plus récente) sur le site, discover-abilities liste aussi celles de Relvato : relvato/get-site-status, relvato/list-monitors, relvato/get-fix-brief et relvato/run-monitors. Elles demandent un compte administrateur ; avec l’utilisateur Éditeur de l’étape 4, elles restent donc cachées, et le connecteur Relvato de l’étape 1 sert alors pour cette boucle. Ce que fait chacune est expliqué dans la doc sur l’API Abilities de WordPress.
Des garde-fous qui comptent plus que le prompt
Un assistant est exactement aussi sûr que le compte avec lequel il agit. Commencez par une copie de staging, faites une sauvegarde avant chaque changement, et utilisez un utilisateur SSH et WordPress qui n'a que les droits nécessaires à la tâche. Gardez les changements derrière une confirmation, et n'utilisez pas Claude Code avec les confirmations désactivées sur un site en production : sa documentation le réserve aux conteneurs et machines virtuelles isolés.
Vérifiez après chaque changement, pas seulement avant. WP-CLI peut vous dire qu'une mise à jour est terminée. Seul un test depuis l'extérieur vous dit que le site fonctionne toujours pour ceux qui l'utilisent. C'est pour cela que le connecteur Relvato est conçu pour cette boucle, et pourquoi il ne peut délibérément ni supprimer de données, ni approuver des changements de fichiers ou de scripts, ni toucher aux clés d'API : cela reste dans le tableau de bord Relvato, sous vos yeux. Ce qu'il peut modifier, comme valider un changement visuel, il ne le fait qu'après votre confirmation, et chacune de ces décisions peut être annulée.
Utiliser ChatGPT à la place de Claude
Relvato est aussi un plugin dans ChatGPT. Ajoutez-le depuis cette page et identifiez-vous sur Relvato. L'écran de consentement et les outils sont les mêmes que dans Claude : ChatGPT peut demander l'état d'un site (site_overview), lancer ses moniteurs tout de suite (trigger_scan), lire une exécution en détail (get_run) et obtenir le brief derrière un échec (get_fix_prompt).
Cela couvre la moitié de ce guide qui vérifie le site. ChatGPT n'a pas de terminal sur votre serveur : les étapes WP-CLI ci-dessus restent donc l'affaire de Claude Code ou de votre propre terminal. Faites le changement là, puis demandez à ChatGPT de lancer les moniteurs Relvato du site et d'expliquer ce qu'ils ont trouvé.
Où chaque assistant a sa place
| Assistant | Peut-il exécuter WP-CLI ? | Connecteur Relvato | Idéal pour |
|---|---|---|---|
| Claude Code (terminal ou application de bureau) | Oui, en local ou via SSH | Oui : claude mcp add, ou vos connecteurs Claude | Mises à jour et maintenance avec un test après chaque étape |
| Application de bureau Claude (chat) | Non ; utiliser le MCP Adapter via son fichier de configuration | Oui, depuis l'annuaire | Modifier contenu et réglages via les capacités que publient vos extensions |
| Claude (web, mobile) | Non, et il ne peut pas se connecter à un MCP Adapter auto-hébergé | Oui, depuis l'annuaire | Passer en revue l'état et les échecs d'un site en langage clair |
| ChatGPT | Non | Oui, comme plugin dans ChatGPT | Passer en revue l'état et les échecs d'un site en langage clair |
| Sites sur WordPress.com | Le connecteur MCP de WordPress.com | Oui | Contenus et réglages sur les forfaits payants de WordPress.com |
Claude et WordPress : FAQ
Claude peut-il exécuter WP-CLI sur mon site en production ?
Oui, avec Claude Code et un alias SSH pour le site. Commencez en staging, faites une sauvegarde avant les changements, gardez les mises à jour derrière une confirmation et vérifiez le site avec Relvato après chacune.
Quel Claude utiliser ?
Claude Code, dans le terminal ou l'application de bureau de Claude, pour faire des changements : il exécute WP-CLI et peut vérifier chaque étape avec Relvato. Claude sur le web ou sur mobile pour passer en revue l'état et les échecs d'un site en langage clair, avec le même connecteur Relvato depuis l'annuaire.
Puis-je utiliser ChatGPT au lieu de Claude ?
Pour vérifier le site, oui : Relvato est aussi un plugin dans ChatGPT, avec les mêmes outils une fois identifié. ChatGPT n'a pas de terminal sur votre serveur : faire les changements avec WP-CLI reste l'affaire de Claude Code ou de votre propre terminal.
Ai-je besoin du WordPress MCP Adapter ?
Pas pour Claude Code : WP-CLI en SSH suffit. Il vous le faut quand vous voulez que le chat de l’application de bureau de Claude modifie le site. Claude sur le web et sur mobile ne peut pas l’utiliser sur un site auto-hébergé, car il ne se connecte aux serveurs distants qu’en OAuth ; les sites sur WordPress.com peuvent utiliser le connecteur de WordPress.com.
Où télécharger le MCP Adapter ?
Sur la page Releases du projet WordPress/mcp-adapter sur GitHub : prenez mcp-adapter.zip dans la release marquée Latest (0.6.1 ou plus récente), pas dans la préversion CI Artifacts. Il n’est pas dans le répertoire de WordPress.org, il ne se met donc pas à jour tout seul : installez un zip plus récent quand il en sort un, ou utilisez wp plugin install avec l’adresse de la dernière release et --force.
Que peut modifier le connecteur Relvato ?
Il peut ajouter des sites et des moniteurs, modifier les plannings et lancer des scans, dans les limites de votre forfait. Avec votre accord, il peut aussi valider un changement visuel que vous confirmez comme voulu, ignorer un constat ou vous donner le correctif qu'une exécution propose, appliqué dans WordPress ; chacune de ces actions peut être annulée. Il ne peut rien supprimer, ni approuver des changements de fichiers ou de scripts, ni modifier qui reçoit vos alertes, ni voir de secrets. Tant que la propriété d'un site n'est pas prouvée, seuls ses moniteurs publics tournent, lancés à la main. Voir la page développeurs.
Est-il sûr de laisser une IA gérer WordPress ?
C'est aussi sûr que l'accès que vous lui donnez. D'abord le staging, une sauvegarde avant chaque changement, des utilisateurs SSH et WordPress aux droits minimaux, des confirmations pour tout ce qui modifie le site, puis un test depuis l'extérieur. Cette dernière partie, c'est ce que fait Relvato.
Sources
- WP-CLI Handbook — Running commands remotely
- WP-CLI — wp plugin update
- WP-CLI — wp core verify-checksums
- Claude Code — Permissions
- Claude Help Center — Custom connectors (remote MCP)
- WordPress — MCP Adapter
- WordPress Developer Blog — Introducing the WordPress MCP Adapter
- Make WordPress Core — Abilities API in WordPress 6.9
- WordPress.com — MCP
- WordPress — MCP Adapter releases
- MCP Adapter — Installation guide
- MCP Adapter — CLI usage and client configuration
- npm — @automattic/mcp-wordpress-remote
- Make WordPress Core — Application Passwords integration guide