- Home
- MCP servers
- WordPress Standalone
WordPress Standalone
- javascript
5
GitHub Stars
javascript
Language
4 months ago
First Indexed
3 weeks ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"diazoxide-wp-standalone-mcp": {
"command": "npx",
"args": [
"-y",
"github:diazoxide/wp-standalone-mcp",
"start"
],
"env": {
"WP_SITES": "JSON configuration (optional)",
"WP_SITES_PATH": "/absolute/path/to/wp-sites.json"
}
}
}
}You run a WordPress Standalone MCP Server to bridge natural language assistants with WordPress via the REST API. It automatically discovers endpoints, creates tools for each endpoint, and lets you manage multiple sites securely from a single configuration. Use natural language queries to list, create, update, or delete content, manage users and media, and check site status across all configured WordPress sites.
How to use
Interact with your WordPress sites through your MCP client by describing the action you want in natural language. You can list posts, create new posts, update existing items, manage comments, and query site information across one or more WordPress installations. The server automatically exposes a tailored set of tools for each WordPress REST API endpoint, so your language requests map directly to endpoint actions without manual tool setup.
How to install
Prerequisites: You need Node.js (version 16 or newer) and npm or npx available on your system. You will also configure WordPress with an Application Password for API access.
# Install globally
npm install -g wp-standalone-mcp
# Or run directly with npx
npx github:diazoxide/wp-standalone-mcp start
Configuration and usage notes
Create a WordPress Application Password to allow API access. In WordPress, go to Users → Profile, create a new application password, and copy the generated password. You will use this password along with your WordPress username in your configuration.
Create a configuration file that lists your WordPress sites. Save it as wp-sites.json.
Configure your MCP client to run the server using the stdio approach shown here. This starts the MCP server via npx and points the client to the configuration file.
{
"wordpress": {
"command": "npx",
"args": ["-y", "github:diazoxide/wp-standalone-mcp", "start"],
"env": {
"WP_SITES_PATH": "/absolute/path/to/wp-sites.json"
}
}
}
Environment variables and configuration
Key environment variables used by the server include WP_SITES_PATH, which points to your WordPress sites configuration file. You can also supply WP_SITES directly as a JSON configuration. Keep sensitive configuration out of web-accessible directories and use HTTPS for all connections.
Security considerations
- Use WordPress Application Passwords for secure API access. - Enforce HTTPS for all connections. - Keep configuration files outside publicly accessible directories. - Follow the principle of least privilege by using accounts with only the necessary permissions.
Troubleshooting
If you encounter issues, verify that your configuration aliases match your usage, ensure the configuration file path is correct, confirm the application password is valid, and check that the WordPress REST API is accessible at the configured site URL.
If tools are not discovered, ensure REST API is enabled on the WordPress site and that the site URL is accessible at /wp-json. Some security plugins may block REST API requests; adjust settings accordingly.
Notes and tips
- Useful tips to remember when using the server:
- Tools are generated dynamically for each endpoint when the server starts.
- You can filter available tools using include/exclude patterns if you need to limit access.
- The server supports multiple WordPress sites from a single configuration.
Available tools
wordpress_get_v2_posts
List all posts for a WordPress site using the v2 posts endpoint.
wordpress_post_v2_posts
Create a new post on a WordPress site using the v2 posts endpoint.
wordpress_get_v2_posts_id
Retrieve a specific post by ID from a WordPress site.
wordpress_put_v2_posts_id
Update a specific post by ID on a WordPress site.
wordpress_delete_v2_posts_id
Delete a specific post by ID from a WordPress site.
wordpress_get_v2_media
List media items stored in a WordPress site.
wordpress_get_v2_users
List users of a WordPress site.