
Elementor WordPress
STDIOWordPress and Elementor MCP server for AI-powered content management and page building.
WordPress and Elementor MCP server for AI-powered content management and page building.
A powerful, modular Model Context Protocol (MCP) server for WordPress and Elementor. This server provides AI assistants with scalable capabilities—from basic content management to advanced page building—through an intelligent configuration system.
clear_elementor_cache
tool implementation (Issues #14, #15){content: [{type: 'text', text: '...'}]}
formats eliminated.local
, .dev
, .test
, localhost
)Choose your complexity level:
# Essential Mode (20 tools) - Perfect for beginners ELEMENTOR_MINIMAL_MODE=true npx wp-elementor-mcp # Standard Mode (32 tools) - Great for most users (default) npx wp-elementor-mcp # Advanced Mode (34 tools) - For power users ELEMENTOR_MCP_MODE=advanced npx wp-elementor-mcp # Full Mode (34 tools) - Everything enabled (requires Elementor Pro) ELEMENTOR_ENABLE_ALL=true npx wp-elementor-mcp
Mode | Tools | Best For | Capabilities |
---|---|---|---|
Essential | 20 | Learning, basic tasks | WordPress CRUD + Basic Elementor |
Standard | 32 | Most users | + Page building & element management |
Advanced | 34 | Power users | + Performance tools & advanced operations |
Full | 34 | Pro workflows | + Templates, global settings, revisions* |
*Pro features require Elementor Pro license
npx wp-elementor-mcp
git clone https://github.com/Huetarded/wp-elementor-mcp.git cd wp-elementor-mcp npm install npm run build
npm install -g wp-elementor-mcp wp-elementor-mcp
Ensure your WordPress user can:
{ "mcpServers": { "elementor-wordpress": { "command": "npx", "args": ["wp-elementor-mcp"], "env": { "ELEMENTOR_MCP_MODE": "standard", "WORDPRESS_BASE_URL": "https://yoursite.com", "WORDPRESS_USERNAME": "your-username", "WORDPRESS_APPLICATION_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx" } } } }
{ "name": "elementor-wordpress", "command": "npx", "args": ["wp-elementor-mcp"], "env": { "ELEMENTOR_MCP_MODE": "advanced", "WORDPRESS_BASE_URL": "https://yoursite.com", "WORDPRESS_USERNAME": "your-username", "WORDPRESS_APPLICATION_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx" } }
# Primary mode setting ELEMENTOR_MCP_MODE=essential # 21 tools - Basic WordPress + Elementor ELEMENTOR_MCP_MODE=standard # 33 tools - + Page building (default) ELEMENTOR_MCP_MODE=advanced # 35 tools - + Performance tools ELEMENTOR_MCP_MODE=full # 35 tools - + Pro features (stubs) # Quick mode shortcuts ELEMENTOR_MINIMAL_MODE=true # Same as essential mode ELEMENTOR_ENABLE_ALL=true # Same as full mode
WORDPRESS_BASE_URL=https://yoursite.com WORDPRESS_USERNAME=your-username WORDPRESS_APPLICATION_PASSWORD=xxxx xxxx xxxx xxxx
ELEMENTOR_ENABLE_TEMPLATES=true ELEMENTOR_ENABLE_PERFORMANCE=true
WordPress Operations:
get_posts
, get_post
, create_post
, update_post
get_pages
, create_page
, update_page
get_media
, upload_media
list_all_content
- Content discovery with Elementor statusBasic Elementor:
get_elementor_templates
, get_elementor_data
, update_elementor_data
get_elementor_widget
, update_elementor_widget
, get_elementor_elements
update_elementor_section
, get_elementor_data_chunked
backup_elementor_data
, clear_elementor_cache
Section & Container Creation:
create_elementor_section
- Create sections with columnscreate_elementor_container
- Create Flexbox containersadd_column_to_section
- Add columns to sectionsduplicate_section
- Clone sections with contentWidget Management:
add_widget_to_section
- Add widgets to containersinsert_widget_at_position
- Insert at specific positionsclone_widget
- Duplicate widgetsmove_widget
- Move widgets between containersElement Operations:
delete_elementor_element
- Remove elements safelyreorder_elements
- Change element ordercopy_element_settings
- Copy settings between elementsPage Analysis:
get_page_structure
- Get simplified page overviewPerformance:
clear_elementor_cache_by_page
- Page-specific cache clearingAdvanced Operations:
find_elements_by_type
- Search elements by typeCurrently implemented as stubs - requires Elementor Pro integration
Create a new WordPress page titled "About Us" with a professional layout
Create a new section in page ID 123 with 3 columns, then add a heading widget to the first column with the text "Welcome to Our Site"
Duplicate the hero section from page 45, then move the call-to-action button widget to the second column and change its text to "Get Started Today"
Update only the HTML widget with ID "abc123" in page 67 to show our latest promotion, without loading the entire page data
Show me all the text and heading widgets on page 89 so I can update the content
npm run build # Build TypeScript npm run start # Standard mode npm run start:essential # Essential mode npm run start:advanced # Advanced mode npm run start:full # Full mode npm run test:config # Test configuration system
Quick Server Test:
npm test # Basic connectivity test
Schema & Structure Validation (No WordPress required):
npm run test:validate # Validate all tool schemas
Full Functionality Test (WordPress credentials required):
npm run test:comprehensive # Test actual functionality
.env
fileComplete Test Report:
npm run test:summary # Detailed project analysis
Run All Tests:
npm run test:all # Complete test suite
.env
loading ✅├── src/
│ ├── index.ts # Main server implementation
│ └── server-config.ts # Configuration system
├── dist/ # Compiled output
├── CONFIGURATION.md # Complete config guide
└── test-simple.js # Configuration testing
⚠️ Having issues? See our comprehensive 📚 Documentation section above for complete guides.
The MCP server includes automatic SSL certificate handling for seamless local development:
.local
, .dev
, .test
, localhost
// New! List all posts and pages with Elementor status await mcp.listAllContent({ include_all_statuses: true }); // Debug specific post/page issues await mcp.getElementorData({ post_id: 123 });
# Test your WordPress connection curl https://yoursite.com/wp-json/wp/v2/posts
# Check your current configuration npm run test:config # Start with fewer tools ELEMENTOR_MINIMAL_MODE=true npx wp-elementor-mcp
# Old way - all tools always loaded npx [email protected] # New way - choose your level ELEMENTOR_MCP_MODE=standard npx wp-elementor-mcp
We welcome contributions! Please:
git clone https://github.com/Huetarded/wp-elementor-mcp.git cd wp-elementor-mcp npm install npm run dev # Watch mode
MIT License - see LICENSE file for details.
Transform your WordPress workflow with intelligent, modular MCP tools that scale with your needs!