WPMCP

Yet another WordPress MCP Server that enables MCP-compatible AI assistants like Claude Code to manage your WordPress site using natural language.

For example, tell your AI to “create a child theme” or “activate the Akismet plugin,” and it just happens. This MCP server provides a direct line of communication for an AI to perform complex tasks that would typically require manual intervention in the WordPress admin dashboard.

Key Features

  • 🛠️ Complete WordPress Control: 190+ tools covering posts, pages, themes, plugins, and users.
  • 🔧 Direct File System Access: Read, write, and modify theme and plugin files directly.
  • 🎨 Advanced Theme Customization: Create child themes and customize theme.json for block themes.
  • ⚙️ Full Plugin & Menu Management: Activate/deactivate plugins and build complex navigation menus.
  • 🛒 WooCommerce Integration: Manage products, orders, customers, and inventory.
  • 🗃️ Database & Cron Operations: Execute direct database queries and manage scheduled tasks.
  • 🛡️ Multi-Layer Security: Includes automatic backups, malware pattern detection, and strict file permissions.

Use Cases

  • Automating Content Workflows: Offload the entire content lifecycle. You can instruct your AI to draft posts, source and upload featured images, apply categories, and schedule publication for an entire content calendar, all through conversation.
  • Rapid Theme Development and Customization: Skip the manual setup. Command the AI to generate a child theme, then iteratively modify its style.css and functions.php files. You can ask it to “make all H1 headers blue” or “add a new widget area,” and it executes the code changes directly.
  • Streamlined Site Management and Troubleshooting: Handle complex administrative tasks with simple commands. Check site health, deactivate a problematic plugin, run a database optimization query, or check for pending WooCommerce orders without ever logging into the WordPress dashboard.
  • Safe File Operations and Backups: Perform critical file edits with a built-in safety net. Before modifying a core template file, the server automatically creates a backup.

How to Use It

1. Install the WPMCP server globally using npm.

npm i -g wpmcp@VERSION

2. Configure your MCP client to recognize the WordPress server. You’ll add a JSON object to your client’s configuration file.

{
"mcpServers": {
"wordpress": {
"command": "npx",
"args": ["-y", "[email protected]"],
"env": {
"WORDPRESS_URL": "https://your-site.com",
"WORDPRESS_USERNAME": "admin",
"WORDPRESS_PASSWORD": "your-app-password"
}
}
}
}

3. For the server to have full control, especially for file system operations and advanced features, you must install and activate the companion plugin on your WordPress site.

  • Upload the wpmcp-plugin/wpmcp.zip file to your /wp-content/plugins/ directory.
  • Navigate to the Plugins page in your WordPress admin dashboard and activate the “WordPress MCP Server Plugin.”
  • Your user role must have edit_themes and edit_plugins capabilities for the file operations to work correctly.

4. Once everything is set up, you can start giving natural language commands to your AI assistant:

  • Content: "Create a new page titled 'Contact Us'"
  • Themes: "Create a child theme based on 'Twenty Twenty-Five' and name it 'My Custom Theme'"
  • Plugins: "Activate the Yoast SEO plugin"
  • Files: "Read the contents of the functions.php file in my active theme"

All Available Tools

Posts (15 tools)

  • wordpress_create_post – Creates a new post.
  • wordpress_update_post – Updates an existing post.
  • wordpress_delete_post – Deletes a specified post.
  • wordpress_get_posts – Retrieves a list of posts with filtering options.
  • wordpress_get_post – Fetches a single post by its ID.
  • wordpress_search_posts – Searches for posts using a keyword.
  • wordpress_schedule_post – Schedules a post for future publication.
  • wordpress_publish_post – Publishes a post that is currently a draft.
  • wordpress_duplicate_post – Creates a copy of an existing post.
  • wordpress_get_post_revisions – Gets the edit history for a post.
  • wordpress_bulk_create_posts – Creates multiple posts in a single action.
  • wordpress_bulk_update_posts – Updates multiple posts at once.
  • wordpress_bulk_delete_posts – Deletes multiple posts simultaneously.

Pages (4 tools)

  • wordpress_create_page – Creates a new page.
  • wordpress_update_page – Updates an existing page.
  • wordpress_delete_page – Deletes a specified page.
  • wordpress_get_pages – Retrieves a list of pages, maintaining hierarchy.

Media (5 tools)

  • wordpress_upload_media – Uploads an image or other file to the media library.
  • wordpress_get_media – Retrieves files from the media library.
  • wordpress_update_media – Updates the metadata (title, alt text, etc.) of a media file.
  • wordpress_delete_media – Deletes a file from the media library.
  • wordpress_set_featured_image – Assigns an image as the featured image for a post.

Users (4 tools)

  • wordpress_create_user – Creates a new user account.
  • wordpress_get_users – Retrieves a list of users, with options to filter by role.
  • wordpress_update_user – Updates a user’s information.
  • wordpress_delete_user – Deletes a user account.

Categories (4 tools)

  • wordpress_create_category – Creates a new post category.
  • wordpress_get_categories – Retrieves all existing categories.
  • wordpress_update_category – Updates a category’s details.
  • wordpress_delete_category – Deletes a category.

Tags (2 tools)

  • wordpress_create_tag – Creates a new post tag.
  • wordpress_get_tags – Retrieves all existing tags.

Comments (4 tools)

  • wordpress_create_comment – Adds a new comment to a post.
  • wordpress_get_comments – Retrieves comments with filtering options.
  • wordpress_update_comment – Updates the content or status of a comment.
  • wordpress_delete_comment – Deletes a comment.

Settings (4 tools)

  • wordpress_get_site_info – Retrieves comprehensive information about the site.
  • wordpress_test_connection – Verifies the connection to the WordPress site.
  • wordpress_get_settings – Gets general site settings.
  • wordpress_update_settings – Updates general site settings.

SEO (2 tools)

  • wordpress_set_seo_meta – Sets SEO metadata for popular plugins (Yoast, Rank Math, AIOSEO).
  • wordpress_set_custom_meta – Sets any custom post metadata field.

File System (8 tools)

  • wordpress_read_file – Reads the contents of a specified file.
  • wordpress_write_file – Writes content to a file, with an option for automatic backup.
  • wordpress_delete_file – Deletes a file, with an option for automatic backup.
  • wordpress_copy_file – Copies a file to a new location.
  • wordpress_move_file – Moves or renames a file.
  • wordpress_list_files – Lists all files within a specific directory.
  • wordpress_file_info – Gets information about a file (size, modified date, etc.).

Themes (13 tools)

  • wordpress_get_themes_detailed – Retrieves a list of all installed themes with details.
  • wordpress_activate_theme – Activates a specified theme.
  • wordpress_get_active_theme – Gets information about the currently active theme.
  • wordpress_create_child_theme – Automatically generates a child theme from a parent.
  • wordpress_get_theme_mods – Retrieves theme customizer settings.
  • wordpress_delete_theme – Deletes a theme.
  • wordpress_get_theme_json – Retrieves the theme.json file for block themes.
  • wordpress_update_theme_json – Updates the theme.json file.
  • wordpress_read_theme_file – Reads a file from within a theme’s directory.
  • wordpress_write_theme_file – Writes to a file within a theme’s directory.
  • wordpress_list_theme_files – Lists all files in a theme’s directory.
  • wordpress_get_theme_templates – Retrieves theme templates.
  • wordpress_get_template_parts – Retrieves theme template parts.
  • wordpress_get_global_styles – Gets global style settings.
  • wordpress_theme_exists – Checks if a specific theme is installed.

Plugins (10 tools)

  • wordpress_get_plugins_detailed – Retrieves a list of all installed plugins.
  • wordpress_activate_plugin – Activates a plugin.
  • wordpress_deactivate_plugin – Deactivates a plugin.
  • wordpress_delete_plugin – Deletes a plugin.
  • wordpress_read_plugin_file – Reads a file from a plugin’s directory.
  • wordpress_write_plugin_file – Writes to a file within a plugin’s directory.
  • wordpress_list_plugin_files – Lists all files in a plugin’s directory.
  • wordpress_get_active_plugins – Retrieves a list of currently active plugins.
  • wordpress_plugin_exists – Checks if a specific plugin is installed.
  • wordpress_get_plugin_status – Gets the activation status of a plugin.

