WooCommerce MCP: Talk to your store like it’s your AI assistant

This post covers what MCP is, how it works, and how to get started with the built-in Abilities. For more on AI, commerce, and how to use AI to manage your store, visit our Agentic Commerce page.

I’ve been deep diving into something really exciting in WooCommerce: the Model Context Protocol integration (MCP). MCP first shipped as a beta in 10.3 and has been maturing across releases. Now, with WooCommerce 10.9 and WordPress 7.1+, the stack is solid enough to build some seriously useful things on top of it. So, I went ahead and did exactly that.

Picture this: we’re chatting with an AI assistant, and we say something like “Show me my low-stock products” or “Create a product called Winter Hoodie for $39.99.” Our WooCommerce store responds, does the work, and gives back the results. No clicking through the WordPress Dashboard, no manual REST API calls. Just natural conversation turning into real store actions.

That’s what MCP enables. Throughout this post, I’ll be using Claude Code as the AI assistant, but MCP works with any compatible client: Cursor, VS Code, or anything else that speaks the MCP protocol. Use whatever works best for you.

Let’s explore it together!

What is MCP?

↑ Back to top

Think of MCP as a universal translator between AI tools and our WooCommerce store. Normally, if we want AI to interact with our store, we’d need to:

  • Build custom REST API integrations.
  • Handle authentication ourselves.
  • Write a bunch of code to parse responses.

MCP changes all that. It’s an open-source standard that lets AI assistants like Claude, Cursor, or VS Code talk directly to systems like WooCommerce using natural language.

With MCP:

  • AI can discover what our store can do.
  • AI can perform those actions safely.
  • Everything works within our existing permissions.

So when we say, “List all products under $20 USD,” MCP translates that into something WooCommerce understands, runs it securely, and brings back the results.

How does WooCommerce MCP work?

↑ Back to top

Two pieces work together to make this happen, and they both build on existing WooCommerce security.

The building blocks

WordPress Abilities API

The WordPress Abilities API is a way for WordPress plugins to register “Abilities”, basically things they can do. Think of it like a menu: WooCommerce tells WordPress, “Here’s everything I can do”, and AI assistants can read that menu and pick what they need. Each ability has a name like:

  • woocommerce/products-query: list all products
  • woocommerce/orders-query: fetch orders

The Abilities API shipped in WordPress 6.9 as a core feature. It provides a standardized registry that any plugin can hook into, so WooCommerce no longer needs to bundle it separately. For those building Custom Abilities, they’re registered on the wp_abilities_api_init hook.

WordPress MCP Adapter

The MCP Adapter is the translator. It takes MCP messages from AI assistants and converts them into something WordPress understands. Think of it as the middleman that speaks both “AI protocol” and “WordPress.”

The flow of communication

When we type “list all products” in Claude Code, here’s what happens step by step:

AI Client (Claude, etc.)

    ↓ (MCP protocol over stdio/JSON-RPC)

Local MCP Proxy (mcp-wordpress-remote)

    ↓ (HTTP/HTTPS requests with authentication)

Remote WordPress MCP Server (mcp-adapter)

    ↓ (WordPress Abilities API)

WooCommerce Abilities

    ↓ (direct operations)

WooCommerce Core

In plain terms, Claude Code sends a message to a small proxy tool running on our machine. The proxy converts it to a secure web request and sends it to our WordPress site’s MCP endpoint. The MCP Adapter looks up which ability to run, the ability’s callback executes (querying orders, products, etc.), and the result flows back the same way.

The local proxy (@automattic/mcp-wordpress-remote) is a small Node.js tool we install once during setup and then forget about. Its job is to translate between the way AI clients communicate (stdio) and the way WordPress works (HTTP).

Where things stand today

↑ Back to top

MCP landed as a beta in WooCommerce 10.3 with product and order Abilities. The update since then was the MCP Adapter v0.3.0 migration in 10.4, which updated the transport layer. Since then, the MCP surface has been stable since 10.9 and beyond, which is what we’re building on.

