Le WordPress MCP Adapter, extension officielle en version 0.6.1 depuis le 13 août 2026, relie un site WordPress 6.9 ou plus à Claude Desktop, Claude Code, Codex ou, sous conditions, ChatGPT, par WP-CLI en local ou par un proxy à distance. Seul, sur WordPress 7.1, il n’expose que les trois abilities de lecture du cœur : pour créer du contenu, il faut des abilities d’écriture.
Pas le temps ? Faites-le analyser par l'IA
Vous me lisez souvent ? Dites-le à Google
J'ajoute WPFormation à mes sourcesJanvier 2026. Je tombe sur le protocole MCP d’Anthropic et une question me traverse l’esprit : "Et si Claude pouvait parler directement à mon WordPress ?" Trois heures plus tard… Claude Desktop créait des brouillons, uploadait des images et auditait mes articles, sans que j’ouvre wp-admin une seule fois.
Huit mois plus tard, je travaille surtout dans Claude Code, et les 145 outils déclarés que je branche sur WordPress (341 articles publiés au 2 septembre 2026) viennent de claudeus-wp-mcp, un serveur communautaire qui passe par l’API REST. Pas de l’adapter officiel.
Entre-temps, WordPress 7.0 et 7.1 sont sortis, l’adapter a changé trois fois de version, et beaucoup de tutoriels décrivent encore un plugin archivé. Voici les deux chemins, l’adapter officiel et un serveur communautaire, relus à la source le 29 septembre 2026. Comptez une dizaine de minutes pour brancher Claude en lecture sur un site prêt ; l’écriture demande ensuite des abilities.
Ce guide est-il cité dans l’Aperçu IA de Google ?
Donnée mesurée le 29 septembre 2026 : sur la requête mcp wordpress, l’Aperçu IA observé en France sur ordinateur cite ce guide en tête de ses sept sources.
| Contrôle | Résultat observé |
|---|---|
| Aperçu IA présent | Oui |
| WPFormation cité | Oui, première source listée |
| Sources citées | 7 |
| Position moyenne Search Console (France, ordinateur) | 3,3 du 29 août au 27 septembre 2026 |
Vous voulez appliquer ce workflow à votre propre site ? Réservez un audit WordPress + IA.
MCP : le protocole qui change tout pour WordPress
Le Model Context Protocol (MCP) est un standard ouvert, publié par Anthropic en novembre 2024, qui relie une IA à des outils et à des données externes par un protocole unique. Au lieu de copier-coller des données entre votre site et l’IA, le client MCP interroge directement un serveur qui expose ces outils.
Concrètement, MCP fonctionne comme une prise USB-C pour l’intelligence artificielle. Un serveur MCP expose des "outils" (des fonctions exécutables) et des "ressources" (des données en lecture). Un client MCP (Claude Desktop, Claude Code, Codex, Cursor, VS Code) se connecte au serveur et utilise ces outils en temps réel.
Pour en interroger un sans rien installer, notre serveur MCP public est ouvert en lecture.
À ne pas confondre avec Claude Code comme outil de développement WordPress : le protocole MCP sert de pont entre votre WordPress et n’importe quel client IA compatible, alors que Claude Code est l’outil en ligne de commande d’Anthropic, orienté développement, qui fait partie de ces clients.
Depuis le 9 décembre 2025, Anthropic a confié MCP à l’Agentic AI Foundation, un fonds de la Linux Foundation. L’adapter publié négocie la révision 2025-11-25 ; la 2026-07-28 supprime les sessions HTTP.
Côté WordPress, le pont s’appelle le MCP Adapter : il transforme en outils MCP les "abilities" déclarées par le cœur, une extension ou votre code.
WordPress 7 et MCP : qu’est-ce qui a changé ?
WordPress ne parle toujours pas MCP tout seul. Le cœur fournit l’Abilities API depuis la 6.9 et, depuis la 7.1, un drapeau "public" qui décide de ce qu’un client voit. L’adapter reste une extension à installer, même sur WordPress 7.1.2, à jour depuis le 22 septembre 2026.
- WordPress 6.9 apporte l’Abilities API et ses premières abilities de lecture (site, utilisateur, environnement).
- WordPress 7.0 "Armstrong" (20 mai 2026) ajoute un client IA, un écran Connecteurs et des abilities côté navigateur.
- WordPress 7.1 "Mary Lou" (19 août 2026) crée le drapeau
meta.public, respecté par l’adapter depuis la 0.6.0, et l’actionwp_ability_invoked.
WordPress 7.2, attendu début décembre 2026, mène ses chantiers IA dans l’extension AI, "sans garantie" qu’ils arrivent dans cette version : l’adapter au répertoire officiel, MCP activable "avec un minimum de réglages", des essais de WebMCP, une identité propre pour les agents.