Menus (8 tools)

  • wordpress_get_menus – Retrieves all created navigation menus.
  • wordpress_create_menu – Creates a new menu.
  • wordpress_delete_menu – Deletes a menu.
  • wordpress_get_menu_items – Retrieves all items within a specific menu.
  • wordpress_create_menu_item – Adds a new item to a menu.
  • wordpress_update_menu_item – Updates an existing menu item.
  • wordpress_delete_menu_item – Deletes a menu item.
  • wordpress_get_menu_locations – Retrieves available menu locations for the theme.
  • wordpress_assign_menu_to_location – Assigns a menu to a theme location.

Custom Post Types & Taxonomies (7 tools)

  • wordpress_get_post_types – Retrieves all registered post types.
  • wordpress_get_post_type – Gets detailed information about a single post type.
  • wordpress_get_taxonomies – Retrieves all registered taxonomies.
  • wordpress_get_taxonomy – Gets detailed information about a single taxonomy.
  • wordpress_get_terms – Retrieves all terms from a specific taxonomy.
  • wordpress_create_term – Creates a new term in a taxonomy.
  • wordpress_update_term – Updates an existing term.
  • wordpress_delete_term – Deletes a term.

Shortcodes (3 tools)

  • wordpress_list_shortcodes – Retrieves all registered shortcodes.
  • wordpress_execute_shortcode – Executes a shortcode and returns the output.
  • wordpress_shortcode_exists – Checks if a specific shortcode is registered.

Cron Jobs (5 tools)

  • wordpress_list_cron_jobs – Retrieves all scheduled cron jobs.
  • wordpress_schedule_event – Schedules a new cron event.
  • wordpress_unschedule_event – Removes a scheduled event.
  • wordpress_run_cron – Manually triggers the WordPress cron process.
  • wordpress_get_cron_schedules – Retrieves available cron schedules.

Widgets (6 tools)

  • wordpress_get_sidebars – Retrieves all available widget areas (sidebars).
  • wordpress_get_sidebar – Gets details for a specific sidebar.
  • wordpress_get_widgets – Retrieves all active widgets.
  • wordpress_update_widget – Updates the configuration of a widget.
  • wordpress_delete_widget – Deletes a widget.
  • wordpress_get_widget_types – Retrieves all available widget types.

Database (6 tools)

  • wordpress_list_tables – Retrieves all tables in the WordPress database.
  • wordpress_execute_sql – Executes a SELECT SQL query.
  • wordpress_get_option – Retrieves the value of a WordPress option from the wp_options table.
  • wordpress_update_option – Updates the value of a WordPress option.
  • wordpress_get_table_structure – Gets the column structure of a database table.
  • wordpress_get_table_preview – Previews the data within a table.

WooCommerce (15 tools)

  • wordpress_wc_create_product – Creates a new WooCommerce product.
  • wordpress_wc_update_product – Updates an existing product.
  • wordpress_wc_get_products – Retrieves a list of products.
  • wordpress_wc_delete_product – Deletes a product.
  • wordpress_wc_get_orders – Retrieves a list of orders.
  • wordpress_wc_update_order_status – Updates the status of an order.
  • wordpress_wc_get_customers – Retrieves a list of customers.
  • wordpress_wc_update_stock – Updates the inventory for a product.
  • wordpress_wc_create_coupon – Creates a new discount coupon.
  • wordpress_wc_get_coupons – Retrieves a list of coupons.
  • wordpress_wc_get_payment_gateways – Retrieves available payment methods.
  • wordpress_wc_get_shipping_zones – Retrieves configured shipping zones.
  • wordpress_wc_get_sales_report – Generates a sales report.
  • wordpress_wc_get_top_sellers – Retrieves a list of top-selling products.
  • wordpress_wc_get_product_categories – Retrieves product categories.
  • wordpress_wc_is_active – Checks if WooCommerce is active.

