Skip to content
WP EngineDocumentation

Connect Claude Desktop to your WordPress sites

This guide connects Claude Desktop to your WordPress sites through the AI MCP service, from creating an API key to running your first ability. Desktop reaches the service through a small local bridge, mcp-remote, which you add to its config file.

To configure Claude Code, see Connect Claude Code.

  • Claude Desktop installed (download)
  • Node.js 18+ on your PATH (required for npx mcp-remote)
  • A WP Engine account with at least one WordPress site
  • WP Engine AI access to create API keys

Create a User key with MCP set to Write. An Account key will not do: only a user key carries a person for an ability to run as.

Create a key in the WP Engine User Portal, then copy the secret — a user key starts with wpe_pat_, and it is shown once.

Platform Path
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
Windows %APPDATA%\Claude\claude_desktop_config.json

You can also open it from Claude Desktop: Settings → Developer → Edit config.

Merge this into your mcpServers object, or create the file if it does not exist yet:

claude_desktop_config.json
{
"mcpServers": {
"wpengine-coworker": {
"command": "npx",
"args": [
"-y",
"mcp-remote@0.1.38",
"https://api.ai.wpengine.com/v1/mcp",
"--header",
"Authorization: Bearer wpe_pat_YOUR_API_KEY_HERE"
]
}
}
}

Replace wpe_pat_YOUR_API_KEY_HERE with the key from step 1.

The bridge version is pinned on purpose: npx hands mcp-remote your API key on its command line, so an unpinned mcp-remote would run whatever release npm marks latest at launch. Upgrade it deliberately rather than dropping the version.

4. Restart and confirm Claude Desktop can see your sites

Section titled “4. Restart and confirm Claude Desktop can see your sites”

Fully quit and reopen Claude Desktop so it reloads the config, then ask:

Use the coworker MCP server to list my WordPress sites

Claude calls list_account_sites and returns your active registered sites, something like:

You have 3 WordPress sites connected:
1. example.com (example-prod) - Active
2. staging.example.com (example-staging) - Active
3. dev.example.com (example-dev) - Active

If no tools appear:

  • Confirm Node 18+ is on PATH (node -v, then which npx on macOS or where npx on Windows)
  • Check the JSON has no trailing commas
  • Confirm the key is a User key (wpe_pat_…) with MCP write permission
  • Review Claude Desktop logs under Settings → Developer
  • See Troubleshooting for anything else

Listing sites and searching a knowledge base work with what you have now. Running an ability does not — that needs a second, separate connection between you and each site.

This catches almost everyone out: registering a site with WP Engine grants nobody the ability to act on it, including the administrator who registered it. The two connections explains why.

Complete this once per site:

  1. Ask Claude: “What’s the WordPress connection status for my sites?”

  2. For any site that is not connected, Claude hands you a link. Open it while logged in to that site’s WordPress admin. If no link comes back, build it yourself:

    {site_url}/wp-admin/admin.php?page=power-overview&action=trigger_wp_connection

    Opening this link is the only way to start the connection — there is no option to start it manually anywhere in WordPress.

  3. Review the permissions, then confirm with Connect WordPress User. You land back in wp-admin, now connected. (The consent screen.)

Create a draft post on example.com titled 'Today in the news with WP Engine' using the coworker MCP server

Claude finds the site’s Create Post ability (wp-engine-ai/create-posts) with search_abilities, executes it with run_site_ability, and returns the new post ID and a link to the draft.


Last updated: