WordPress MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WORDPRESS_URL | Yes | The URL of your WordPress site | |
| WORDPRESS_PASSWORD | Yes | Your WordPress application password | |
| WORDPRESS_USERNAME | Yes | Your WordPress admin username |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| wordpress_create_postC | Create a new WordPress post with full control over all post properties |
| wordpress_update_postC | Update an existing post - can modify any post property |
| wordpress_delete_postA | Delete a post. Set force=true to permanently delete, otherwise moves to trash |
| wordpress_get_postsC | Get posts with advanced filtering: search, author, categories, tags, status, ordering |
| wordpress_get_postB | Get detailed information about a specific post by ID |
| wordpress_search_postsC | Search posts by keyword - searches title, content, and excerpt |
| wordpress_schedule_postB | Schedule a post for future publication. Date format: YYYY-MM-DDTHH:MM:SS |
| wordpress_publish_postC | Publish a draft or pending post immediately |
| wordpress_duplicate_postC | Duplicate an existing post with optional new title |
| wordpress_get_post_revisionsB | Get all revisions/edit history for a post |
| wordpress_bulk_create_postsC | Create multiple posts in one operation - efficient for batch content generation |
| wordpress_bulk_update_postsC | Update multiple posts in one operation - efficient for batch modifications |
| wordpress_bulk_delete_postsC | Delete multiple posts in one operation |
| wordpress_create_pageC | Create a new WordPress page with hierarchy support |
| wordpress_update_pageC | Update an existing page |
| wordpress_get_pagesC | Get pages with hierarchy and ordering |
| wordpress_delete_pageC | Delete a page |
| wordpress_upload_mediaC | Upload image or file to WordPress media library (provide base64 encoded file) |
| wordpress_get_mediaC | Get media library files with filtering by type |
| wordpress_update_mediaC | Update media file metadata (alt text, caption, title) |
| wordpress_delete_mediaC | Delete a media file from library |
| wordpress_set_featured_imageC | Set featured image (thumbnail) for a post |
| wordpress_bulk_optimize_imagesA | Bulk optimize images (compress all images) |
| wordpress_convert_to_webpC | Convert image to WebP format |
| wordpress_get_unused_mediaB | Find unused media files in library |
| wordpress_bulk_delete_mediaC | Delete multiple media files |
| wordpress_get_media_analyticsA | Get media library storage usage statistics |
| wordpress_create_userC | Create a new WordPress user with roles |
| wordpress_get_usersC | Get WordPress users with role filtering |
| wordpress_update_userC | Update user information (name, email, roles, password) |
| wordpress_delete_userA | Delete a user (reassign their content to another user) |
| wordpress_create_categoryC | Create a new category with hierarchical support |
| wordpress_get_categoriesA | Get all categories with hierarchy |
| wordpress_update_categoryB | Update category name, description, or parent |
| wordpress_delete_categoryC | Delete a category |
| wordpress_create_tagC | Create a new tag |
| wordpress_get_tagsB | Get all tags |
| wordpress_create_commentC | Create a comment on a post |
| wordpress_get_commentsD | Get comments with filtering by post and status |
| wordpress_update_commentC | Update comment (approve, spam, trash, edit content) |
| wordpress_delete_commentC | Delete a comment |
| wordpress_get_site_infoA | Get complete WordPress site information including available API routes |
| wordpress_test_connectionA | Test WordPress connection and authentication |
| wordpress_get_settingsC | Get WordPress site settings |
| wordpress_update_settingsC | Update site settings (title, description, timezone, etc) |
| wordpress_get_pluginsB | Get all installed WordPress plugins |
| wordpress_get_themesA | Get all installed WordPress themes |
| wordpress_set_seo_metaC | Set SEO metadata (Yoast SEO, Rank Math, All-in-One SEO compatible) |
| wordpress_set_custom_metaC | Set custom post metadata field - useful for custom fields and plugins |
| wordpress_read_fileB | Read file contents from WordPress (themes, plugins, etc.) |
| wordpress_list_filesC | List files in a WordPress directory |
| wordpress_file_infoB | Get file information (size, modified date, permissions) |
| wordpress_write_fileC | Write or create file with security validation and optional backup |
| wordpress_delete_fileC | Delete file with optional backup |
| wordpress_copy_fileC | Copy file to another location within WordPress |
| wordpress_move_fileC | Move or rename file within WordPress |
| wordpress_get_themes_detailedA | Get detailed information about all installed themes |
| wordpress_activate_themeB | Activate a theme (switch to it as the active theme) |
| wordpress_get_active_themeB | Get the currently active theme |
| wordpress_create_child_themeC | Create a child theme from a parent theme |
| wordpress_get_theme_modsB | Get theme customizer settings (Appearance → Customize data) |
| wordpress_delete_themeC | Delete a theme (cannot delete active theme) |
| wordpress_get_theme_jsonB | Get theme.json configuration for block themes (FSE) |
| wordpress_update_theme_jsonB | Update theme.json configuration for block themes (FSE) |
| wordpress_read_theme_fileC | Read a specific file from a theme |
| wordpress_write_theme_fileB | Write or modify a file in a theme (automatically creates backup) |
| wordpress_list_theme_filesC | List all files in a theme directory |
| wordpress_get_theme_templatesA | Get theme templates (block theme templates from WordPress API) |
| wordpress_get_template_partsA | Get theme template parts (block theme components like header, footer) |
| wordpress_get_global_stylesC | Get theme global styles (Site Editor styles) |
| wordpress_theme_existsC | Check if a theme is installed |
| wordpress_get_plugins_detailedB | Get detailed information about all installed plugins |
| wordpress_activate_pluginC | Activate a plugin |
| wordpress_deactivate_pluginC | Deactivate a plugin |
| wordpress_delete_pluginB | Delete a plugin (must be deactivated first) |
| wordpress_read_plugin_fileC | Read a specific file from a plugin |
| wordpress_write_plugin_fileB | Write or modify a file in a plugin (automatically creates backup) |
| wordpress_list_plugin_filesC | List all files in a plugin directory |
| wordpress_get_active_pluginsA | Get all currently active plugins |
| wordpress_plugin_existsC | Check if a plugin is installed |
| wordpress_get_plugin_statusC | Get status and details of a specific plugin |
| wordpress_get_menusC | Get all navigation menus |
| wordpress_create_menuC | Create a new navigation menu |
| wordpress_delete_menuC | Delete a navigation menu |
| wordpress_get_menu_itemsC | Get menu items from a specific menu or all menus |
| wordpress_create_menu_itemC | Add an item to a navigation menu |
| wordpress_update_menu_itemC | Update a menu item (title, URL, order, etc.) |
| wordpress_delete_menu_itemC | Delete a menu item |
| wordpress_get_menu_locationsA | Get all registered menu locations in the active theme |
| wordpress_assign_menu_to_locationC | Assign a menu to a theme location |
| wordpress_get_post_typesA | Get all registered post types |
| wordpress_get_post_typeC | Get details for a specific post type |
| wordpress_get_taxonomiesA | Get all registered taxonomies |
| wordpress_get_taxonomyC | Get details for a specific taxonomy |
| wordpress_get_termsC | Get terms from a taxonomy (categories, tags, or custom) |
| wordpress_create_termC | Create a new term in a taxonomy |
| wordpress_update_termC | Update a term in a taxonomy |
| wordpress_delete_termC | Delete a term from a taxonomy |
| wordpress_list_shortcodesA | Get all registered WordPress shortcodes |
| wordpress_execute_shortcodeC | Process and execute a shortcode string |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/RaheesAhmed/wordpress-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server