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 |
Capabilities
Server capabilities have not been inspected yet.
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_postC | Get detailed information about a specific post by ID |
| wordpress_search_postsC | Search posts by keyword - searches title, content, and excerpt |
| wordpress_schedule_postC | 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_revisionsC | Get all revisions/edit history for a post |
| wordpress_bulk_create_postsB | 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_pageD | 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_imagesB | 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_analyticsB | 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_userC | Delete a user (reassign their content to another user) |
| wordpress_create_categoryC | Create a new category with hierarchical support |
| wordpress_get_categoriesB | Get all categories with hierarchy |
| wordpress_update_categoryC | Update category name, description, or parent |
| wordpress_delete_categoryC | Delete a category |
| wordpress_create_tagC | Create a new tag |
| wordpress_get_tagsC | Get all tags |
| wordpress_create_commentC | Create a comment on a post |
| wordpress_get_commentsC | Get comments with filtering by post and status |
| wordpress_update_commentC | Update comment (approve, spam, trash, edit content) |
| wordpress_delete_commentD | Delete a comment |
| wordpress_get_site_infoB | Get complete WordPress site information including available API routes |
| wordpress_test_connectionB | Test WordPress connection and authentication |
| wordpress_get_settingsC | Get WordPress site settings |
| wordpress_update_settingsB | Update site settings (title, description, timezone, etc) |
| wordpress_get_pluginsB | Get all installed WordPress plugins |
| wordpress_get_themesB | 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_fileC | Read file contents from WordPress (themes, plugins, etc.) |
| wordpress_list_filesC | List files in a WordPress directory |
| wordpress_file_infoC | 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_detailedB | Get detailed information about all installed themes |
| wordpress_activate_themeC | 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_themeB | Delete a theme (cannot delete active theme) |
| wordpress_get_theme_jsonB | Get theme.json configuration for block themes (FSE) |
| wordpress_update_theme_jsonC | Update theme.json configuration for block themes (FSE) |
| wordpress_read_theme_fileC | Read a specific file from a theme |
| wordpress_write_theme_fileC | 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_templatesB | Get theme templates (block theme templates from WordPress API) |
| wordpress_get_template_partsB | Get theme template parts (block theme components like header, footer) |
| wordpress_get_global_stylesB | Get theme global styles (Site Editor styles) |
| wordpress_theme_existsB | 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_fileC | 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_pluginsB | 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_menusB | Get all navigation menus |
| wordpress_create_menuC | Create a new navigation menu |
| wordpress_delete_menuC | Delete a navigation menu |
| wordpress_get_menu_itemsB | 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_locationsB | Get all registered menu locations in the active theme |
| wordpress_assign_menu_to_locationC | Assign a menu to a theme location |
| wordpress_get_post_typesB | Get all registered post types |
| wordpress_get_post_typeC | Get details for a specific post type |
| wordpress_get_taxonomiesB | 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_shortcodesB | 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
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