WordPress Abilities API: Expose Any Plugin as AI Tools (2026 Guide)
Table of Contents
For years, the problem with connecting WordPress to AI was fragmentation. Every plugin exposed its functionality differently โ some through the REST API, some through custom AJAX endpoints, some not at all. There was no standard way for an AI assistant to discover what a site could do, let alone do it safely.
The WordPress Abilities API fixes that at the core level. Shipped in WordPress 6.9, it gives plugins, themes, and WordPress itself a single, structured way to declare their functionality so that tools โ including AI assistants โ can discover and use it automatically.
This guide explains what the WordPress Abilities API is, how it works, and how Easy MCP AI bridges registered abilities directly to the Model Context Protocol so any AI client can use them.
What Is the WordPress Abilities API?
The Abilities API is a core WordPress standard, introduced in WordPress 6.9 (released in 2025), that gives plugins, themes, and core a unified way to register named, typed, permission-controlled actions โ called abilities.
An ability is a self-describing unit of functionality. Each one declares:
- A label and description (human-readable) and a category it belongs to
- An execute callback (the function that runs when the ability is invoked)
- A permission callback (who is allowed to run it)
- An input schema (optional โ only needed if the ability accepts arguments) and a required output schema (JSON Schema describing the return value)
Because every ability follows the same structure, any tool that understands the Abilities API can discover registered abilities and understand how to call them โ without bespoke integration code for each plugin. Itโs the missing standardization layer between WordPress functionality and the tools that want to use it.
The development continues beyond 6.9: a Client-Side Abilities API is planned for WordPress 7.0, extending the same concept to JavaScript in the browser.
How the Abilities API Works
A plugin developer registers an ability in PHP using wp_register_ability(), called inside a callback hooked to the wp_abilities_api_init action:
add_action( 'wp_abilities_api_init', function () {
wp_register_ability( 'my-plugin/send-report', array(
'label' => __( 'Send Report', 'my-plugin' ),
'description' => __( 'Generates and emails a sales report.', 'my-plugin' ),
'category' => 'my-plugin', // must be registered first via wp_register_ability_category()
'input_schema' => array( /* JSON schema */ ),
'output_schema' => array( /* JSON schema */ ),
'execute_callback' => 'my_plugin_send_report',
'permission_callback' => function () {
return current_user_can( 'manage_options' );
},
) );
} );
Once registered, that functionality is available as a structured, discoverable ability. The permission callback runs on every invocation, so abilities are governed by WordPressโs existing capability system โ an ability can never do more than the current user is allowed to do.
The key shift: instead of each plugin reinventing how it exposes itself, it declares its capabilities once in a standard format, and any compatible tool can use them.
Why the Abilities API Matters for AI
The Abilities API and the Model Context Protocol are a natural fit. MCP โ the open standard Anthropic released on November 25, 2024, and donated to the Linux Foundationโs Agentic AI Foundation on December 9, 2025 โ defines how AI clients discover and call tools. The Abilities API defines how WordPress functionality is declared as tools. Bridge the two, and any registered ability becomes an MCP tool an AI client can call.
This is exactly how WordPressโs own ecosystem is moving: WooCommerce introduced MCP as a developer preview in WooCommerce 10.3, and built it fully on the WordPress Abilities system starting with WooCommerce 10.9. As more plugins register abilities, the surface of AI-controllable WordPress functionality grows automatically โ no per-plugin AI integration work required.
How Easy MCP AI Bridges Abilities to MCP
Easy MCP AI is a free, open-source WordPress plugin that turns your site into a fully compliant remote MCP server. Beyond its own 215 built-in tools, it automatically reads abilities registered through the WordPress Abilities API and exposes them as MCP tools โ with no extra configuration.
The flow is three steps:
- A plugin registers an ability. A developer calls
wp_register_ability()with a label, input/output schema, and permission callback. - Easy MCP AI discovers it. Easy MCP AI reads all registered abilities on your site and exposes them as MCP tools automatically โ no configuration, no extra setup.
- Your AI client calls it. Claude, ChatGPT, Cursor, or any MCP-compatible client can now use that pluginโs functionality through natural conversation, with the abilityโs permission callback enforced on every call.
For plugin developers, this is a first-mover opportunity: register abilities once, and your plugin becomes usable by every AI client connected through Easy MCP AI โ without writing any AI- or MCP-specific code.
All credentials and operations stay on your own WordPress server, encrypted AES-256-GCM with per-provider HKDF-derived keys. Nothing is transmitted to any third party until an AI actively calls a tool.
Setup
Step 1 โ Install Easy MCP AI. Install and activate Easy MCP AI from the WordPress plugin directory. It is free with no paid tiers or usage limits.
Step 2 โ Ensure your plugins register abilities. Any plugin using wp_register_ability() on WordPress 6.9+ is automatically discovered.
Step 3 โ Connect to Claude. Copy your MCP server URL from Easy MCP AI โ Dashboard. In Claude, go to Settings โ Connectors โ Add custom connector, paste the URL, and authorize via OAuth.
Step 4 โ Use your abilities. Open a Claude conversation; registered abilities are available as tools alongside Easy MCP AIโs built-in suite.
Abilities API vs. Custom REST Endpoints
| Custom REST endpoints | WordPress Abilities API | |
|---|---|---|
| Discovery | No standard โ each plugin differs | Standardized, machine-readable registry |
| Schemas | Optional, inconsistent | Required output schema; optional input schema |
| Permissions | Per-endpoint, ad hoc | Built-in permission callback per ability |
| AI compatibility | Needs per-plugin integration | Bridges to MCP automatically |
| Maintained by | Each plugin separately | WordPress core standard |
Key Facts
- The Abilities API shipped in WordPress 6.9 as a core standard for declaring plugin, theme, and core functionality
- Abilities are registered with
wp_register_ability(), hooked to thewp_abilities_api_initaction - Each ability declares a label, optional input schema, required output schema, and permission callback
- A Client-Side Abilities API is planned for WordPress 7.0
- WooCommerceโs MCP integration debuted as a developer preview in v10.3 and is fully built on the WordPress Abilities system since v10.9
- Easy MCP AI automatically exposes registered abilities as MCP tools โ no per-plugin integration code required
Conclusion
The WordPress Abilities API is the standardization layer WordPress needed to be AI-ready. By giving every plugin one structured way to declare its functionality, it turns the entire plugin ecosystem into a discoverable toolset โ and the Model Context Protocol is the natural way to deliver those tools to AI clients.
Easy MCP AI bridges the two automatically: register an ability, and it becomes an MCP tool any AI client can use โ free, open-source, and running entirely on your own server.
โ Get Easy MCP AI from the WordPress plugin directory
Official Sources
- Introducing the WordPress Abilities API โ WordPress Developer Blog
- Abilities API in WordPress 6.9 โ Make WordPress Core
- Abilities API โ Common APIs Handbook, Developer.WordPress.org
- Client-Side Abilities API in WordPress 7.0 โ Make WordPress Core
- WordPress/abilities-api โ GitHub
- Introducing the Model Context Protocol โ Anthropic
- Easy MCP AI โ WordPress Plugin Directory