WordPress MCP Server
Enables interaction with WordPress sites through the WordPress REST API, providing tools for creating, retrieving, and updating posts with support for different publication statuses.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@WordPress MCP Server create a new post titled 'Weekly Update' with status draft"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
WordPress MCP Server
A Model Context Protocol (MCP) server for WordPress integration, compatible with Windows, macOS, and Linux.
Overview
This MCP server enables interaction with WordPress sites through the WordPress REST API. It provides tools for creating, retrieving, and updating posts using JSON-RPC 2.0 protocol.
Related MCP server: WordPress MCP Server
Installation
Clone the repository
Install dependencies:
npm installBuild the project:
npm run buildConfiguration
Add the server to your MCP settings file with environment variables for WordPress credentials:
{
"mcpServers": {
"wordpress": {
"command": "node",
"args": ["path/to/build/index.js"],
"env": {
"WORDPRESS_SITE_URL": "https://your-wordpress-site.com",
"WORDPRESS_USERNAME": "your-username",
"WORDPRESS_PASSWORD": "your-app-password"
}
}
}
}The environment variables are:
WORDPRESS_SITE_URL: Your WordPress site URL
WORDPRESS_USERNAME: WordPress username
WORDPRESS_PASSWORD: WordPress application password
You can also provide these credentials in the request parameters if you prefer not to use environment variables.
Available Methods
create_post
Creates a new WordPress post.
Parameters:
siteUrl: (optional if set in env) WordPress site URL
username: (optional if set in env) WordPress username
password: (optional if set in env) WordPress application password
title: Post title
content: Post content
status: (optional) 'draft' | 'publish' | 'private' (default: 'draft')
get_posts
Retrieves WordPress posts.
Parameters:
siteUrl: (optional if set in env) WordPress site URL
username: (optional if set in env) WordPress username
password: (optional if set in env) WordPress application password
perPage: (optional) Number of posts per page (default: 10)
page: (optional) Page number (default: 1)
update_post
Updates an existing WordPress post.
Parameters:
siteUrl: (optional if set in env) WordPress site URL
username: (optional if set in env) WordPress username
password: (optional if set in env) WordPress application password
postId: ID of the post to update
title: (optional) New post title
content: (optional) New post content
status: (optional) 'draft' | 'publish' | 'private'
Security Note
For security, it's recommended to use WordPress application passwords instead of your main account password. You can generate an application password in your WordPress dashboard under Users → Security → Application Passwords.
Example Usage
Using environment variables:
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_post",
"params": {
"title": "My New Post",
"content": "Hello World!",
"status": "draft"
}
}Without environment variables:
{
"jsonrpc": "2.0",
"id": 1,
"method": "create_post",
"params": {
"siteUrl": "https://your-wordpress-site.com",
"username": "your-username",
"password": "your-app-password",
"title": "My New Post",
"content": "Hello World!",
"status": "draft"
}
}Requirements
Node.js 20.0.0 or higher
WordPress site with REST API enabled
WordPress application password for authentication
License
MIT License - See LICENSE file for details
Available Tools
3 toolscreate_postC
Create a new WordPress post
Inputs: content (required), title (required), password, siteUrl, +2 more.
get_postsC
Get WordPress posts
Inputs: page, password, perPage, siteUrl, +1 more.
update_postC
Update an existing WordPress post
Inputs: postId (required), content, password, siteUrl, +3 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose targeting different CRUD operations: create_post for creation, get_posts for retrieval, and update_post for modification. There is no overlap or ambiguity between these functions, making it easy for an agent to select the correct tool.
All tool names follow a consistent verb_noun pattern (create_post, get_posts, update_post) with no deviations in style or convention. This predictability enhances readability and usability for agents.
With only 3 tools, the set feels thin for a WordPress server, as it lacks delete_post and other common operations like managing pages or media. While the tools cover basic post CRUD, the scope is limited and may not support full agent workflows.
The tool surface is significantly incomplete for WordPress management. It includes create, get, and update for posts but omits delete_post, as well as tools for pages, media, users, or settings, leaving notable gaps that could cause agent failures in broader tasks.
Maintenance
Related MCP Connectors
WordPress MCP server: publish posts, AI images, SEO and full site management, self-hosted
Hosted WordPress MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
WordPress MCP server: generate SEO posts, AI images, autoblog & WooCommerce on your self-hosted site
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA server enabling seamless interaction between AI models and WordPress sites with secure, standardized communication using the WordPress REST API for comprehensive site management.557 npm161MIT
- AlicenseNot gradedqualityNot gradedmaintenanceA server that enables integration between Claude Desktop and WordPress, allowing for AI-assisted blogging through a Message Control Protocol implementation.MIT
- AlicenseNot gradedqualityCmaintenanceA local server that enables Claude or other MCP tools to manage WordPress posts and media via REST API.14 npmMIT
- AlicenseAqualityDmaintenanceMCP server for WordPress REST API that enables managing posts, pages, media, comments, categories, tags, and users through 20 tools.20MIT