En bref : le Model Context Protocol (MCP) ouvre une passerelle directe entre Claude, l’assistant IA d’Anthropic, et votre site WordPress. Une fois la connexion établie, vous pilotez votre blog en langage naturel : créer un article, programmer une publication, uploader une image à la une, lister vos catégories ou modifier un utilisateur. Ce guide détaillé montre comment installer le plugin Automattic/wordpress-mcp, contourner l’erreur Composer rencontrée à l’activation chez OVH et o2switch, puis configurer la liaison côté Claude Desktop et côté Claude Code.
Pourquoi connecter WordPress à une IA conversationnelle
Gérer un site WordPress, c’est multiplier les allers-retours entre l’éditeur Gutenberg, la médiathèque, les réglages de catégories, et parfois la base de données. Pour un dirigeant qui n’est pas développeur, chaque tâche demande quelques clics, un peu d’attention et beaucoup de temps cumulé sur l’année.
Le Model Context Protocol change la donne. Imaginé par Anthropic et publié en open source fin 2024, il établit un langage commun entre une IA et des outils externes. Concrètement, un serveur MCP expose des actions précises — lister des articles, créer un brouillon, uploader un fichier — que Claude peut déclencher quand vous le lui demandez en français.
Le plugin officiel Automattic/wordpress-mcp transforme votre WordPress en serveur MCP. À partir de là, Claude lit et écrit sur votre site via l’API REST, avec les droits du compte WordPress associé à un jeton d’authentification. Vous tapez « Crée un article de 800 mots sur la délivrabilité, programme-le pour mardi 9h, image à la une au choix dans la médiathèque » et l’assistant exécute la séquence complète.
Trois bénéfices se dégagent rapidement à l’usage :
- Le temps gagné sur les tâches répétitives : programmation d’articles, vérification des catégories, mise à jour de pages.
- L’unification des outils : la rédaction, la révision et la publication se font dans la même conversation, sans changer d’application.
- L’effet d’apprentissage : Claude voit l’historique de votre blog, comprend votre ton, et propose des contenus cohérents avec l’existant.
Ce dernier point n’est pas anodin. La majorité des dirigeants qui découvrent l’IA pour leur entreprise restent au stade de l’expérimentation. Pour aller plus loin, lisez notre guide des premiers pas concrets en IA pour PME qui pose les bases avant d’attaquer un cas d’usage technique comme celui-ci.
Ce qu’il vous faut avant de démarrer
Le plus simple reste de tout préparer avant de lancer la moindre commande.
- Un site WordPress en version 6.8 ou supérieure, hébergé chez n’importe quel prestataire (OVH, o2switch, Infomaniak, Hostinger…)
- Un accès administrateur au tableau de bord WordPress
- PHP 7.4 minimum, idéalement 8.2 (à vérifier dans Réglages → Site Health ou via votre cPanel)
- Un compte Claude actif : abonnement Claude Pro pour Claude Desktop, ou un compte avec Claude Code installé
- Un terminal SSH ou un Terminal cPanel pour la résolution éventuelle de l’erreur Composer décrite plus loin
- Node.js sur votre poste, si vous comptez utiliser le serveur MCP distant via npx (le cas standard)
Pas besoin d’être développeur. Pas besoin de savoir coder en PHP. Quelques manipulations en ligne de commande suffisent, et tout est documenté ci-dessous.
Installer le plugin wordpress-mcp sur votre site
Règle d’or : utilisez toujours la version compilée publiée dans les releases officielles. C’est le seul moyen d’éviter l’erreur Composer expliquée plus bas.
La méthode recommandée : le ZIP de release
- Rendez-vous sur la page des releases : github.com/Automattic/wordpress-mcp/releases
- Téléchargez le fichier
wordpress-mcp.zip(et nonSource code (zip)) de la dernière version stable - Dans votre admin WordPress, allez dans Extensions → Ajouter une nouvelle extension → Téléverser une extension
- Choisissez le ZIP, cliquez sur Installer maintenant, puis sur Activer
Le plugin s’active sans message d’erreur. Les dépendances PHP, le dossier vendor/ et l’autoload Composer sont déjà inclus dans le ZIP officiel. Cette version compilée est celle que l’équipe Automattic prépare spécifiquement pour la distribution. Vous gagnez du temps et vous évitez les manipulations en ligne de commande.
À retenir : sur la page des releases GitHub, ne confondez pas les deux téléchargements. Le wordpress-mcp.zip est le bon. Le Source code (zip) est l’archive du code brut, sans dépendances, qui provoquera l’erreur Composer.
Le piège de l’archive source : pourquoi vous tombez parfois sur l’erreur Composer
Si vous récupérez le plugin par git clone, ou en téléchargeant l’archive Source code (zip) depuis GitHub, ou encore en cliquant sur le bouton « Code → Download ZIP », vous obtenez la version wordpress-mcp-trunk (ou wordpress-mcp-main). C’est l’arborescence brute du dépôt, sans le dossier vendor/ qui regroupe les dépendances PHP.
À l’activation, WordPress affiche alors ce message d’erreur :
Please run composer install in the plugin directory:
/home/xxx/wp-content/plugins/wordpress-mcp-trunk/
Le plugin refuse de s’activer tant que les dépendances ne sont pas installées localement. La solution la plus rapide reste de revenir en arrière et de télécharger le ZIP de release plutôt que la source. Si vous tenez vraiment à passer par la branche de développement (par exemple pour tester une fonctionnalité non encore publiée), la suite explique exactement comment installer Composer selon votre hébergeur.
Résoudre l’erreur Composer à l’activation
L’erreur s’affiche parce que le plugin s’appuie sur des bibliothèques PHP (Firebase JWT, autoload Composer, etc.) qui ne sont pas embarquées dans la branche dev. Il faut donc lancer la commande composer install directement dans le dossier du plugin sur votre serveur.
Cas 1 : OVH Hébergement Performance (via SSH)
OVH n’installe pas Composer en standard, on va donc le télécharger en local dans le dossier du plugin.
Étape 1 — Activer SSH chez OVH
Connectez-vous à votre espace client OVH puis allez dans Web Cloud → Hébergements → votre hébergement → onglet FTP-SSH. Vérifiez que SSH est actif. Sur les offres Performance, c’est inclus par défaut. Notez votre login et le serveur (du type sshXX.clusterXXX.xxx.hosting.ovh.net).
Étape 2 — Se connecter en SSH
Depuis le Terminal de votre Mac ou Linux :
ssh votrelogin@ssh01.clusterxxx.xxx.hosting.ovh.net
Le mot de passe demandé est le même que celui de votre FTP/cPanel OVH.
Étape 3 — Aller dans le dossier du plugin
cd ~/path/wp-content/plugins/wordpress-mcp-trunk/
pwd
Chez OVH, ~/path/ est la racine de de l’hébergement à modifier selon votre votre installation, équivalent à public_html chez d’autres hébergeurs.
Étape 4 — Télécharger Composer
curl -sS https://getcomposer.org/installer | php
Vous devriez voir s’afficher : Composer (version X.X.X) successfully installed to: .../composer.phar. Le warning sur --enable-sigchild est normal et sans conséquence pour notre usage.
Étape 5 — Installer les dépendances
php composer.phar install --no-dev --optimize-autoloader
Le flag --no-dev exclut les dépendances de développement (tests unitaires, outils internes), inutiles en production. Le flag --optimize-autoloader génère un autoloader optimisé qui améliore légèrement les performances.
Étape 6 — Vérifier
ls -la vendor/
Vous devez voir le fichier autoload.php et un dossier par dépendance (firebase/, composer/, etc.).
Étape 7 — Activer le plugin
Retour dans l’admin WordPress → Extensions → activer le plugin. Le message d’erreur a disparu.
Bonus : installer Composer globalement sur votre compte OVH
Pour éviter de refaire le téléchargement à chaque nouveau plugin nécessitant Composer :
mkdir -p ~/bin
mv composer.phar ~/bin/composer
chmod +x ~/bin/composer
echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
Vous pouvez maintenant taper composer install directement depuis n’importe quel dossier de votre compte. Vérifiez avec composer --version.
Cas 2 : o2switch (via Terminal cPanel)
Bonne nouvelle : o2switch installe Composer nativement sur ses serveurs. Pas besoin de SSH ni de téléchargement, le Terminal intégré au cPanel suffit.
Étape 1 — Ouvrir le Terminal cPanel
Connectez-vous à votre cPanel o2switch (l’URL était dans votre mail de bienvenue). Dans la barre de recherche en haut, tapez « Terminal » et cliquez sur l’icône, qui se trouve dans la section Avancé. Acceptez l’avertissement éventuel. Une fenêtre noire s’ouvre dans le navigateur, déjà positionnée dans votre dossier home.
Étape 2 — Aller dans le dossier du plugin
cd ~/public_html/wp-content/plugins/wordpress-mcp-trunk/
pwd
Si vous gérez plusieurs sites, le chemin sera plutôt ~/public_html/votredomaine.fr/wp-content/plugins/.... Adaptez-le à votre arborescence.
Étape 3 — Lancer Composer
composer install --no-dev --optimize-autoloader
C’est tout, Composer est déjà disponible.
Étape 4 — Vérifier
ls -la vendor/
Étape 5 — Activer le plugin dans WordPress
Idem que pour OVH, retour dans l’admin pour activer le plugin.
Alternative o2switch : SSH classique
Si vous préférez le SSH pour un usage régulier, c’est aussi possible. Dans cPanel, cherchez « Autorisation SSH », ajoutez votre IP publique en whitelist, puis depuis votre Mac : ssh votre-user@votre-serveur.o2switch.net sur le port 22. La suite est identique.
Tableau récapitulatif OVH vs o2switch
| Étape | OVH Performance | o2switch |
|---|---|---|
| Composer pré-installé | Non | Oui |
| Accès recommandé | SSH (terminal Mac/Linux) | Terminal cPanel ou SSH |
| Racine WordPress | ~/domaine.com/ |
~/public_html/ |
| Commande d’install | curl ... php puis php composer.phar install |
composer install direct |
| Activation SSH | Inclus par défaut | Whitelist IP requise |
Pièges classiques à éviter
Version PHP incohérente. Vérifiez que la version PHP active correspond aux exigences du plugin. Chez OVH, votre prompt SSH indique généralement quelque chose comme php/8.2/production/stable64. Chez o2switch, allez dans MultiPHP Manager pour le confirmer.
Permissions du dossier vendor/. Si après composer install vous obtenez des erreurs WordPress de type « permission denied », lancez :
chmod -R 755 vendor/
Plugin mis à jour via Git. Si vous faites un git pull plus tard, refaites composer install dans la foulée. Un composer.json modifié implique de nouvelles dépendances à récupérer.
Le dossier vendor/ est dans .gitignore. C’est volontaire et standard. Il faut donc le générer manuellement après chaque clone ou téléchargement.
Mémoire PHP CLI insuffisante. Si Composer plante avec un message « memory exhausted » :
php -d memory_limit=-1 composer.phar install --no-dev --optimize-autoloader
Configurer les réglages généraux du plugin
Une fois le plugin activé, un nouvel item de menu apparaît dans la barre latérale WordPress : MCP. Avant de générer un jeton d’authentification, prenez deux minutes pour vérifier les réglages par défaut.

