Introducing WP-MCP: Manage Your WordPress Site Through AI

We all have spent years clicking through wp-admin. Creating posts, moderating comments, checking plugin updates, and reviewing site health. The same screens, the same menus, the same workflows. Thousands of times.

So I built something to stop doing that.

WP-MCP is an open source MCP server that connects Claude (or any MCP-compatible AI) directly to your WordPress site. You talk to Claude. Claude talks to WordPress. Posts get created, settings get updated, plugins get checked. No browser tabs. No wp-admin. Just a conversation.

The package is live on npm right now. Install it with npx @wpgaurav/wp-mcp setup and you can be running in under 5 minutes.

Why I Built This

Documentation for WP MCP TypeScript API

I wasn’t trying to build a product. I was trying to fix my own workflow.

I manage multiple WordPress sites: client sites, my own projects, and sites I consult on. Every week, I repeat the same tasks across all of them:

  • Check site health
  • Review pending comments
  • Verify plugin update status
  • Create draft posts from outlines I already wrote

None of these tasks are hard. They are just slow. And they add up.

I’d already been using Claude for writing and development work. The obvious question was: why can’t Claude do these WordPress tasks directly?

MCP (Model Context Protocol) made that possible. It is a standard by Anthropic that lets AI assistants interact with external services through defined tools. I needed a server that would expose WordPress REST API endpoints as MCP tools.

The existing options were either too complex to configure, required plugin installation on the WordPress side, or did not expose all endpoints I needed. So I built my own, then cleaned it up, added auto-discovery, and published it.

What WP-MCP Does

The server ships with 37 hand-crafted tools covering core WordPress REST API resources: posts, pages, media, categories, tags, comments, plugins, themes, users, settings, menus, search, and site health.

But the most useful feature is auto-discovery.

When you set WP_MCP_DISCOVER=true, wp-mcp scans your site’s /wp-json/ endpoint at startup and auto-generates tools for plugin namespaces it finds.

  • If WooCommerce is installed, you get WooCommerce tools
  • If ACF exposes endpoints, you get those tools too
  • If Rank Math, Yoast, Gravity Forms, or custom plugin endpoints exist, they can be discovered and exposed

Auto-discovered tools follow a clean naming convention: {namespace}_{resource}_{action}.

Example: WooCommerce products become tools like wc_products_list, wc_products_get, and wc_products_create.

Both STDIO and HTTP (StreamableHTTP) transports are supported. STDIO is ideal for Claude Desktop and Claude Code. HTTP works for custom clients.

How to Set It Up

You need only three things:

  • Node.js 18+
  • A WordPress site with REST API enabled
  • An Application Password from your WordPress user profile

Generate Application Password in WordPress at Users → Your Profile → Application Passwords. Copy it when shown.

Guided Install and Setup of WP-MCP

Run this in terminal/command prompt:

npx @wpgaurav/wp-mcp setup

This runs an interactive wizard and will:

  • Ask for your WordPress URL, username, and Application Password
  • Test the connection
  • Write the config to Claude Desktop and/or Claude Code automatically
  • That’s it. Restart Claude and your WordPress tools are ready.

To get Application Password, go to your profile inside WordPress dashboard (/wp-admin/profile.php) and look for Application Passwords section.

Manual Installation

# Run directly with npx
npx @wpgaurav/wp-mcp

# Or install globally
npm install -g @wpgaurav/wp-mcp

Set environment variables

Set environment variables (only if you are doing manual install):

VariableRequiredDefaultDescription
WP_URLYesWordPress site URL (no trailing slash)
WP_USERNAMEYesWordPress username
WP_APP_PASSWORDYesApplication Password
WP_MCP_TRANSPORTNostdiostdio or http
WP_MCP_PORTNo3000HTTP transport port
WP_MCP_HOSTNo127.0.0.1HTTP transport bind address
WP_MCP_DISCOVERNotrueAuto-discover custom endpoints
WP_MCP_MAX_TOOLSNo128Maximum total tools (core + discovered)

Claude Desktop config

{
  "mcpServers": {
    "wordpress": {
      "command": "npx",
      "args": ["wp-mcp"],
      "env": {
        "WP_URL": "https://yoursite.com",
        "WP_USERNAME": "yourusername",
        "WP_APP_PASSWORD": "abcd 1234 efgh 5678 ijkl 9012"
      }
    }
  }
}

Claude Code config

claude mcp add wordpress \
  -e WP_URL="https://yoursite.com" \
  -e WP_USERNAME="yourusername" \
  -e WP_APP_PASSWORD="abcd 1234 efgh 5678 ijkl 9012" \
  -- npx wp-mcp

Restart Claude Desktop or open a fresh Claude Code session.

List of Claude desktop connectors and configurations
WordPress tool permissions interface for Claude

Ask: “show me my latest 5 posts”. If your posts appear, setup is complete.

Know even more about setup here →

No Heavy Setup Required

No config files on WordPress. No JSON manifests on your site. No Docker required. No WordPress plugin installation for wp-mcp itself.

wp-mcp connects through WordPress REST API + Application Passwords. That is why setup stays fast and clean.

What I Actually Use It For

I care about real use cases, not theoretical demos. These are workflows I use every week.

1) Weekly site health checks

Every Monday morning, I ask:

Show me the site health status.

