WordPress MCP Server
Manage WordPress sites and create content with AI-generated featured images.
WordPress MCP Server 🚀
A Model Context Protocol (MCP) server that enables AI assistants to manage WordPress sites and create content with AI-generated featured images.
✨ Features
- 🌐 Multi-Site Management - Control multiple WordPress sites from a single interface
- 🤖 AI-Powered Content - Create articles with automatic featured image generation using DALL-E 3
- 📝 Smart Publishing - Full control over categories, tags, and post status
- 🔐 Secure Authentication - Uses WordPress Application Passwords for API access
- 🌍 International Support - Full Unicode support for Hebrew, Arabic, and other languages
- ⚡ Bulk Operations - Create multiple articles across different sites efficiently
🎯 Use Cases
- Content Agencies - Manage multiple client WordPress sites from one place
- Blog Networks - Publish content across multiple blogs simultaneously
- AI-Assisted Writing - Let AI help create content with relevant images
- Multilingual Publishing - Create content in any language with proper support
📋 Prerequisites
- Python 3.8 or higher
- Claude Desktop (or any MCP-compatible client)
- WordPress sites with REST API enabled
- OpenAI API key (for image generation)
🚀 Quick Start
1. Clone and Install
git clone https://github.com/seomentor/wpmcp.git
cd wpmcp
pip install -r requirements.txt
2. Configure WordPress Sites
Edit config/wordpress_sites.yaml:
sites:
- id: "site1"
name: "My WordPress Blog"
url: "https://myblog.com"
username: "your-username"
password: "your-app-password"
3. Set Up OpenAI (Optional, for images)
Create a .env file:
OPENAI_API_KEY=your-api-key-here
⚠️ Important Note: If you have an OPENAI_API_KEY already set in your Windows/Mac environment variables, it might override the one in .env. To avoid conflicts:
- Remove any existing
OPENAI_API_KEYfrom your system environment variables, OR - Add the API key directly to Claude Desktop config (see option 2 below)
4. Configure Claude Desktop
Add to Claude's config file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
Mac: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"wordpress": {
"command": "python",
"args": ["-m", "src.server"],
"cwd": "C:/path/to/wordpress-mcp-server"
}
}
}
Option 2: Include OpenAI API Key in Claude Config (Recommended if having issues)
{
"mcpServers": {
"wordpress": {
"command": "python",
"args": ["-m", "src.server"],
"cwd": "C:/path/to/wordpress-mcp-server",
"env": {
"OPENAI_API_KEY": "your-openai-api-key-here"
}
}
}
}
5. Start Using!
In Claude Desktop:
"Create an article about AI trends with an image on site1"
📚 Documentation
Available Commands
| Command | Description | Example |
|---|---|---|
| List sites | Show all configured sites | "Show me all WordPress sites" |
| Create article | Create a new post | "Create an article about Python on site1" |
| Create with image | Create post with AI image | "Create article with image about space on blog1" |
| Test connection | Verify site access | "Test connection to site1" |
| Get categories | List site categories | "Show categories on site1" |
| Get tags | List site tags | "Show tags on site1" |
WordPress Setup
-
Enable REST API (enabled by default in WordPress 5.0+)
-
Create Application Password:
- Go to Users → Profile → Application Passwords
- Generate new password
- Use in configuration
-
Required Permissions:
edit_posts- Create and edit postsupload_files- Upload mediamanage_categories- Create categoriesmanage_post_tags- Create tags
🎨 Image Generation
The server uses OpenAI's DALL-E 3 for automatic image generation:
- Automatic prompts - Generated from article title and content
- Smart filenames - SEO-friendly names based on content
- Direct upload - Images uploaded directly to WordPress media library
- Featured image - Automatically set as post featured image
Costs
- Standard quality: ~$0.04 per image
- HD quality: ~$0.08 per image
🔧 Advanced Configuration
Environment Variables
OPENAI_API_KEY=sk-... # OpenAI API key for image generation
Configuration Options
settings:
default_post_status: "draft" # draft, publish, private
default_post_format: "standard"
max_retries: 3
timeout: 30
🐛 Troubleshooting
Diagnostic Tool
Run the diagnostic script to check your setup:
python scripts/diagnose.py
This will check:
- Python version
- Required dependencies
- Configuration files
- Environment variables
- OpenAI API key conflicts
- Connection to OpenAI
Common Issues
"Server disconnected"
- Check Python installation
- Verify path in Claude config
- Check for error messages in terminal
"Image generation failed"
- Verify OpenAI API key is valid
- Check API credits
- Ensure proper .env file format
- Check if you have conflicting
OPENAI_API_KEYin system environment variables - Try adding the API key directly to Claude Desktop config (see Option 2 above)
"Authentication failed"
- Regenerate WordPress application password
- Check username is correct
- Verify site URL includes protocol (https://)
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- Model Context Protocol by Anthropic
- WordPress REST API team
- OpenAI for DALL-E 3
📞 Support
- 📧 Email: shay@seomentor.co.il
- 🐛 Issues: GitHub Issues
- 💬 Discussions: GitHub Discussions
Made with ❤️ by Shay Amos for WordPress developers, SEO`s and AI enthusiasts
Visit my website for more cool apps :) https://www.seomentor.co.il
Related Servers
Anki MCP Server
Create Anki flashcards using natural language by connecting to the AnkiConnect add-on.
AutoWP
Connects Claude to WordPress sites to create posts and manage sites using the WordPress REST API.
Summarize MCP
Converts text summaries to speech using OpenAI's Text-to-Speech API and plays them in the background.
MCP Server for Bring! Shopping
Interact with the Bring! shopping list API via a local MCP server.
Google MCP
A all-in-one Google Workspace MCP server
Sheet-Cello
A specialized Google Sheets integration server that allows the LLM to read, write, and manage spreadsheet data in real-time. This server supports cell-level manipulation, bulk range updates, and full worksheet retrieval, enabling the model to perform data analysis, logging, and automated reporting directly within Google Worksheets.If you have functions which take range value then first read the sheet and decide where user is asking to add data and define range by your own.Provides 46 tools for Gsheet
DeepL
Translate text using the DeepL API.
Context Savvy MCP
Transforms Claude Desktop into a memory-enabled AI assistant with persistent context, secure command execution, and intelligent workflow automation.
Date and Time MCP Server
Provides current date and time information, with support for various formats and timezone conversions.
Microsoft Planner by CData
A read-only MCP server enabling LLMs to query live Microsoft Planner data using the CData JDBC Driver.