AI - v1.3.0 - ⭐ 4.6/5 (9 avis) - +50 000 installations - par WordPress.org
L’extension AI (WordPress 7.0 minimum) se dit expérimentale et range ses abilities génériques derrière un interrupteur à activer. Dans son code de développement, relu le 29 septembre 2026, ce ne sont que des lectures.
Ce qu’il vous faut avant de commencer
Avant de lancer l’installation, vérifiez ces prérequis :
- WordPress 6.9 minimum, 7.1 conseillé ;
- PHP 7.4 ou plus ;
- Claude Desktop ou un autre client MCP ;
- WP-CLI si le site tourne sur votre machine ;
- Node.js 22 pour un site distant (exigé par le README du proxy, même si son paquet npm accepte la 18) ;
- un compte WordPress dédié à l’agent, aux droits minimaux, plutôt que votre compte administrateur ;
- HTTPS et des permaliens autres que "Simple" pour un site hébergé.
Si votre site tourne chez un hébergeur mutualisé (O2switch, OVH, Infomaniak…), pas de panique : la méthode "site distant" se passe de WP-CLI sur le serveur.
Si vous n’avez pas encore de site, commencez par notre guide complet d’installation de WordPress. Je forme à WordPress depuis 2012, et brancher une IA sur un outil qu’on ne maîtrise pas fait perdre plus de temps qu’il n’en fait gagner : ma formation WordPress + IA sert à ça.
Étape 1 - Installer le MCP Adapter sur WordPress
Le MCP Adapter est l’extension officielle de l’initiative AI Building Blocks de WordPress, développée sur le dépôt GitHub WordPress/mcp-adapter. Il remplace l’ancien dépôt Automattic/wordpress-mcp, archivé.
Quelle version installer en septembre 2026 ?
La dernière version publiée est la 0.6.1, du 13 août 2026. Elle répare seulement le ZIP de la 0.6.0, sorti la veille, qui pouvait provoquer une erreur fatale. Si vous avez installé la 0.6.0 depuis ce ZIP, mettez à jour.
| Version | Date | Ce qui change |
|---|---|---|
| 0.4.0 | 4 décembre 2025 | Annotations readonly, destructive, idempotent traduites en readOnlyHint, destructiveHint, idempotentHint |
| 0.5.0 | 15 avril 2026 | Négociation de la révision MCP 2025-11-25 |
| 0.6.0 | 12 août 2026 | WordPress 6.9 exigé, drapeau public respecté, ZIP défectueux |
| 0.6.1 | 13 août 2026 | ZIP réparé, rien d’autre |
| 0.7.0 | Préparée le 23 septembre 2026, non publiée le 29 | Révision 2026-07-28, embarquement par Composer déprécié |
Installation classique (tout le monde)
Tant que l’adapter n’est pas dans le répertoire WordPress.org, tout passe par le ZIP publié sur GitHub :
- ouvrez la dernière version publiée ;
- téléchargez
mcp-adapter.zip; - dans wp-admin, Extensions → Ajouter → Téléverser une extension ;
- activez l’extension.
Avec WP-CLI, une seule commande :
wp plugin install https://github.com/WordPress/mcp-adapter/releases/latest/download/mcp-adapter.zip --activate
L’équipe de revue a approuvé l’entrée de l’adapter dans le répertoire le 24 septembre 2026, sans mise en ligne au 29. Ce jour-là, la commande deviendra :
wp plugin install mcp-adapter --activate
Une fois activé, l’adapter crée le serveur mcp-adapter-default-server et trois outils : mcp-adapter-discover-abilities liste les abilities exposées, mcp-adapter-get-ability-info en décrit une, mcp-adapter-execute-ability l’exécute. Côté WordPress, ces abilities s’écrivent avec une barre oblique (mcp-adapter/discover-abilities) ; le nom d’outil MCP la remplace par un tiret.
Installation via Composer (développeurs)
Oubliez le paquet wordpress/abilities-api : l’Abilities API est dans le cœur depuis la 6.9, et l’adapter 0.6.0 précise que l’extension autonome "n’est plus un chemin d’installation pris en charge". La commande actuelle :
composer require wordpress/mcp-adapter
Attention toutefois : la documentation déconseille d’embarquer l’adapter dans une extension (deux copies peuvent entrer en conflit), et la 0.7.0 déprécie cet usage. Une fois l’adapter au répertoire, l’en-tête Requires Plugins: mcp-adapter sera la voie recommandée.
Vous voyez Réglages → MCP ou un jeton JWT ?
Alors vous suivez un tutoriel qui décrit l’ancien plugin d’Automattic, wordpress-mcp, dont le dépôt GitHub est archivé. L’adapter n’ajoute aucune page de réglages et ne génère aucun jeton : il ouvre un point d’accès, et c’est le client qui s’authentifie.
Même l’Aperçu IA de Google, relevé le 29 septembre 2026 sur "mcp wordpress", mélange les deux. Autre piège : une variable WP_API_URL réduite au nom de domaine vise encore l’ancien point d’accès, /wp-json/wp/v2/wpmcp.
Rendre les Abilities accessibles à MCP
Par défaut, une ability WordPress est privée : le serveur MCP par défaut ne la montre pas. Elle devient visible quand elle porte meta.public à true (pour tous les clients, MCP compris) ou meta.mcp.public à true (pour MCP seulement). Mis à false, ce second drapeau retire à MCP une ability publique.
Sur WordPress 7.1, les trois abilities du cœur portent déjà meta.public, honoré par l’adapter depuis la 0.6.0 : elles sont exposées sans une ligne de code. Vérifié le 29 septembre 2026 sur un WordPress 7.1.2 jetable (WordPress Playground) avec l’adapter 0.6.1 : les trois abilities du cœur apparaissent à la découverte, et elles seules. Refaites le test au terminal, plus bas, sur votre propre site.
Sur 6.9 ou 7.0, le filtre wp_register_ability_args reste la méthode documentée, à placer dans un mu-plugin (Must Use plugin, chargé automatiquement) :
add_filter( 'wp_register_ability_args', function ( $args, $name ) {
$a_ouvrir = array(
'core/get-site-info',
'core/get-user-info',
'core/get-environment-info',
);
if ( in_array( $name, $a_ouvrir, true ) ) {
$args['meta']['mcp']['public'] = true;
}
return $args;
}, 10, 2 );
Ne vous arrêtez pas là. Le serveur par défaut n’exige que la capacité read, celle d’un simple abonné. Sur l’installation d’essai, un abonné ouvre la session, voit les trois abilities et lit son profil. Chaque ability garde heureusement son propre contrôle de droits : les deux autres lui répondent "Permission denied" (voir la partie sécurité).
Étape 2 - Connecter Claude Desktop (site local)
Si WordPress tourne sur votre machine (Local WP, MAMP, Docker, wp server…), la connexion passe par WP-CLI, en STDIO : la méthode la plus rapide, sans proxy ni mot de passe d’application.
Ouvrez le fichier de configuration de Claude Desktop (Settings → Developer → Edit config) :
macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
Windows : %APPDATA%\Claude\claude_desktop_config.json
Ajoutez ce serveur dans le bloc "mcpServers" :
{
"mcpServers": {
"wordpress": {
"command": "wp",
"args": [
"--path=/chemin/vers/votre/wordpress",
"mcp-adapter",
"serve",
"--server=mcp-adapter-default-server",
"--user=agent-ia"
]
}
}
}
Remplacez le chemin, et agent-ia par l’identifiant du compte dédié. Sans --user, WP-CLI tourne en anonyme et presque rien ne répond ; en administrateur, tout répond, ce que la documentation déconseille.
Quittez complètement Claude Desktop et relancez-le. Cliquez sur "Add files, connectors, and more", en bas à gauche de la zone de saisie, puis sur Connectors → Manage connectors : si "wordpress" y figure, vous êtes bon.
Rien n’apparaît ? Les journaux sont dans ~/Library/Logs/Claude sur macOS et dans %APPDATA%\Claude\logs sur Windows, avec mcp.log en premier suspect.
Étape 3 - Comment se connecter à un site distant (hébergé) ?
Quand le site est chez un hébergeur, le proxy @automattic/mcp-wordpress-remote fait le pont. Lancé par npx -y sur votre machine, sans installation globale, il traduit les échanges du client en requêtes HTTP vers l’adapter.
Configurer Claude Desktop
Voici la configuration documentée pour un mot de passe d’application (la version précédente de ce guide donnait de faux noms de variables) :
{
"mcpServers": {
"mon-site-wordpress": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://votre-site.fr/wp-json/mcp/mcp-adapter-default-server",
"WP_API_USERNAME": "agent-ia",
"WP_API_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
"OAUTH_ENABLED": "false"
}
}
}
}
WP_API_URL contient l’URL complète du serveur, pas le seul domaine. OAUTH_ENABLED vaut "false", sinon le proxy tente OAuth, son mode par défaut.
Créer un mot de passe d’application WordPress
Le mot de passe d’application, présent dans le cœur depuis WordPress 5.6, est un identifiant d’API distinct de votre mot de passe WordPress. Pour le générer :
- connectez-vous avec le compte dédié à l’agent, puis ouvrez Utilisateurs → Profil ;
- descendez jusqu’à "Mots de passe d’application" ;
- donnez-lui un nom parlant, par exemple "Claude Desktop MCP" ;
- cliquez sur "Ajouter un mot de passe d’application" ;
- copiez le mot de passe généré : vous ne le reverrez plus.

