AI Tools 19 Aug 2026  ·  3 min read

Model Context Protocol for WordPress: The Developer’s Deep Dive

Model Context Protocol for WordPress: The Developer’s Deep Dive
Model Context Protocol for WordPress: The Developer’s Deep Dive 19 Aug 2026
TL;DR — The WordPress MCP Adapter implements the Model Context Protocol over JSON-RPC 2.0. AI clients send an initialize handshake, discover available tools via tools/list, and call them via tools/call. Plugins register abilities (tools) using the WordPress Abilities API. Here’s how it works end to end for a developer who wants to understand — or extend — the system.

The Model Context Protocol is an open standard published by Anthropic in late 2024. It defines a JSON-RPC 2.0 based protocol for AI models to connect to external tools and data sources. In the WordPress context, the MCP Adapter translates between the MCP protocol and WordPress’s native plugin system. For how this compares to the automation tools developers already know — WP-CLI, the REST API, Zapier — see WordPress AI Agents vs. Traditional Automation: A Developer’s Honest Comparison.

The Request Flow: From Prompt to WordPress Action

  1. Prompt: "Create a post titled 'Hello World'"
  2. AI reasoning: The model identifies that wds/create-post is the right ability and constructs the parameters
  3. MCP call: tools/call {name: "wds/create-post", arguments: {title: "Hello World", status: "draft"}}
  4. Transport: JSON-RPC 2.0 POST to /wp-json/mcp/mcp-adapter-default-server with Mcp-Session-Id header
  5. WordPress: MCP Adapter routes to the registered ability callback; wds/create-post executor runs wp_insert_post()
  6. Response: JSON result (post_id, URL, edit_url) returned to the AI
  7. Output: The AI reports success and the post URL

The Session Protocol

MCP connections are stateful per session. The sequence for a direct API call (e.g. for debugging or non-Claude clients):

  1. POST initialize with Mcp-Protocol-Version header → get back Mcp-Session-Id in response headers
  2. POST tools/list with Mcp-Session-Id header → get all available tools and their schemas
  3. POST tools/call with Mcp-Session-Id header → execute a tool

How Plugins Register Abilities

The WordPress Abilities API (provided by the MCP Adapter) exposes wp_register_ability(). Any plugin can call it on the wp_abilities_api_init hook:

add_action('wp_abilities_api_init', function() {
  wp_register_ability('my-plugin/do-thing', [
    'label'            => 'Do a Thing',
    'description'      => 'Does a thing on the WordPress site.',
    'input_schema'     => ['type' => 'object', 'properties' => [...], 'required' => [...]],
    'execute_callback' => function($params) {
      // do the thing
      return ['result' => 'done'];
    }
  ]);
});

Several plugins now build on this API — see an honest comparison of the four WordPress MCP plugins available in 2026. WDS MCP Content Manager Pro registers 45 abilities using this API, covering the workflows in JSON-LD schema automation, multilingual sites with Polylang, and general agency workflow automation. The abilities are grouped into seven executor files by domain: content, pages, products, elementor, taxonomy, media, multilingual.

Authentication

The MCP endpoint uses WordPress Application Passwords over HTTP Basic Auth. The AI client sends a base64-encoded username:application_password in the Authorization header. Each ability’s callback runs under the authenticated user’s capabilities — an Editor-level Application Password can create and update content; Admin-level is required for abilities like wds/reindex-yoast-seo. This design is what lets MCP skip OAuth entirely — see No OAuth Required: Simplifying MCP Server Authentication with AWS IAM for the same pattern applied outside WordPress.

WDS MCP Content Manager Pro — €49/domain, 45 abilities, lifetime updates.


Need help with this? If you want a custom MCP integration built for your own WordPress site or internal tooling — not just a plugin — see Software Development Consulting.

Related reading