Gutenberg Blocks (12 tools)

  • wordpress_get_block_types – Retrieves all registered block types.
  • wordpress_get_block_patterns – Retrieves all available block patterns.
  • wordpress_get_block_categories – Retrieves block pattern categories.
  • wordpress_get_reusable_blocks – Retrieves all reusable blocks.
  • wordpress_create_reusable_block – Creates a new reusable block.
  • wordpress_update_reusable_block – Updates a reusable block.
  • wordpress_delete_reusable_block – Deletes a reusable block.
  • wordpress_parse_blocks – Parses block content from a string.
  • wordpress_search_block_directory – Searches the official block directory.
  • wordpress_get_block_editor_settings – Retrieves settings for the block editor.
  • wordpress_get_block_template – Retrieves a block template.
  • wordpress_get_style_variations – Retrieves style variations for block themes.

Security (7 tools)

  • wordpress_get_site_health – Gets the site health status.
  • wordpress_check_updates – Checks for available core, plugin, and theme updates.
  • wordpress_get_debug_log – Reads the debug.log file.
  • wordpress_verify_core_files – Verifies the integrity of WordPress core files.
  • wordpress_get_failed_logins – Retrieves a log of failed login attempts.
  • wordpress_scan_permissions – Scans file and directory permissions for issues.
  • wordpress_get_version_info – Gets version information for WordPress and the server environment.

Performance (8 tools)

  • wordpress_clear_cache – Clears all common WordPress caches.
  • wordpress_optimize_database – Optimizes the database tables.
  • wordpress_cleanup_database – Cleans up unnecessary data like revisions, spam comments, and trashed items.
  • wordpress_regenerate_thumbnails – Regenerates image thumbnails for all media.
  • wordpress_get_performance_metrics – Retrieves key performance metrics.
  • wordpress_enable_maintenance_mode – Enables or disables maintenance mode.
  • wordpress_flush_rewrite_rules – Flushes the site’s rewrite rules.
  • wordpress_get_system_info – Gets detailed system and server information.

Advanced SEO (10 tools)

  • wordpress_generate_sitemap – Generates an XML sitemap.
  • wordpress_get_robots_txt – Retrieves the content of robots.txt.
  • wordpress_update_robots_txt – Updates the robots.txt file.
  • wordpress_create_redirect – Creates a new URL redirect.
  • wordpress_get_redirects – Retrieves all configured redirects.
  • wordpress_delete_redirect – Deletes a redirect.
  • wordpress_set_og_tags – Sets Open Graph tags for a post.
  • wordpress_set_twitter_cards – Sets Twitter Card tags for a post.
  • wordpress_set_canonical_url – Sets the canonical URL for a post.
  • wordpress_set_schema_markup – Adds structured data (schema markup) to a post.
  • wordpress_analyze_seo – Performs an SEO analysis on post content.

Advanced Media (5 tools)

  • wordpress_bulk_optimize_images – Compresses multiple images in the media library.
  • wordpress_convert_to_webp – Converts images to the WebP format.
  • wordpress_get_unused_media – Finds media files that are not attached to any post.
  • wordpress_bulk_delete_media – Deletes multiple media files at once.
  • wordpress_get_media_analytics – Provides storage statistics for the media library.

Backup & Migration (10 tools)

  • wordpress_full_backup – Creates a complete backup of the site (files and database).
  • wordpress_backup_database – Creates a backup of only the database.
  • wordpress_backup_files – Creates a backup of only the site files.
  • wordpress_list_backups – Lists all available backups.
  • wordpress_restore_backup – Restores the site from a backup.
  • wordpress_delete_backup – Deletes a backup file.
  • wordpress_export_content – Exports site content as a WordPress XML file.
  • wordpress_import_content – Imports content from a WordPress XML file.
  • wordpress_clone_to_staging – Clones the site to a staging environment.
  • wordpress_schedule_backups – Schedules automatic, recurring backups.

