WordPress

by emzimmer

93 stars
1.2k downloads
Not rated
GitHub

About

Integrates with WordPress REST API to enable secure content management, user administration, and site configuration tasks.

Details

Author
emzimmer
Repository
emzimmer/server-wp-mcp
GitHub stars
93
Downloads
1,187
License
MIT License
Categories
Productivity, Other, API, Developer Tools, Design, AI, Search, Security, Project Management, Infrastructure

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name WordPress
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "wordpress": {
            "env": {},
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Macos

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Windows

{
    "env": [],
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "cmd"
}

Manage WordPress sites via the REST API. Enables AI assistants to handle content, posts, and site configurations.

AModel Context Protocol (MCP)server that enables AI assistants to interact with WordPress sites through the WordPress REST API. Supports multiple WordPress sites with secure authentication, enabling content management, post operations, and site configuration through natural language.

- Multi-Site Support: Connect to multiple WordPress sites simultaneously
- REST API Integration: Full access to WordPress REST API endpoints
- Secure Authentication: Uses application passwords for secure API access
- Dynamic Endpoint Discovery: Automatically maps available endpoints for each site
- Flexible Operations: Support for GET, POST, PUT, DELETE, and PATCH methods
- Error Handling: Graceful error handling with meaningful messages
- Simple Configuration: Easy-to-maintain JSON configuration file

To install WordPress Server for Claude Desktop automatically viaSmithery:

npx -y @smithery/cli install server-wp-mcp --client claude

Maps all available REST API endpoints on a WordPress site.

{ "site": { "type": "string", "description": "Site alias (as defined in configuration)", "required": true } }

Returns:List of available endpoints with their methods and namespaces.

Executes REST API requests to WordPress sites.

{ "site": { "type": "string", "description": "Site alias", "required": true }, "endpoint": { "type": "string", "description": "API endpoint path", "required": true }, "method": { "type": "string", "enum": ["GET", "POST", "PUT", "DELETE", "PATCH"], "description": "HTTP method", "default": "GET" }, "params": { "type": "object", "description": "Request parameters or body data", "required": false } }

- Log in to your WordPress admin dashboard
- Go to Users → Profile
- Scroll to the "Application Passwords" section
- Enter a name for the application (e.g., "MCP Server")
- Click "Add New Application Password"
- Copy the generated password (you won't be able to see it again)

Note: Application Passwords require WordPress 5.6 or later and HTTPS.

Create a JSON configuration file (e.g.,wp-sites.json) with your WordPress site details:

{ "myblog": { "URL": "https://myblog.com", "USER": "yourusername", "PASS": "abcd 1234 efgh 5678" }, "testsite": { "URL": "https://test.example.com", "USER": "anotherusername", "PASS": "wxyz 9876 lmno 5432" } }

- URL: WordPress site URL (must include http:// or https://)
- USER: WordPress username
- PASS: Application password (spaces will be automatically removed)

The configuration key (e.g., "myblog", "testsite") becomes the site alias you'll use when interacting with the server.

Add to yourclaude_desktop_config.json:

{ "mcpServers": { "wordpress": { "command": "node", "args": ["path/to/server/dist/index.js"], "env": { "WP_SITES_PATH": "/absolute/path/to/wp-sites.json" } } } }

TheWP_SITES_PATHenvironment variable must point to the absolute path of your configuration file.

Once configured, you can ask Claude to perform various WordPress operations:

Can you show me all posts from myblog published in the last month?
Find all posts on testsite tagged with "technology" and "AI"
Show me draft posts from myblog that need review
Create a new draft post on testsite titled "The Future of AI" with these key points: [points]
Update the featured image on myblog's latest post about machine learning
Add a new category called "Tech News" to myblog
Show me all pending comments on myblog's latest post
Find comments from testsite that might be spam
List the most engaged commenters on myblog
What plugins are currently active on myblog?
Check if any plugins on testsite need updates
Tell me about the security plugins installed on myblog
Show me all users with editor role on testsite
Update user roles and permissions on testsite
What theme is currently active on myblog?
Check the permalink structure on testsite
Show me the current media library settings on myblog
Check if there are any broken links on myblog
Show me the PHP version and other system info for testsite
List any pending database updates on myblog

The server handles common errors including:

- Invalid configuration file path or format
- Invalid site configurations
- Authentication failures
- Missing or invalid endpoints
- API rate limiting
- Network errors

All errors are returned with descriptive messages to help diagnose issues.

- Keep yourwp-sites.jsonfile secure and never commit it to version control
- Consider using environment variables for sensitive data in production
- Store the config file outside of public directories
- Use HTTPS for all WordPress sites
- Regularly rotate application passwords
- Follow the principle of least privilege when assigning user roles

Interact with WordPress sites via the REST API. Manage content, posts, and site configurations for multiple sites using natural language.

Integrates AI assistants with WordPress sites using the WordPress REST API.

An MCP server for WordPress plugin audits

A free WordPress plugin that turns your site into a governed MCP server: 153 abilities that are all off until you switch them on, bound to a least-privilege WordPress user, with every call audited.

Connects Claude to WordPress sites to create posts and manage sites using the WordPress REST API.

Works the tickets of the self hosted Simple Support System helpdesk for Concrete CMS: read a ticket with its comments, reply, change its state, manage attachments.

Automate and manage WordPress sites using browser automation and API integration.

Interact with the Umbraco CMS Management API for administrative tasks.

Apify-hosted MCP server for Webflow with 22+ tools. Sites, CMS collections, pages, content management, and publishing. No local setup needed.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.