MCP WordPress CrunchTools
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WORDPRESS_URL | Yes | WordPress site URL, e.g., https://example.com | |
| MCP_UPLOAD_DIR | No | Upload directory inside container (optional) | /tmp/mcp-uploads |
| WORDPRESS_USERNAME | Yes | WordPress username | |
| WORDPRESS_APP_PASSWORD | Yes | WordPress application password (e.g., xxxx xxxx xxxx xxxx) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| wordpress_get_site_infoA | Get WordPress site information. Returns site title, description, URL, timezone, and other settings. |
| wordpress_test_connectionA | Test connection to WordPress REST API. Verifies API credentials and returns connection status. |
| wordpress_list_postsC | List WordPress posts with filtering and pagination. |
| wordpress_get_postA | Get a single WordPress post by ID with full content. |
| wordpress_search_postsA | Search WordPress posts by keyword in title and content. |
| wordpress_create_postC | Create a new WordPress post. |
| wordpress_update_postC | Update an existing WordPress post. |
| wordpress_delete_postC | Delete or trash a WordPress post. |
| wordpress_list_revisionsB | List revisions for a WordPress post. |
| wordpress_get_revisionC | Get a specific revision of a WordPress post. |
| wordpress_list_categoriesC | List available WordPress categories. |
| wordpress_list_tagsC | List available WordPress tags. |
| wordpress_list_pagesC | List WordPress pages with filtering and pagination. |
| wordpress_get_pageA | Get a single WordPress page by ID with full content. |
| wordpress_create_pageC | Create a new WordPress page. |
| wordpress_update_pageC | Update an existing WordPress page. |
| wordpress_delete_pageC | Delete or trash a WordPress page. |
| wordpress_list_page_revisionsB | List revisions for a WordPress page. |
| wordpress_list_mediaC | List WordPress media items with filtering. |
| wordpress_get_mediaB | Get a single WordPress media item by ID. |
| wordpress_upload_mediaA | Upload a media file to WordPress from a local file path. The file is read directly from disk, avoiding large base64 payloads over the MCP protocol. Provide an absolute path to the file. CONTAINER NOTE: When running as a container, the file path refers to the container filesystem, not the host. Files must be placed in ~/.local/share/mcp-wordpress/uploads/ on the host (mounted to /tmp/mcp-uploads/ inside the container) to be accessible. |
| wordpress_update_mediaC | Update WordPress media item metadata. |
| wordpress_delete_mediaC | Delete a WordPress media item. |
| wordpress_get_media_urlB | Get the public URL for a WordPress media item. |
| wordpress_list_commentsC | List WordPress comments with filtering. |
| wordpress_get_commentB | Get a single WordPress comment by ID. |
| wordpress_create_commentC | Create a new comment on a WordPress post. |
| wordpress_update_commentC | Update an existing WordPress comment. |
| wordpress_delete_commentB | Delete or trash a WordPress comment. |
| wordpress_moderate_commentC | Moderate a WordPress comment by changing its status. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 30 tools
Tools are organized by resource (posts, pages, media, comments, revisions) with distinct list/get/search/create/update/delete actions, making selection straightforward. Minor overlap exists between wordpress_update_comment and wordpress_moderate_comment, and between get_post/search_posts/list_posts, but descriptions clarify their different scopes.
Every tool follows the same wordpress_verb_noun convention (wordpress_list_posts, wordpress_create_page, wordpress_delete_media, etc.). Consistent prefix and verb vocabulary throughout with no deviations in casing or structure.
30 tools is on the heavy side and pushes past the comfortable range, even though they map fairly cleanly onto six WordPress resources. The breadth is defensible for a full CMS surface but feels somewhat oversized.
Posts, pages, media, and comments all have near-complete create/read/update/delete lifecycles plus revisions, moderation, and media URL helpers. The notable gaps are categories and tags, which only support listing with no create/update/delete, and pages lack a get_revision counterpart.