User Roles & Capabilities (8 tools)

  • wordpress_get_roles – Retrieves all user roles.
  • wordpress_get_capabilities – Retrieves the capabilities for a specific role.
  • wordpress_create_role – Creates a new custom user role.
  • wordpress_delete_role – Deletes a user role.
  • wordpress_add_capability – Adds a capability to a role.
  • wordpress_remove_capability – Removes a capability from a role.
  • wordpress_assign_role – Assigns a role to a user.
  • wordpress_check_user_capability – Checks if a user has a specific capability.

FAQs

Q: Is it secure to give an AI this much control over my WordPress site?
A: The WPMCP server is built with security in mind. It restricts operations to allowed directories (themes, plugins, uploads) and safe file extensions. It also includes malware pattern detection, PHP syntax validation, and performs automatic backups before any file modifications. All actions are still governed by the WordPress permission system.

Q: What kind of authentication does it use?
A: For self-hosted WordPress sites, you’ll need to install the Basic Auth plugin and use your admin username and an Application Password. For WordPress.com sites, a Business plan or higher is required to generate an Application Password under the security settings.

Q: How does this differ from the WordPress REST API?
A: While the REST API provides programmatic access, the MCP Server adds natural language processing and AI context awareness. It handles complex workflows that would require multiple REST API calls, understands developer intent from ambiguous commands, and includes safety mechanisms like automatic backups that the REST API doesn’t provide.

Latest MCP Servers

Memo

An MCP provides structured context storage for AI agents. This server enables you to transfer conversation states between different AI coding agents.

Colab

Google's official Colab MCP server that enables AI assistants to run Python code in Google Colab.

Excalidraw

Excalidraw's official MCP server that streams interactive hand-drawn diagrams to Claude, ChatGPT, and VS Code with smooth camera control and fullscreen editing.

View More MCP Servers >>

Featured MCP Servers

Excalidraw

Excalidraw's official MCP server that streams interactive hand-drawn diagrams to Claude, ChatGPT, and VS Code with smooth camera control and fullscreen editing.

Claude Context Mode

This MCP Server compresses tool outputs by 98% using sandboxed execution, full-text search with BM25 ranking, and multi-language support for Claude Code.

Context+

An MCP server provides AST parsing, semantic search, and feature graph tools for large codebases with 99% accuracy.

More Featured MCP Servers >>

FAQs

Q: What exactly is the Model Context Protocol (MCP)?

A: MCP is an open standard, like a common language, that lets AI applications (clients) and external data sources or tools (servers) talk to each other. It helps AI models get the context (data, instructions, tools) they need from outside systems to give more accurate and relevant responses. Think of it as a universal adapter for AI connections.

Q: How is MCP different from OpenAI's function calling or plugins?

A: While OpenAI's tools allow models to use specific external functions, MCP is a broader, open standard. It covers not just tool use, but also providing structured data (Resources) and instruction templates (Prompts) as context. Being an open standard means it's not tied to one company's models or platform. OpenAI has even started adopting MCP in its Agents SDK.

Q: Can I use MCP with frameworks like LangChain?

A: Yes, MCP is designed to complement frameworks like LangChain or LlamaIndex. Instead of relying solely on custom connectors within these frameworks, you can use MCP as a standardized bridge to connect to various tools and data sources. There's potential for interoperability, like converting MCP tools into LangChain tools.

Q: Why was MCP created? What problem does it solve?

A: It was created because large language models often lack real-time information and connecting them to external data/tools required custom, complex integrations for each pair. MCP solves this by providing a standard way to connect, reducing development time, complexity, and cost, and enabling better interoperability between different AI models and tools.

Q: Is MCP secure? What are the main risks?

A: Security is a major consideration. While MCP includes principles like user consent and control, risks exist. These include potential server compromises leading to token theft, indirect prompt injection attacks, excessive permissions, context data leakage, session hijacking, and vulnerabilities in server implementations. Implementing robust security measures like OAuth 2.1, TLS, strict permissions, and monitoring is crucial.

Q: Who is behind MCP?

A: MCP was initially developed and open-sourced by Anthropic. However, it's an open standard with active contributions from the community, including companies like Microsoft and VMware Tanzu who maintain official SDKs.

Get the latest & top AI tools sent directly to your email.

Subscribe now to explore the latest & top AI tools and resources, all in one convenient newsletter. No spam, we promise!