Hors environnement local, il ne circule que vers un site en HTTPS, et la feuille de route 7.2 prévoit un e-mail de notification à chaque création.
Révocable à tout moment : Ne confondez pas le mot de passe d’application avec votre mot de passe WordPress habituel. Il se révoque depuis le profil. Si votre poste ou votre client IA est compromis, vous révoquez ce seul mot de passe sans toucher au compte principal.
Premier test : interroger WordPress depuis Claude
Connexion faite, testons. Tapez simplement :
"Quelles sont les informations de mon site WordPress ?"
Claude appelle mcp-adapter-discover-abilities, choisit core/get-site-info, puis l’exécute par mcp-adapter-execute-ability. La réponse : nom, slogan, URL du site et de WordPress, e-mail d’administration, jeu de caractères, langue, version. Ni thème actif, ni extensions.
Autre surprise : core/get-site-info et core/get-environment-info (celle qui répond à "Quelle version de PHP utilise mon serveur ?") exigent manage_options, donc un compte administrateur.
Avec le compte agent-ia conseillé plus haut, demandez plutôt "Quel est mon rôle sur ce site ?" : core/get-user-info renvoie onze champs du profil connecté, dont l’identifiant, l’identifiant de connexion, le nom affiché, les rôles et la langue. Elle n’exige qu’une session ouverte.
Et "Crée un brouillon d’article" ? Avec l’adapter seul, rien ne se passe : les trois abilities du cœur sont en lecture seule. Il faut une ability d’écriture, apportée par une extension ou par votre code, ou un serveur qui passe par l’API REST (voir plus bas).
WooCommerce, par exemple, embarque sa propre intégration MCP, en aperçu développeur, derrière le drapeau mcp_integration.