I get critical issues, recommendations, and passed tests in seconds. This used to take 10+ minutes of dashboard clicks.

2) Markdown to draft publishing

I write in markdown, then send one command:

Create a new draft post titled ‘Redis Object Caching on CloudPanel’ with this content. Category: WordPress. Tag: Performance.

Post created. No block editor switching. No copy-paste formatting cleanup. No forgotten category assignment.

3) Comment moderation

Show me all pending comments from the last 7 days.

I review in chat, approve legit comments, trash spam. For active comment sites, this is significantly faster than the wp-admin comments table.

4) Plugin risk audits

List all installed plugins with versions and update status.

Which plugins have not been updated by their developers in over a year?

That second query is excellent for proactive maintenance risk detection.

5) WooCommerce operational queries

With auto-discovery enabled:

Show me products with stock under 10 units.

Without MCP, this often needs SQL or a reporting plugin. With wp-mcp, one sentence.

6) Content hygiene audits

List published posts that do not have a featured image.

Show posts published before 2023 that have not been updated since.

These were spreadsheet tasks before. Now they are quick queries with immediate results.

Design Decisions (Deliberate Choices)

Single-site first

wp-mcp currently connects to one site per instance. Multi-site support is planned, but I shipped single-site first because it matches real daily workflow: focus on one site context at a time.

No WordPress plugin required

wp-mcp runs externally and connects through REST API + Application Password. This is useful when plugin install rights are restricted or when you want to minimize plugin footprint.

Hand-crafted core tools + auto-discovery for plugin gaps

Core tools are hand-designed for better parameter naming, defaults, and validation. Auto-discovery handles plugin endpoints where hand-crafting every method is not practical.

Minimal configuration

Three environment variables. That is it. Setup should take 2 to 3 minutes, not 20.

Where wp-mcp Fits in the WordPress MCP Ecosystem

I am not claiming WP-MCP is the only option. There are multiple good MCP servers, and that is healthy.

  • Official WordPress adapter (WordPress/mcp-adapter): deep core alignment through Abilities API in WordPress 6.9+. Best long-term canonical path for many teams, but requires plugin/composer workflow.
  • Automattic remote MCP: strong OAuth 2.1 enterprise posture. Excellent for orgs with strict security/compliance.
  • Other community servers: some are stronger on multi-site or Dockerized deployment patterns.
  • wp-mcp niche: fastest setup, no WordPress plugin install requirement, and practical auto-discovery for plugin REST namespaces.

The ecosystem is still young. Multiple approaches are good right now. Different workflows need different tradeoffs.

What’s Next

Roadmap items are practical and workflow-driven:

  • Multi-site support in one server instance
  • Better error messages for auto-discovered routes
  • Response caching for read-heavy tasks
  • Improved handling of long block-heavy content payloads
  • Batch operations for bulk updates

I am also evaluating MCP resource primitives so the assistant can read passive site context before tool calls, making sessions smoother.

Repository: wpgaurav/wp-mcp on GitHub
Package: @wpgaurav/wp-mcp on npm

Frequently Asked Questions

Do I need to install a plugin on my WordPress site to use wp-mcp?

No. wp-mcp connects to your site through the built-in WordPress REST API using Application Passwords. No plugin installation required on the WordPress side. You just need Node.js 18+ on the machine where you’re running Claude Desktop or Claude Code.

Is wp-mcp safe to use on production sites?

wp-mcp uses the same REST API that WordPress itself uses. It can’t bypass WordPress permissions. Create a dedicated WordPress user with only the capabilities you need (Editor for content work, Administrator only if you need plugin and theme management). The Application Password is scoped to that user’s role, so WordPress handles permission checks on its side.

What WordPress version do I need?

WordPress 5.6 or newer. That’s when Application Passwords were added to Core. The REST API has been available since WordPress 4.7, but you need 5.6+ for the authentication method wp-mcp uses. If you’re running anything older than 5.6, you should update anyway for security reasons.

Can I use wp-mcp with WooCommerce?

Yes. Set WP_MCP_DISCOVER=true in your environment variables. On startup, wp-mcp will scan your site and automatically generate tools for WooCommerce REST API endpoints. You’ll get tools for products, orders, customers, coupons, and more.

Does wp-mcp work with AI tools other than Claude?

Yes. wp-mcp follows MCP, so any MCP-compatible client can connect. Claude Desktop and Claude Code are the most common clients right now, but the protocol is open.

How is this different from the official WordPress MCP adapter?

The official WordPress/mcp-adapter is a PHP plugin that runs inside WordPress and uses the Abilities API in WordPress 6.9. wp-mcp is an external Node.js server that connects via REST API. wp-mcp requires no WordPress-side plugin installation, offers auto-discovery for plugin endpoints, and has minimal setup.

Final Note

WP-MCP is free, open source, and usable right now. Run npx @wpgaurav/wp-mcp setup with your site credentials and test it on real tasks. If it saves even 30 minutes a week, it pays for setup time in the first session.

If you hit edge cases or want features, open an issue on GitHub or drop a comment here. I am building this for my own workflow and improving it with real-world usage feedback.

Disclaimer: This site is reader‑supported. If you buy through some links, I may earn a small commission at no extra cost to you. I only recommend tools I trust and would use myself. Your support helps keep gauravtiwari.org free and focused on real-world advice. Thanks. — Gaurav Tiwari

Leave a Comment