L’écran MCP → Settings propose six onglets : Settings, Authentication Tokens, Documentation, Tools, Resources, Prompts. Concentrez-vous sur le premier, qui regroupe les permissions accordées à Claude.
| Toggle | Recommandation | Pourquoi |
|---|---|---|
| Enable MCP functionality | Activé | C’est l’interrupteur principal. Sans cela, aucun appel MCP ne fonctionne. |
| Enable WordPress Features Adapter | Désactivé par défaut | Demande l’installation du plugin WordPress Feature API. À activer plus tard si besoin. |
| Enable Create Tools | Activé | Autorise Claude à créer articles, pages, médias, catégories. |
| Enable Update Tools | Activé | Autorise Claude à modifier les contenus existants. |
| Enable Delete Tools | Désactivé | À laisser fermé sauf usage très contrôlé. Une suppression mal formulée détruit du contenu. |
| Enable REST API CRUD Tools (EXPERIMENTAL) | Désactivé | Fonctionnalité expérimentale, sujette à changement. À éviter en production. |
Le bon réflexe pour démarrer : Create + Update activés, Delete désactivé. Vous pourrez toujours réactiver Delete ponctuellement quand vous aurez besoin d’un grand ménage. La logique ressemble à celle d’un tiroir-caisse : on autorise ce qui sert tous les jours, on garde une clé pour les opérations rares.
Sauvegardez les réglages, puis passez à la génération du jeton.
Générer le JWT Token d’authentification
Maintenant que les réglages sont posés, il faut générer un jeton d’authentification (JWT Token) qui permettra à Claude de prouver son identité auprès de votre site.
- Dans l’admin WordPress, ouvrez le menu MCP dans la barre latérale
- Cliquez sur l’onglet Authentication Tokens
- Cliquez sur Generate new token
- Donnez-lui un nom explicite (« Claude Desktop Mac », « Claude Code laptop »)
- Choisissez une durée de validité raisonnable (30 jours par exemple)
- Cliquez sur Generate
Le jeton s’affiche une seule fois. Copiez-le immédiatement dans un gestionnaire de mots de passe sécurisé. Si vous le perdez, vous devrez en générer un nouveau.
Quelques précautions importantes. Ne stockez jamais ce jeton dans un dépôt Git public. Ne le mettez pas dans un email en clair. Ne le partagez avec personne, c’est l’équivalent d’un mot de passe administrateur. Le jeton porte les droits du compte qui l’a généré, donc privilégiez un compte WordPress dédié avec uniquement les droits nécessaires (par exemple un compte Éditeur si vous ne voulez pas que Claude puisse modifier les utilisateurs).
Configurer Claude Desktop
Claude Desktop est l’application de bureau pour Mac et Windows. Sa configuration se fait dans un fichier JSON unique.
Localisation du fichier de configuration
- Mac :
~/Library/Application Support/Claude/claude_desktop_config.json - Windows :
%APPDATA%\Claude\claude_desktop_config.json
Sur Mac, le plus simple est d’ouvrir Claude Desktop, d’aller dans Réglages → Développeur → Modifier la configuration. Le fichier s’ouvre automatiquement dans votre éditeur par défaut. S’il n’existe pas encore, créez-le.
Contenu à coller
{
"mcpServers": {
"wordpress-webfr": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://votre-site.com/",
"JWT_TOKEN": "VOTRE_TOKEN_ICI"
}
}
}
}
Remplacez votre-site.com par votre nom de domaine et VOTRE_TOKEN_ICI par le jeton récupéré à l’étape précédente. Le nom wordpress-webfr est libre, choisissez ce qui vous parle (par exemple wordpress-monblog).
Si vous gérez plusieurs sites WordPress, ajoutez simplement plusieurs entrées dans la section mcpServers :
{
"mcpServers": {
"wordpress-blog-pro": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://blog-pro.com/",
"JWT_TOKEN": "TOKEN_BLOG_PRO"
}
},
"wordpress-vitrine": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://site-vitrine.fr/",
"JWT_TOKEN": "TOKEN_VITRINE"
}
}
}
}
Redémarrer Claude Desktop
Sauvegardez le fichier, puis quittez complètement Claude Desktop. Sur Mac, faites Cmd+Q ou clic droit sur l’icône du dock puis « Quitter ». Sur Windows, fermez via l’icône de la barre des tâches. Une simple fermeture de fenêtre ne suffit pas : Claude continue de tourner en arrière-plan et ne rechargera pas la nouvelle configuration.
Relancez Claude Desktop. Au démarrage, vous devriez voir une petite icône d’outil ou un indicateur de serveur MCP connecté. Tapez « Liste mes catégories WordPress » pour vérifier que la connexion fonctionne.
Configurer Claude Code (CLI)
Claude Code est l’outil en ligne de commande, idéal pour les développeurs et pour automatiser des publications. Sa configuration MCP fonctionne à trois niveaux différents.
Les trois scopes de configuration
| Scope | Stockage | Partage |
|---|---|---|
local (par défaut) |
~/.claude.json sous le chemin du projet |
Privé, non versionné |
project |
.mcp.json à la racine du projet |
Partagé avec l’équipe via Git |
user |
~/.claude.json (global) |
Disponible dans tous vos projets |
Pour gérer un seul site WordPress depuis tous vos projets, le scope user est pratique. Pour un projet de publication automatisée dédié, le scope project (le fameux .mcp.json) est idéal car il documente clairement la connexion attendue.
Création du fichier .mcp.json au niveau projet
À la racine de votre projet (par exemple ~/Sites/mon-projet-wordpress/), créez un fichier nommé exactement .mcp.json :
{
"mcpServers": {
"wordpress-monsite": {
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://monsite.com/",
"JWT_TOKEN": "VOTRE_TOKEN_ICI"
}
}
}
}
Le format est strictement identique à celui de Claude Desktop, c’est un avantage.
Vérifier le chargement du serveur MCP
Dans le terminal, à la racine de votre projet :
claude mcp list
Vous devriez voir apparaître wordpress-monsite avec son statut « connected ». Si le statut est « failed » ou « unknown », vérifiez trois choses :
- L’URL
WP_API_URLse termine bien par un slash/ - Le
JWT_TOKENn’a pas expiré (regardez la date de création dans WordPress) - Node.js est bien installé sur votre poste (
node --versiondoit renvoyer 18.x ou plus)
Ajouter un serveur via la commande CLI
Au lieu d’éditer le JSON à la main, vous pouvez aussi taper :
claude mcp add-json wordpress-monsite '{
"command": "npx",
"args": ["-y", "@automattic/mcp-wordpress-remote@latest"],
"env": {
"WP_API_URL": "https://monsite.com/",
"JWT_TOKEN": "VOTRE_TOKEN_ICI"
}
}'
Pour aller plus loin sur l’automatisation des tâches techniques, lisez notre guide complet pour planifier des tâches Claude Code qui montre comment combiner MCP et planification cron.
Cas d’usage concrets pour un dirigeant
Une fois la liaison établie, voici sept usages testés qui donnent une idée du potentiel.
1. Créer un article de blog en brouillon
« Rédige un article de 800 mots sur la gestion de la trésorerie en TPE, ton conversationnel-expert, structure avec des H2 et H3, sauvegarde en brouillon avec la catégorie Trésorerie et financement. »
Claude rédige, structure, applique la catégorie et place l’article en brouillon. Vous le relisez tranquillement avant de publier.
2. Programmer une publication
« Programme cet article pour mardi prochain à 9h, et ajoute un extrait personnalisé pour le partage social. »
L’assistant passe le statut en future avec la date ISO, et remplit le champ excerpt.
3. Auditer le contenu existant
« Liste les 20 derniers articles publiés avec leur date, leur statut et le nombre de mots. »
Très utile quand on reprend la main sur un blog après une période d’inactivité.
4. Mettre à jour un article existant
« Récupère l’article id 412, ajoute une section FAQ de 5 questions à la fin, sauvegarde la version mise à jour. »
Claude lit le contenu, l’amende, et renvoie tout en respectant la structure Gutenberg.
5. Uploader une image et l’associer comme image à la une
Claude peut lire un fichier local, l’uploader via l’API REST WordPress, et la définir comme featured_media d’un article. La taille maximale dépend de la configuration PHP de votre hébergeur (upload_max_filesize), généralement entre 8 et 64 Mo.
6. Modifier les rôles utilisateurs
« Liste les utilisateurs WordPress, indique-moi ceux qui ont un rôle Admin alors qu’ils n’ont pas posté depuis 6 mois. »
Pratique pour faire le ménage dans les anciens comptes.
7. Gérer les catégories et tags
Création, fusion, renommage. Claude peut regrouper des articles dispersés dans plusieurs catégories proches en une seule, ce qui est précieux pour le SEO interne.
Bonnes pratiques de sécurité
Le JWT Token est une clé puissante. Quelques règles pour ne pas mettre votre site en danger.
Compte WordPress dédié. Créez un utilisateur spécifique pour MCP, avec un email distinct et un mot de passe long. Évitez d’utiliser votre compte admin principal. Donnez-lui le rôle minimum nécessaire (Éditeur si vous publiez seulement des articles, Auteur si vous voulez encore plus de cloisonnement).
Tokens à courte durée. 30 jours suffisent dans la plupart des cas. Programmez un rappel pour les renouveler. Un token court limite l’impact en cas de fuite.
Stockage sécurisé. Le fichier .mcp.json ou claude_desktop_config.json contient un secret. Sur un poste partagé, chiffrez votre disque. Si vous versionnez un projet contenant .mcp.json sur GitHub, ajoutez-le à .gitignore ou utilisez un fichier .env lu par le serveur MCP.
Surveillance des logs. Activez les logs WordPress (plugin WP Activity Log par exemple) pour détecter une utilisation anormale. Si vous voyez 500 articles créés en 30 secondes, le token a fuité.
Révocation rapide. Si vous suspectez une compromission, retournez dans MCP → Authentication Tokens et supprimez le jeton concerné. Le plugin invalidera immédiatement tous les appels suivants utilisant ce token.
FAQ
Faut-il un abonnement payant pour utiliser MCP avec WordPress ?
Le plugin Automattic/wordpress-mcp est gratuit et open source. Côté Claude, il vous faut soit un abonnement Claude Pro pour utiliser Claude Desktop avec MCP, soit un compte avec Claude Code installé. Le coût se situe au niveau de l’IA, pas du plugin.
Le plugin wordpress-mcp est-il compatible avec WooCommerce ?
Oui, dans la mesure où WooCommerce s’appuie sur l’API REST WordPress standard. Les produits, commandes et clients sont accessibles via les endpoints classiques. Pour des actions plus avancées spécifiques à WooCommerce, certains forks et plugins complémentaires existent.
Quel est l’impact sur les performances de mon site ?
Faible en usage normal. Le plugin ajoute quelques endpoints REST et gère la vérification du JWT. Les appels API fonctionnent comme n’importe quelle requête WordPress. L’impact se mesure surtout lors d’opérations massives (création de centaines d’articles), auquel cas il vaut mieux les espacer ou utiliser une plage horaire creuse.
Que faire si mon JWT Token est compromis ?
Connectez-vous à WordPress, allez dans MCP → Authentication Tokens, supprimez le token concerné. Toute requête utilisant ce token sera immédiatement rejetée. Générez-en un nouveau et mettez à jour votre fichier de configuration Claude.
Peut-on utiliser MCP sans Claude ?
Oui. Le Model Context Protocol est un standard ouvert. D’autres clients commencent à l’implémenter (Cursor, Continue, certains agents open source). Le plugin Automattic/wordpress-mcp est compatible avec n’importe quel client respectant le protocole.
Pourquoi MCP plutôt qu’un plugin de génération IA classique ?
Les plugins IA classiques génèrent du texte mais s’arrêtent souvent à la création de brouillons. MCP donne à Claude un accès complet à toutes les actions WordPress : programmation, médias, utilisateurs, catégories, recherche dans l’existant. Vous gardez la main, l’IA exécute. C’est une vraie différence de paradigme.