WooCommerce - v11.1.2 - ⭐ 4.5/5 (4 825 avis) - +7 000 000 installations - par Automattic
Ses abilities listent, créent, modifient et suppriment des produits, listent les commandes, changent leur statut et y ajoutent des notes, sans ability dédiée aux clients ni aux statistiques. Son ancien point d’accès, /wp-json/woocommerce/mcp, est déprécié.
Pour tester le serveur sans client, en local :
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | wp mcp-adapter serve --user=agent-ia --server=mcp-adapter-default-server
À distance, l’adapter 0.6.1 impose une session (en-tête Mcp-Session-Id renvoyé par initialize). Voici le test documenté, adapté pour Bash :
SITE="https://votre-site.fr/wp-json/mcp/mcp-adapter-default-server"
AUTH="agent-ia:xxxx xxxx xxxx xxxx xxxx xxxx"
# 1. Ouvrir la session et récupérer son identifiant
SESSION_ID=$(curl -s -D - -X POST "$SITE" --user "$AUTH" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}' \
| grep -i 'mcp-session-id' | awk '{print $2}' | tr -d '\r')
# 2. Signaler que le client est prêt
curl -s -X POST "$SITE" --user "$AUTH" -H "Content-Type: application/json" \
-H "Mcp-Session-Id: $SESSION_ID" \
-d '{"jsonrpc":"2.0","method":"notifications/initialized"}'
# 3. Lister les outils
curl -s -X POST "$SITE" --user "$AUTH" -H "Content-Type: application/json" \
-H "Mcp-Session-Id: $SESSION_ID" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'