MCP is still in developer preview, so the built-in Abilities are limited to product and order CRUD (create, read, update, delete). But the foundation is solid, and that’s where Custom Abilities come in.

What can we do with WooCommerce MCP right now?

↑ Back to top

Out of the box, WooCommerce ships with nine MCP Abilities:

Products:

  • woocommerce/products-query
  • product-create
  • product-update
  • product-delete

Orders:

  • woocommerce/orders-query
  • order-notes-query
  • order-create
  • order-update-status
  • order-add-note

This is already powerful enough to build some really cool workflows. But where it gets really interesting is with Custom Abilities.

Prerequisites

  • A staging site (WooCommerce MCP is in developer preview)
  • WooCommerce 10.9 (or 10.3+)
  • WordPress 6.9+ (for the core Abilities API)
  • Node.js 22+ (required by the latest mcp-wordpress-remote)
  • Application password
  • An MCP client (I’ll use Claude Code). Note: Claude Code requires a Claude Pro or Max plan ($20/mo+) or Anthropic API credits. It’s not available on the free tier.

Installing MCP Adapter

Option 1: Head over to WP Admin > Plugins > Add new and search for MCP Adapter.

Option 2: Install via WP-CLI

wp plugin install --activate mcp-adapter

Setting up the connection

Create an Application Password

  • In your store’s WP Admin dashboard, go to Users > Profile.
  • Scroll to “Application Passwords” and select “Add Application Password” 
  • Save the generated password and your username.

Configure Claude Code

Open the Terminal and run:

claude mcp add \
  --env WP_API_URL=https://yourstore.com/wp-json/mcp/mcp-adapter-default-server \
  --env WP_API_USERNAME=your-username \
  --env WP_API_PASSWORD='your-application-password' \
  woocommerce_store \
  -- npx -y @automattic/mcp-wordpress-remote@latest

Important:

  • Replace yourstore.com with the actual staging site URL.
  • Replace the your-username and your-application-password part with the actual credentials.
  • Restart Claude Code to load the new configuration.

For local development with HTTP: For testing locally without HTTPS, add this filter:

add_filter( 'woocommerce_mcp_allow_insecure_transport', '__return_true' );

Demo 1: Built-in WooCommerce Abilities

↑ Back to top

Let’s explore the default Abilities that come with WooCommerce. These work right away with zero custom code.

List all products

Ask AI client: “List all products in the store.”

What happens behind the scenes:

  • MCP calls the ability: woocommerce/products-list
  • Returns product data with names, prices, stock status, etc.

Create a product

Try this: “Create a product named ‘Demo Hoodie’ priced at $29.99.”

MCP calls:

  • Ability: woocommerce/products-create
  • Result: A new product appears in the store!

Update a product

Say: “Update the Demo Hoodie price to $39.99.”

MCP calls:

  • Ability: woocommerce/products-update
  • The price changes instantly!

Add an order note

Try: “Add a private order note to #5631...”

MCP calls:

  • Ability: woocommerce/order-add-note
  • A new order note is created!

Pretty amazing, right? These built-in Abilities make AI-assisted store management feel natural.

Get your business started on WooCommerce
Kamlesh Vidhani Avatar

About

On this page

1 comment

  1. rajangupta

    Clean idea — makes store management feel way more natural. Curious how it handles complex queries and performance at scale though, especially on larger WooCommerce setups.

Never miss a beat — join our mailing list

View our privacy policy. You can unsubscribe anytime. We track email opens and clicks for measurement and optimization purposes.

Subscribing...

There was an error subscribing; please try again later.

Thanks for subscribing!
Emails will be sent to

You're already subscribed!
Emails are sent to

Use of your personal data
We and our partners process your personal data (such as browsing data, IP Addresses, cookie information, and other unique identifiers) based on your consent and/or our legitimate interest to optimize our website, marketing activities, and your user experience.