Skip to main content
Glama
crunchtools

MCP WordPress CrunchTools

by crunchtools

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

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

CapabilityDetails
tasks
{
  "list": {},
  "cancel": {},
  "requests": {
    "tools": {
      "call": {}
    },
    "prompts": {
      "get": {}
    },
    "resources": {
      "read": {}
    }
  }
}
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
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_postsA

List WordPress posts with filtering and pagination.

Args: status: Filter by status (publish, draft, pending, private, future) search: Search posts by keyword categories: Filter by category IDs tags: Filter by tag IDs page: Page number (default: 1) per_page: Results per page, max 100 (default: 10) orderby: Sort by field (date, title, id, modified) order: Sort direction (asc, desc)

Returns: List of posts with pagination info

wordpress_get_postA

Get a single WordPress post by ID with full content.

Args: post_id: Post ID

Returns: Full post details including content

wordpress_search_postsB

Search WordPress posts by keyword in title and content.

Args: keyword: Search keyword page: Page number (default: 1) per_page: Results per page (default: 10)

Returns: Search results

wordpress_create_postA

Create a new WordPress post.

Args: title: Post title content: Post content (HTML or block format) status: Post status - publish, draft, pending, private, future (default: draft) excerpt: Post excerpt slug: URL slug categories: List of category IDs tags: List of tag IDs featured_media: Featured image media ID date: Publication date (ISO 8601 for scheduling, e.g., 2024-12-25T10:00:00) post_format: Format - standard, aside, gallery, link, image, quote, status, video, audio

Returns: Created post details

wordpress_update_postA

Update an existing WordPress post.

Args: post_id: Post ID to update title: New title content: New content status: New status excerpt: New excerpt slug: New slug categories: New category IDs tags: New tag IDs featured_media: New featured image ID date: New publication date post_format: New post format

Returns: Updated post details

wordpress_delete_postA

Delete or trash a WordPress post.

Args: post_id: Post ID to delete force: If true, permanently delete. If false, move to trash.

Returns: Deletion confirmation

wordpress_list_revisionsB

List revisions for a WordPress post.

Args: post_id: Post ID

Returns: List of revisions

wordpress_get_revisionB

Get a specific revision of a WordPress post.

Args: post_id: Post ID revision_id: Revision ID

Returns: Revision details with content

wordpress_list_categoriesA

List available WordPress categories.

Args: page: Page number per_page: Results per page (max 100) search: Search categories by name

Returns: List of categories

wordpress_list_tagsB

List available WordPress tags.

Args: page: Page number per_page: Results per page (max 100) search: Search tags by name

Returns: List of tags

wordpress_list_pagesA

List WordPress pages with filtering and pagination.

Args: status: Filter by status (publish, draft, pending, private, future) search: Search pages by keyword parent: Filter by parent page ID page: Page number (default: 1) per_page: Results per page, max 100 (default: 10) orderby: Sort by field (date, title, id, modified, menu_order) order: Sort direction (asc, desc)

Returns: List of pages with pagination info

wordpress_get_pageA

Get a single WordPress page by ID with full content.

Args: page_id: Page ID

Returns: Full page details including content

wordpress_create_pageA

Create a new WordPress page.

Args: title: Page title content: Page content (HTML or block format) status: Page status - publish, draft, pending, private, future (default: draft) excerpt: Page excerpt slug: URL slug parent: Parent page ID menu_order: Menu order template: Page template file featured_media: Featured image media ID date: Publication date (ISO 8601)

Returns: Created page details

wordpress_update_pageC

Update an existing WordPress page.

Args: page_id: Page ID to update title: New title content: New content status: New status excerpt: New excerpt slug: New slug parent: New parent page ID menu_order: New menu order template: New template featured_media: New featured image ID date: New publication date

Returns: Updated page details

wordpress_delete_pageA

Delete or trash a WordPress page.

Args: page_id: Page ID to delete force: If true, permanently delete. If false, move to trash.

Returns: Deletion confirmation

wordpress_list_page_revisionsC

List revisions for a WordPress page.

Args: page_id: Page ID

Returns: List of revisions

wordpress_list_mediaA

List WordPress media items with filtering.

Args: media_type: Filter by type (image, video, audio, application) mime_type: Filter by MIME type (e.g., image/jpeg) search: Search media by keyword page: Page number (default: 1) per_page: Results per page, max 100 (default: 10) orderby: Sort by field (date, title, id) order: Sort direction (asc, desc)

Returns: List of media items with pagination info

wordpress_get_mediaB

Get a single WordPress media item by ID.

Args: media_id: Media ID

Returns: Media item details

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.

Args: file_path: Absolute path to the file (e.g., /tmp/mcp-uploads/image.png) title: Media title alt_text: Alt text for accessibility caption: Media caption description: Media description

Returns: Uploaded media item details

wordpress_update_mediaC

Update WordPress media item metadata.

Args: media_id: Media ID to update title: New title alt_text: New alt text caption: New caption description: New description

Returns: Updated media item details

wordpress_delete_mediaA

Delete a WordPress media item.

Args: media_id: Media ID to delete force: Must be true for media (media cannot be trashed)

Returns: Deletion confirmation

wordpress_get_media_urlA

Get the public URL for a WordPress media item.

Args: media_id: Media ID size: Image size (thumbnail, medium, large, full)

Returns: Media URL information

wordpress_list_commentsA

List WordPress comments with filtering.

Args: post: Filter by post ID status: Filter by status (approved, hold, spam, trash) search: Search comments by content page: Page number (default: 1) per_page: Results per page, max 100 (default: 10) orderby: Sort by field (date, id) order: Sort direction (asc, desc)

Returns: List of comments with pagination info

wordpress_get_commentC

Get a single WordPress comment by ID.

Args: comment_id: Comment ID

Returns: Comment details

wordpress_create_commentA

Create a new comment on a WordPress post.

Args: post: Post ID to comment on content: Comment content parent: Parent comment ID for replies author_name: Comment author name (for anonymous comments) author_email: Comment author email (for anonymous comments)

Returns: Created comment details

wordpress_update_commentB

Update an existing WordPress comment.

Args: comment_id: Comment ID to update content: New comment content status: New status (approved, hold, spam, trash)

Returns: Updated comment details

wordpress_delete_commentA

Delete or trash a WordPress comment.

Args: comment_id: Comment ID to delete force: If true, permanently delete. If false, move to trash.

Returns: Deletion confirmation

wordpress_moderate_commentB

Moderate a WordPress comment by changing its status.

Args: comment_id: Comment ID to moderate action: Moderation action (approve, hold, spam, trash)

Returns: Updated comment details

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/crunchtools/mcp-wordpress'

If you have feedback or need assistance with the MCP directory API, please join our Discord server