tools/list sur l’installation d’essai du 29 septembre 2026 (WordPress 7.1.2, adapter 0.6.1), filtrée par jq : l’outil d’exécution est déclaré destructif.Les trois outils doivent revenir. Rejoué tel quel sur l’installation d’essai du 29 septembre, ce test les renvoie bien. Sans en-tête de session, le serveur répond 400 ; avec une session inventée, 404. Une erreur 401 (rest_forbidden) désigne l’authentification, absente ou fausse. Une réponse correcte avec un client muet désigne le client.
Sur wpformation.com, mon pipeline de rédaction en 10 phases (image à la une, métadonnées SEO, maillage interne…) tourne dans Claude Code et écrit par l’API REST, pas par l’adapter.
Claude MCP : comment ajouter un serveur en ligne de commande ?
"Claude MCP" désigne la prise en charge du Model Context Protocol par les applications de Claude. Claude Desktop lit un fichier de configuration, Claude Code s’administre en ligne de commande avec claude mcp, et claude.ai accepte des serveurs distants sous forme de connecteurs personnalisés.
Pour ajouter un MCP dans Claude Code, une commande suffit ; tout ce qui suit -- est lancé tel quel :
# Site distant, par le proxy (portée locale par défaut)
claude mcp add --transport stdio wordpress \
--env WP_API_URL=https://votre-site.fr/wp-json/mcp/mcp-adapter-default-server \
--env WP_API_USERNAME=agent-ia \
--env "WP_API_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx" \
--env OAUTH_ENABLED=false \
-- npx -y @automattic/mcp-wordpress-remote@latest
# Site local, par WP-CLI
claude mcp add --transport stdio wordpress-local \
-- wp --path=/chemin/vers/wordpress mcp-adapter serve \
--server=mcp-adapter-default-server --user=agent-ia
Par défaut (--scope local), le serveur n’existe que pour vous dans le projet courant ; --scope user l’ouvre à tous vos projets, --scope project l’écrit dans un .mcp.json partagé, souvent versionné. Attention : jamais de mot de passe en clair dedans.
claude mcp listaffiche les serveurs et leur état ;claude mcp get wordpressdétaille un serveur ;claude mcp remove wordpressle retire ;claude mcp add-jsonajoute un serveur à partir d’un bloc JSON ;claude mcp add-from-claude-desktopimporte les serveurs de Claude Desktop (macOS et WSL) ;/mcp, dans une session, montre les serveurs et leurs outils.
Un serveur distant qui gère OAuth s’ajoute en HTTP, sans proxy. C’est le cas de WordPress.com :
claude mcp add --transport http wpcom https://public-api.wordpress.com/wpcom/v2/mcp/v1
La connexion OAuth 2.1 se lance ensuite depuis /mcp ou avec claude mcp login wpcom. Un WordPress auto-hébergé, sans OAuth, reste sur le proxy.
Sur claude.ai, un connecteur personnalisé se déclare par l’URL d’un serveur distant, OAuth en option (un seul en offre gratuite), et réapparaît dans Claude Code connecté au même compte. Aucun mot de passe n’y est prévu : j’en déduis qu’un WordPress auto-hébergé n’y entre pas directement.
Codex, ChatGPT, Cursor : comment brancher les autres clients ?
Je le dis sans détour : je ne travaille pas beaucoup avec Codex ou ChatGPT. Ce qui suit vient de la documentation d’OpenAI.
Codex range ses serveurs dans ~/.codex/config.toml (ou .codex/config.toml pour un projet de confiance), configuration partagée avec l’application de bureau ChatGPT. En une commande :
codex mcp add wordpress \
--env WP_API_URL=https://votre-site.fr/wp-json/mcp/mcp-adapter-default-server \
--env WP_API_USERNAME=agent-ia \
--env "WP_API_PASSWORD=xxxx xxxx xxxx xxxx xxxx xxxx" \
--env OAUTH_ENABLED=false \
-- npx -y @automattic/mcp-wordpress-remote@latest
Ou dans le fichier, avec un réglage que je vous recommande :
[mcp_servers.wordpress]
command = "npx"
args = ["-y", "@automattic/mcp-wordpress-remote@latest"]
default_tools_approval_mode = "writes"
[mcp_servers.wordpress.env]
WP_API_URL = "https://votre-site.fr/wp-json/mcp/mcp-adapter-default-server"
WP_API_USERNAME = "agent-ia"
WP_API_PASSWORD = "xxxx xxxx xxxx xxxx xxxx xxxx"
OAUTH_ENABLED = "false"
Le mode writes fait valider tout outil non marqué en lecture seule, donc chaque exécution par le serveur par défaut de l’adapter, lecture comprise. Contraignant, mais sain. codex mcp list vérifie le résultat.
Et ChatGPT dans le navigateur ? Il passe par le mode développeur (offres Plus, Pro, Business, Enterprise et Education), qui ne lit pas la configuration de Codex et exige un serveur distant avec OAuth, sans authentification, ou un mélange des deux.
Or l’adapter n’a pas d’OAuth officiel sur un site auto-hébergé (Jonathan Bossenger, auteur du billet de présentation, février 2026). J’en déduis que ChatGPT web ne s’y branche pas directement. WordPress.com, lui, a son propre MCP depuis octobre 2025, en OAuth 2.1, activé dans les réglages du compte.
Cursor reprend la configuration de Claude Desktop (Tools and MCP → Add Custom MCP), et VS Code lit .vscode/mcp.json avec la clé servers au lieu de mcpServers.
Adapter officiel ou serveur MCP communautaire ?
On a plutôt travaillé principalement avec Claude Code sur WPFormation. Et mon MCP quotidien, c’est Claudeus, effectivement, parce qu’il était beaucoup plus performant que l’adapter officiel. Et oui, bien sûr, je l’assume dans cette page.
Est-ce toujours le cas en septembre 2026 ? J’ai fait comparer claudeus-wp-mcp 3.0.2 et l’adapter 0.6.1, code et dépôts à l’appui. Plutôt qu’un vainqueur, il en sort deux voies.
| Critère | MCP Adapter 0.6.1 | claudeus-wp-mcp 3.0.2 |
|---|---|---|
| Où il tourne | Extension PHP sur le site | Node.js sur votre poste, via l’API REST |
| Sans rien ajouter | Trois lectures du cœur | 145 outils déclarés |
| Garde-fous côté serveur | Exposition et droits ability par ability | Les droits du compte WordPress |
| Lecture ou suppression signalée | Seulement avec un serveur personnalisé ; via le serveur par défaut, l’outil d’exécution est toujours annoncé comme destructif | Non |
| Transport | STDIO et HTTP | STDIO en pratique |
| Suivi | 31 contributeurs, version du 13 août 2026 | Tickets désactivés, version du 11 novembre 2025 |
Voie 1 : l’adapter officiel, pour ce qui doit durer
L’adapter est la voie standard : exposition choisie ability par ability, droits contrôlés dans chaque ability, annotations lisibles par les clients dès qu’un serveur personnalisé expose l’ability comme un outil. Et le projet vit (25 commits en un mois, révision 2026-07-28 prête dans la 0.7.0).
Son défaut : pour écrire, il faut des abilities. Voici l’exemple de la version précédente de ce guide, corrigé (une lecture, pour commencer sans risque) : sans catégorie, wp_register_ability() renvoie null et l’ability n’apparaît jamais, sans erreur visible hors WP_DEBUG :
add_action( 'wp_abilities_api_init', function () {
wp_register_ability( 'monsite/top-articles', array(
'label' => 'Articles les plus commentés',
'description' => 'Retourne les N articles publiés qui ont le plus de commentaires.',
'category' => 'site',
'input_schema' => array(
'type' => 'object',
'properties' => array(
'count' => array(
'type' => 'integer',
'minimum' => 1,
'maximum' => 20,
'default' => 5,
),
),
),
'execute_callback' => function ( $input ) {
$posts = get_posts( array(
'posts_per_page' => $input['count'] ?? 5,
'orderby' => 'comment_count',
'order' => 'DESC',
) );
return array_map( function ( $post ) {
return array(
'title' => get_the_title( $post ),
'url' => get_permalink( $post ),
'comments' => (int) $post->comment_count,
);
}, $posts );
},
'permission_callback' => function () {
return current_user_can( 'edit_posts' );
},
'meta' => array(
'public' => true,
'annotations' => array(
'readonly' => true,
'destructive' => false,
'idempotent' => true,
),
),
) );
} );
La catégorie site est fournie par le cœur. Avec un adapter antérieur à la 0.6.0, remplacez le drapeau public par 'mcp' => array( 'public' => true ).
Demandez ensuite "Quels sont mes 5 articles les plus commentés ?" : Claude découvre l’ability, puis l’exécute. Commandes WooCommerce du jour, état des sauvegardes WordPress, import CSV… tout ce que vous codez en PHP devient une question en français, et mon Quiz WordPress vous dira si vos bases suivent.
Voie 2 : claudeus-wp-mcp, 145 outils déclarés
claudeus-wp-mcp tourne sur votre poste et parle à l’API REST avec un mot de passe d’application : rien à installer sur le site, plusieurs sites dans un seul processus, un appel par action. Ce "beaucoup plus performant" tient surtout à cette couverture immédiate, sans dégradation de performance constatée.
{
"mcpServers": {
"claudeus-wp-mcp": {
"command": "npx",
"args": ["-y", "claudeus-wp-mcp"],
"env": {
"WP_SITES_PATH": "/chemin/absolu/vers/wp-sites.json"
}
}
}
}
Le fichier wp-sites.json décrit chaque site (URL, identifiant, mot de passe). Gardez l’alias default_test du modèle : le code de la 3.0.2 s’en sert comme site par défaut.
Le revers est net. Dernière version le 11 novembre 2025, tickets GitHub désactivés, aucune annotation : aucun client ne distingue une lecture d’une suppression. Et le consentement n’est pas implémenté, puisque promptUserConsent renvoie true dans dist/security/UserConsentManager.js, sous un "TODO".
Ajoutez le poids (86 831 caractères de définitions, de l’ordre de 21 700 jetons) et l’absence de transport HTTP utilisable : ni claude.ai, ni ChatGPT dans le navigateur.
Mon choix, et ses garde-fous
Comme tout a été cadré, je n’ai pas eu d’incident ni de frayeur. Un validateur contrôle chaque écriture d’article avant qu’elle parte vers WordPress, et la publication reste ma décision, jamais celle de l’agent.
Mon conseil pour la voie 2 : un compte dédié aux droits limités, et une validation côté client pour les suppressions, les utilisateurs et les extensions. Les deux voies se combinent : un serveur REST pour l’édition quotidienne, l’adapter pour ce qui doit durer ou être exposé à distance.
Qu’est-ce que je confie vraiment à Claude sur WordPress ?
Voici mes usages réels, pilotés depuis Claude Code avec claudeus-wp-mcp ou par des appels directs à l’API REST : aucun ne marche avec l’adapter seul, qui ne sait ni écrire ni même lister les articles.
1. Rédaction et publication d’articles
Le cas le plus évident. Je donne un brief à Claude (sujet, angle, mots-clés) et il crée un premier jet en brouillon directement dans WordPress : titre, contenu en blocs Gutenberg, catégorie, slug.
Ensuite, je relis, je corrige le ton, je vérifie les faits, la structure et les liens internes. Rien ne sort sans ma validation. Le même principe vaut pour créer une page WordPress directement depuis Claude.
2. Gestion des médias
"Uploade cette image comme image à la une de l’article X." Claude l’envoie dans la médiathèque et l’associe à l’article, texte alternatif en français compris. Un gain de temps absurde sur les tâches répétitives.
3. Audit de contenu en masse
"Analyse la structure Hn de tous mes articles publiés." Claude repère les H1 manquants, les sauts de niveau H2 → H4, les images sans texte alternatif, les liens cassés. Je décide ensuite de ce qui mérite une correction.
C’est ce que j’appelle déléguer à l’IA sans perdre le contrôle : l’IA fait le travail répétitif, vous validez les décisions. Pour un site tiers sans accès administrateur, le Détecteur WordPress donne sa pile technique avant même d’installer MCP.
4. Maintenance SEO par lots
Modifier 50 méta-descriptions, corriger des slugs en série, mettre à jour des liens internes après une refonte de structure. Une modification par lots se relit par lots, sinon la même erreur part 50 fois.
5. Développement de plugins sur mesure
Claude lit la structure de votre site (types de contenus, taxonomies, réglages) et génère du code PHP adapté à votre contexte réel. Ma méthode est détaillée dans créer un plugin WordPress avec l’IA sans coder.
Quand le chantier touche à l’architecture du site, je prends ce type de mission en charge en expertise WordPress et IA.
Sécurité : que peut faire l’agent chez vous ?
Un client MCP agit avec les droits du compte WordPress qu’il utilise. L’équipe de WordPress recommande, surtout en production, de lui dédier un rôle ou un utilisateur aux capacités limitées.
Avec l’adapter, plusieurs verrous se superposent, chacun capable de bloquer seul :
- l’exposition, sans laquelle une ability reste invisible ;
- le contrôle de droits de chaque ability (
permission_callback) ; - la capacité exigée par les outils du serveur par défaut,
readtant que vous ne la relevez pas ; - la permission de transport, qui filtre l’accès au point d’entrée HTTP avant toute ability.
Les filtres de capacité relèvent la barre ; un autre supprime le serveur par défaut :
// Exiger edit_posts pour découvrir et décrire, publish_posts pour exécuter
add_filter( 'mcp_adapter_discover_abilities_capability', function () {
return 'edit_posts';
} );
add_filter( 'mcp_adapter_get_ability_info_capability', function () {
return 'edit_posts';
} );
add_filter( 'mcp_adapter_execute_ability_capability', function () {
return 'publish_posts';
} );
// Ou, pour ne garder que vos serveurs personnalisés
add_filter( 'mcp_adapter_create_default_server', '__return_false' );
Collé en mu-plugin sur l’installation d’essai, ce bloc bloque bien l’abonné ("User lacks required capability: edit_posts") et laisse passer l’auteur. Mais ces filtres agissent à l’appel : l’abonné ouvre toujours la session et voit les trois outils. Pour fermer l’entrée elle-même, relevez aussi mcp_adapter_default_transport_permission_user_capability (read par défaut).
Exposer n’est pas autoriser : La note de développement de WordPress 7.1 est formelle. Le drapeau public contrôle ce qu’un client voit, il ne rend pas une ability exécutable sans autorisation et ne remplace pas son contrôle de droits.
Relisez aussi ce que vos abilities renvoient : core/get-site-info transmet l’e-mail d’administration, et tout résultat d’outil part chez le fournisseur du modèle.
Autre risque, plus sournois : l’injection d’instructions, qu’OpenAI rappelle à ses utilisateurs. Un agent qui lit vos commentaires lit aussi les consignes qu’un tiers y a glissées. Sur un serveur HTTP ouvert à Internet, l’équipe de WordPress conseille de rester en lecture.
Qui valide les actions dangereuses ? Le client, grâce aux annotations, quand elles lui parviennent. Via le serveur par défaut, il voit trois outils, et celui qui exécute est toujours annoncé comme destructif (destructiveHint à true) ; les annotations de chaque ability ne lui arrivent que comme données, dans la réponse de l’outil de description. ChatGPT traite tout outil sans readOnlyHint comme une écriture à confirmer, Codex aussi en mode writes, et Claude Code accepte des règles par outil (mcp__serveur__outil).
WordPress 7.1 ajoute l’action wp_ability_invoked au début de chaque exécution. Utile pour l’audit, à condition de ne pas journaliser les entrées à l’aveugle : elles peuvent contenir des identifiants.
Des chantiers restent ouverts : le transport HTTP ne valide pas encore l’en-tête Origin (ticket du 10 septembre 2026), et l’identité propre des agents n’existe que dans la feuille de route 7.2.
Une ability d’écriture viendra souvent d’une extension tierce : passez-la au vérificateur avant de lui ouvrir votre site.
Pourquoi la connexion échoue-t-elle ?
Voici les symptômes les plus parlants, avec leur cause probable.
| Symptôme | Cause probable | Correctif |
|---|---|---|
| 401, "User not authenticated" | Mot de passe refusé, site sans HTTPS, extension de sécurité qui filtre l’API REST | Nouveau mot de passe, HTTPS, route autorisée |
| 404 sur le point d’accès | URL réduite au domaine, adapter désactivé, permaliens "Simple" | URL complète, réactivation, autres permaliens |
| 400, "Missing Mcp-Session-Id header" | Client qui ne gère pas la session HTTP | Passer par le proxy |
| Aucune ability listée | Drapeau public absent, catégorie manquante, droits insuffisants | Exposer l’ability, déclarer la catégorie, vérifier le compte |
| Serveur STDIO coupé au bout d’une minute sous Claude Code | PHP applique son délai de 60 secondes aux lectures sur socket (ticket du 29 août 2026) | Contournement du ticket : PHP lancé avec -d default_socket_timeout=-1 (une reconnexion ne rend qu’une minute) |
| Erreurs "does not exist" à chaque requête sur 7.1 | Serveur par défaut créé trop tard, signalé avec la 0.5.0 et des copies embarquées dans d’autres extensions (ticket du 16 septembre 2026) | Passer en WordPress 7.1.2 (erreurs disparues sur un second site) ; un correctif fusionné le 23 septembre arrive avec la 0.7.0 |
MCP vs plugins IA WordPress : la vraie différence
Je vais être direct. Les extensions "IA" à bouton "Générer avec l’IA" envoient un bout de texte à une API et collent la réponse dans l’éditeur. Aucun contexte, aucune compréhension de votre site… longtemps, ce fut surtout de la déco.
Depuis WordPress 7.0, je nuance : le cœur embarque un client IA et l’extension AI s’appuie sur les abilities. La frontière passe entre un bouton isolé et un agent qui interroge votre site avant d’agir, comme je le raconte dans mon article sur la fin des plugins SEO premium grâce à MCP.
| Critère | MCP (Model Context Protocol) | Extension IA à bouton |
|---|---|---|
| Accès au site | Ce que le serveur expose : structure, contenus, réglages | Aucun : un texte envoyé à une API |
| Ce qu’il fait | Comprend le contexte, puis agit si un outil le permet | Colle une réponse dans l’éditeur |
| Standard | Ouvert, utilisable par tout client MCP | Propriétaire |
| Coût | Protocole et adapter gratuits, client IA payant à prévoir | Abonnement mensuel, le plus souvent |
Par où commencer : Si vous hésitez entre une extension IA payante et MCP, commencez par MCP en lecture seule. Le protocole et l’adapter sont gratuits et ouverts, seul le client IA peut se payer : vous verrez vite ce qui vous manque.
Titulaire du certificat Generative AI for Business de Jedha, je suis ces outils d’agents de près : je mettrai ce guide à jour à la sortie de la 0.7.0 et à son arrivée dans le répertoire. Le 29 septembre 2026, elle attendait encore sa bannière, son icône et son billet d’annonce.
Questions fréquentes
MCP fonctionne-t-il avec WordPress.com (hébergé) ?
Oui, nativement depuis octobre 2025, sans MCP Adapter : réglages du compte, menu MCP (wordpress.com/me/mcp), puis OAuth 2.1. Claude s’y branche comme connecteur, ChatGPT en mode développeur.
Mes données WordPress sont-elles envoyées à Anthropic ?
Ce qu’un outil renvoie entre dans la conversation, donc chez le fournisseur du modèle (Anthropic, ou OpenAI pour Codex et ChatGPT), même en local. La conservation relève de sa politique : n’exposez rien que vous ne mettriez pas dans une conversation.
Puis-je limiter les actions de Claude sur mon site ?
Oui : n’exposez que les abilities utiles, relevez par filtre la capacité read du serveur par défaut, utilisez un compte dédié aux droits limités et laissez les écritures sous validation côté client.
MCP est-il compatible avec d’autres IA que Claude ?
Oui, le protocole est ouvert (modelcontextprotocol.io) : Codex et ChatGPT sur ordinateur partagent une configuration, Cursor se branche comme Claude Desktop, VS Code avec la clé servers, et ChatGPT web exige OAuth ou aucune authentification.
Faut-il WP-CLI installé sur le serveur de production ?
Non : WP-CLI ne sert qu’en local, en STDIO. Pour un site hébergé, le proxy @automattic/mcp-wordpress-remote tourne sur votre machine et parle en HTTP à l’adapter.
Quel impact sur les performances de mon site ?
Chaque appel est une requête WordPress authentifiée, rien de plus. Avec claudeus-wp-mcp au quotidien sur wpformation.com, je n’ai constaté aucune dégradation de performance.
Le MCP Adapter est-il compatible avec WooCommerce ?
Oui, par son intégration MCP officielle, en aperçu développeur (drapeau mcp_integration) : produits (lister, créer, modifier, supprimer) et commandes (lister, changer le statut, annoter), sans ability dédiée aux clients ni aux statistiques.
Puis-je utiliser MCP avec Claude Code (CLI) au lieu de Claude Desktop ?
Oui : c’est même mon outil principal. claude mcp add ajoute un serveur en portée locale, utilisateur ou projet ; claude mcp add-from-claude-desktop reprend ceux de Claude Desktop (macOS et WSL).
Sources
Sources primaires, toutes lues le 29 septembre 2026 :
- dépôt WordPress/mcp-adapter ;
- proxy d’Automattic ;
- billet de présentation du MCP Adapter ;
- drapeau public de WordPress 7.1 ;
- Abilities API en 7.1 ;
- feuille de route 7.2 ;
- annonce de WordPress 7.0 ;
- MCP dans Claude Code ;
- connecteurs de Claude ;
- serveurs locaux dans Claude Desktop ;
- MCP dans Codex ;
- mode développeur de ChatGPT ;
- MCP de WordPress.com ;
- MCP de WooCommerce ;
- MCP à l’Agentic AI Foundation ;
- dépôt claudeus-wp-mcp.
Chaque mois, je passe 15 heures en veille WordPress. Vous, vous recevez un email de 3 minutes.
Sécurité, performance, SEO, nouveautés, IA : l'essentiel trié, vérifié et expliqué par un formateur WordPress depuis 2012 et fondateur de WPServeur.
Double opt-in : un email de confirmation à valider. Max 2 emails/mois. Données jamais revendues ni échangées. Désabonnement en 1 clic.

