Every WordPress ability, as an MCP tool

WordPress 6.9 lets core and plugins register abilities: named actions with a description and an input schema. GetMCP turns the ones you pick into MCP tools on a server, with authentication, logging and rate limits in front. No code, no custom endpoint, and each ability runs as the person who asked.

WordPress 6.9 or later Read-only abilities add in one click Abilities that change the site need a confirmation Runs as the signed-in user, or a user you choose Since GetMCP 1.8

Pick abilities, get tools

On a server's Tools tab, Import Tools offers From WordPress Abilities. The dialog lists every ability registered on your site, grouped by the plugin that registered it, with a search box above. Tick the ones you want and click Add tools: each becomes a tool, with the ability's own input schema as the tool's parameters.

  • Read-only marks an ability that declares it changes nothing; May change your site and Destructive mark the ones that do, and those ask you to confirm before they are added
  • Not marked for MCP means the plugin's author did not flag it for AI clients; it still works
  • New marks abilities registered since you last opened the dialog, so after a plugin update you can see what arrived
GetMCP on WordPress and WooCommerce
The From WordPress Abilities dialog in GetMCP, listing the abilities registered on the site grouped by who registered them, with Read-only badges, a search box and tick boxes

An ability already describes itself

An ability carries a name, a description, an input schema and whether it is read-only. That is everything a tool needs, so GetMCP writes no code and neither do you. In the server's tool list an ability tool carries an Ability badge where an HTTP tool shows its method, and it can sit on the same server as tools imported from a REST API.

  • Core's own abilities and any plugin that registers them, side by side
  • The ability's input schema becomes the tool's parameters, so an AI client knows what to send
  • A test run from the tool editor shows the result and which user it ran as
// Import Tools: From WordPress Abilities
core/get-site-info           Read-only
core/get-user-info           Read-only
bookings/list-appointments   Read-only
bookings/reschedule          May change your site
reviews/export               Not marked for MCP

// On the server, each one is a tool
name         bookings/reschedule
parameters   from the ability's input schema
runs as      the signed-in user

Who the ability runs as

An ability runs with WordPress capabilities, so GetMCP has to run it as somebody. Which somebody is the one decision this feature asks of you.

The signed-in user, by default

With WordPress sign-in as the server's client authentication, the ability runs as the person whose AI client made the call, and sees exactly what that person may see. An editor's assistant works like an editor.

One account you choose

Run abilities as, under the server's settings, runs every call as a specific account whatever client credential arrived. Use it for servers that clients reach with an API key.

Never an administrator

An ability running as an administrator would let any client with a key do anything an administrator can, so GetMCP refuses administrators as the run-as account. On a trusted install the getmcp_ability_allow_admin_run_as filter allows it.

Shown in the logs

Ability calls are logged like HTTP tool calls: the tool name, the arguments with PII redaction applied, the result and the time taken. They count against the server's rate limit and your plan's call quota.

Sign in with the accounts you already have

WordPress sign-in is the client authentication abilities were made for. People sign in with their WordPress account when their AI client connects, and only the accounts you list are let in.

A list, not a key

Choose WordPress sign-in on the server's Authentication tab and add the people who may connect. When one of them connects an AI client, it opens your site's sign-in in a browser; they approve, and the client gets a token for this server only.

An empty list lets nobody in

Administrators included. The list is checked on every request and at every step of the sign-in, not only when the token is issued. Remove someone and their tokens for the server are gone at once.

Each person, their own permissions

Abilities then run as the person who signed in, so nobody's assistant can do more than they can. No shared key to hand out, nothing to rotate when someone leaves.

Questions about abilities as tools

Which WordPress version do I need?

WordPress 6.9 or later, which introduced the Abilities API. On an older site the other imports, from a REST API, a cURL command, an OpenAPI spec or a template, work as before.

Which abilities will I see?

Everything registered on your site: WordPress core's own abilities and those of any plugin that registers them. The dialog groups them by who registered them and lets you search, so a site with many plugins stays readable.

Can an AI change my site through an ability?

Only through an ability you imported that is not read-only, and the dialog asks you to confirm before adding one. The call then runs as the signed-in person or the account you chose, with that account's capabilities, and is logged with its arguments.

Does this work in the standalone app?

No. Abilities live inside WordPress, so this is a feature of the WordPress plugin. The standalone app imports tools from REST APIs, specs and templates, and connects to remote MCP servers.

Can I mix ability tools with API tools on one server?

Yes. A server can hold tools imported from your REST API, from a template and from abilities side by side. In the tool list, ability tools carry an Ability badge where the others show an HTTP method.

Your site's abilities, in the conversation.

Pick the abilities on a server, list the people who may connect, and let each of them work with their own permissions.

Teams already shipping MCP servers with it

Rated 5.0 out of 5 by customers Read more reviews

We hooked up our CRM in 5 minutes, now Claude can help maintain enrich assign tasks on autopilot. The hardest part is looking for more business SaaS to itegrate :) Thanks so much team, its really magic!!

Ilan Manoim

I really like GetMCP. It makes my work much easier, and the connection stays stable without constant reconnecting. Through one MCP connection, I can give my AI access to the services I choose and let it handle many useful tasks across my tools.