WordPress MCP Server
Enable AI to manage WordPress sites like a professional developer
190+ tools for complete WordPress control
Video Demo : https://youtu.be/6hwMqXQFKN0
๐ Support This Project
If this project helps you, consider supporting its development:
Cryptocurrency Donation
| Select Coin | Select Network | Contract | Deposit Address |
|---|---|---|---|
| ๐ช USDT (TetherUS) | ๐ TRX (Tron TRC20) | Ending in jLj6t |
TBJBb7fKyRdhqmWETyZoNP4X98mPk2Jxrt |
Your support helps maintain and improve this project! ๐
WPMCP server gives AI agents complete control over WordPress sites. Connect it to Claude, Cline, or any MCP-compatible AI, and manage WordPress through natural language.
Key Capabilities:
- โ Content Management - Posts, pages, media, users, comments
- โ File System Access - Read and write theme/plugin files
- โ Theme Customization - Create child themes, modify styles, customize block themes
- โ Plugin Control - Activate, deactivate, and modify plugins
- โ Menu Management - Create menus, add items, assign to locations
- โ Custom Content Types - Manage post types and taxonomies
- โ Shortcodes & Cron - Execute shortcodes, schedule tasks
- โ Widget System - Manage sidebars and widgets
- โ Database Operations - Execute queries, manage options, inspect tables
- โ WooCommerce Integration - Products, orders, customers, inventory, reports
- โ Gutenberg Blocks - Block types, patterns, reusable blocks, templates
- โ Advanced SEO - Sitemaps, redirects, schema markup, Open Graph, analysis
- โ Security Monitoring - Site health, updates, integrity checks, debug logs
- โ Performance Optimization - Cache management, database optimization, image processing
- โ Backup & Migration - Full/partial backups, restore, export/import, cloning
- โ User Roles - Custom roles, capabilities, permissions, role management
- โ Complete Security - Multi-layer validation and automatic backups
Quick Start
1. Install
npm i -g [email protected]
2. Configure
Add to your MCP client (Claude Desktop, Cline, etc.):
{
"mcpServers": {
"wordpress": {
"command": "npx",
"args": ["-y", "[email protected]"],
"env": {
"WORDPRESS_URL": "https://your-site.com",
"WORDPRESS_USERNAME": "admin",
"WORDPRESS_PASSWORD": "your-app-password"
}
}
}
}
3. Install WordPress Plugin (Required)
- Install
wpmcp-plugin/wpmcp.zipto/wp-content/plugins/wpmcp-plugin/ - Activate via WordPress Admin โ Plugins โ "WordPress MCP Server Plugin"
- Ensure you have
edit_themesandedit_pluginscapabilities
What the plugin enables:
- File system operations (read, write, delete, copy, move)
- Shortcode execution
- Cron job management
- All advanced WordPress features
See wpmcp-plugin/README.md for detailed setup guide.
4. Use
"Create a child theme called 'My Custom Theme'"
"Activate Akismet plugin"
"Read the style.css file from my theme"
"Create a blog post about WordPress and publish it"
Available Tools (130+)
๐ See WPMCP_TOOLS.MD for complete detailed list of all 130 tools.
| Category | Tools | What You Can Do |
|---|---|---|
| Posts (15) | create, update, delete, search, schedule, publish, duplicate, bulk | Manage all blog content |
| Pages (4) | create, update, delete, hierarchy | Build site structure |
| Media (5) | upload, update, delete, featured images | Manage images and files |
| Users (4) | create, update, delete, roles | User management |
| Categories (4) | create, update, delete, hierarchy | Organize content |
| Tags (2) | create, get | Tag content |
| Comments (4) | create, update, delete, moderate | Manage discussions |
| Settings (4) | get, update site settings | Configure WordPress |
| SEO (2) | meta description, focus keywords | Optimize for search |
| File System (8) | read, write, delete, copy, move | Edit any file |
| Theme Manager (13) | activate, child themes, theme.json, templates | Complete theme control |
| Plugin Manager (10) | activate, deactivate, read/write files | Full plugin control |
| Menu Manager (8) | create, add items, assign locations | Full navigation control |
| Custom Types (7) | get post types, taxonomies, manage terms | Advanced content types |
| Shortcodes (3) | list, execute, check existence | Shortcode system |
| Cron Jobs (5) | list, schedule, unschedule, run manually | Task scheduling |
| Widgets (6) | get sidebars, widgets, types, update | Widget management |
| Database (6) | execute queries, manage options, list tables | Database operations |
| WooCommerce (15) | products, orders, customers, inventory, coupons | E-commerce management |
| Gutenberg Blocks (12) | block types, patterns, reusable blocks, templates | Modern block editor |
| Security (7) | site health, updates, integrity, debug logs | Security monitoring |
| Performance (8) | cache, optimization, cleanup, image processing | Performance tuning |
What You Can Do
Content Management
"Create a blog post about AI and publish it"
"Upload an image and set it as featured image for post 5"
"Get all draft posts"
"Create a new page called 'About Us'"
Theme Customization
"Create a child theme of Twenty Twenty-Five"
"Read my theme's functions.php file"
"Add custom CSS to make headers blue"
"Get the theme.json configuration"
"List all files in my theme"
Menu Management Examples
// Create menu
{
"name": "Main Navigation",
"description": "Primary site menu"
}
// Add menu item
{
"title": "Home",
"url": "https://yoursite.com",
"menus": 3
}
// Get menu locations
// No parameters needed
// Assign menu to location
{
"location": "primary",
"menuId": 3
}
Plugin Management
"Show me all installed plugins"
"Activate the Contact Form 7 plugin"
"Read the main WooCommerce plugin file"
"Deactivate Hello Dolly"
"Check if Yoast SEO is installed"
Menu Management
"Create a new menu called 'Main Navigation'"
"Add a Home link to the menu"
"Get all registered menu locations"
"Assign the Main Navigation menu to primary location"
"Show me all menu items in the Main menu"
Custom Post Types & Taxonomies
"Show me all registered post types"
"Get details for the 'page' post type"
"Get all taxonomies"
"Show me all categories"
"Create a new category called 'Technology'"
Shortcodes
"List all registered shortcodes"
"Execute [gallery ids='1,2,3']"
"Check if 'contact-form' shortcode exists"
Cron Jobs & Scheduled Tasks
"Show me all scheduled cron jobs"
"Schedule a daily backup task"
"Run WordPress cron manually"
"Get available cron schedules"
Widgets
"Get all widget areas"
"Show me all available widget types"
"Get widgets in the sidebar"
"List inactive widgets"
File Operations
"Read style.css from my theme"
"Create a new custom.css file in my theme"
"Copy functions.php to functions-backup.php"
"Delete old-template.php with backup"
Security Features
All operations are secure:
- โ Only allowed directories (themes, plugins, uploads)
- โ Only safe file extensions (.php, .css, .js, etc.)
- โ Malware pattern detection
- โ PHP syntax validation
- โ Automatic backups before changes
- โ WordPress permission system
- โ File size limits (10MB)
WordPress Authentication
Self-Hosted WordPress:
- Install Basic Auth plugin
- Use your WordPress admin username and password
WordPress.com:
- Requires Business plan or higher
- Generate Application Password in Settings โ Security
Project Structure
src/tools/
โโโ posts.ts # 15 post management tools
โโโ pages.ts # 4 page tools
โโโ media.ts # 5 media tools
โโโ filesystem.ts # 8 file system tools
โโโ themes.ts # 13 theme management tools
โโโ plugins.ts # 10 plugin management tools
โโโ menus.ts # 8 menu management tools
โโโ all-features.ts # Users, categories, tags, comments, settings, SEO
filesystem-plugin/
โโโ wpmcp-filesystem.php # Required for file operations
Development
# Clone repository
git clone https://github.com/RaheesAhmed/wordpress-mcp-server.git
cd wordpress-mcp-server
# Install dependencies
npm install
# Build
npm run build
# Run
npm start
Testing
All features tested on live WordPress:
- โ 21/21 tests passed
- โ File operations working
- โ Theme management verified
- โ Plugin control confirmed
- โ Security validated
API Examples
Create Post
{
"title": "My Post",
"content": "<p>Content here</p>",
"status": "publish"
}
Create Child Theme
{
"parentTheme": "twentytwentyfive",
"childName": "My Custom Theme"
}
Activate Plugin
{
"plugin": "akismet/akismet"
}
Read Theme File
{
"theme": "mytheme",
"filePath": "functions.php"
}
Write File
{
"path": "wp-content/themes/mytheme/custom.css",
"content": "/* Custom styles */",
"createBackup": true
}
Contributing
- Fork the repository
- Create feature branch (
git checkout -b feature/name) - Commit changes (
git commit -m 'Add feature') - Push to branch (
git push origin feature/name) - Open Pull Request
License
MIT License - see LICENSE
๐ Support This Project
If you find this project valuable, consider supporting its continued development:
Cryptocurrency Donation
| Coin | Network | Contract Address | Deposit Address |
|---|---|---|---|
| ๐ช USDT (TetherUS) | ๐ TRX (Tron TRC20) | Ending in jLj6t |
TBJBb7fKyRdhqmWETyZoNP4X98mPk2Jxrt |
Copy Address:
TBJBb7fKyRdhqmWETyZoNP4X98mPk2Jxrt
Your contributions help keep this project active and growing! Thank you for your support! ๐
Built for AI-powered WordPress development ๐