create_postLABSCO SUMMARY
Draft-by-default is the detail that makes it safe to hand over.
Creating a post without a status produces a draft, which means an assistant that misunderstands an instruction produces something you can delete rather than something your readers already saw. Publishing is an explicit choice on the call. The per-call credentials are the other useful piece: the same server can write to several sites without a config file per site, though that does mean credentials appear in the request when you use it that way.
What it is
A small MCP server for WordPress publishing. Three operations cover the loop: create a post, read a page of posts, and update one you already made. Authentication uses a WordPress application password rather than the account password.
What you get
create_posttakes atitle,contentand an optionalstatusofdraft,publishorprivate, defaulting todraftget_postsreads posts withperPageandpage, defaulting to 10 per page starting at page 1update_postedits an existing post bypostId, changing title, content or status- Credentials can come from the environment or be supplied in the call itself, so one server can address more than one site
Requirements
Node.js 20.0.0 or higher, and a WordPress site with the REST API enabled. Clone, npm install, npm run build, then point the client at the built entry point. The three environment variables are WORDPRESS_SITE_URL, WORDPRESS_USERNAME and WORDPRESS_PASSWORD, which should hold an application password generated under Users > Security > Application Passwords rather than your login password.
Setup effort
Build from source — git clone https://github.com/Leonelberio/the-wordpress-mcp-server
USE CASES
Drafting a post from a conversation
Write it in the chat and have it land as a draft you review before publishing.
Publishing something you already agreed on
Set the status explicitly when the content is ready to go live.
Fixing a post after it went up
Update the title, body or status of an existing post by ID.
Seeing what is already on the site
Page through the existing posts before adding another one.
3 tools
Listed in project docs. Your client may show a different list.
get_postsupdate_postBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation.
Requires
- node on PATH
- Node.js 20.0.0 or later
- A WordPress site with the REST API enabled
- WORDPRESS_SITE_URL in your environment
- WORDPRESS_USERNAME in your environment
- WORDPRESS_PASSWORD (an application password) in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/Leonelberio/the-wordpress-mcp-server
cd the-wordpress-mcp-server
npm install
npm run buildMCP Clients
Any MCP client
{
"mcpServers": {
"wordpress": {
"command": "node",
"args": [
"<YOUR_PATH_TO_WORDPRESS_MCP_SERVER>/build/index.js"
],
"env": {
"WORDPRESS_SITE_URL": "<YOUR_WORDPRESS_SITE_URL>",
"WORDPRESS_USERNAME": "<YOUR_WORDPRESS_USERNAME>",
"WORDPRESS_PASSWORD": "<YOUR_WORDPRESS_PASSWORD>"
}
}
}
}