Store admin
AI agents
Connect Claude or another MCP client to your store so an AI assistant can read and change storefront settings and per-item SEO on your behalf.
The Companion plugin publishes its storefront settings and the SEO of every product, post, page, category, tag and brand as tools an AI assistant can use. Connect an assistant such as Claude through MCP (the Model Context Protocol) and you can ask, in plain words, “change the promo popup headline” or “find the products with no meta description and write one for each”. Every change is saved through the same checks as the settings screen, exactly as if you had made it in wp-admin.
Before you start
Section titled “Before you start”| Requirement | Why |
|---|---|
| WordPress 6.9 or later | The tools use WordPress’s Abilities API, added in 6.9. On older versions they simply don’t appear. |
| HTTPS on the WordPress site | The connection sends a password. |
| Permalinks other than “Plain” | Set under Settings → Permalinks (for example Post name). |
| An MCP adapter | WooCommerce’s built-in WooCommerce MCP feature, or the standalone WordPress mcp-adapter plugin. |
| An MCP client | For example Claude Code or Claude Desktop, with Node.js installed for the connector. |
Connect an assistant
Section titled “Connect an assistant”-
Turn on MCP. Go to WooCommerce → Settings → Advanced → Features and switch on WooCommerce MCP. A developer can do the same with WP-CLI:
Terminal window wp option update woocommerce_feature_mcp_integration_enabled yes -
Create a user for the agent. Go to Users → Add New and create a dedicated Administrator account (the settings tools need administrator rights). A separate account lets you see what the agent changed and switch it off on its own.
-
Create an Application Password. Edit that user, scroll to Application Passwords, type a name such as “Claude” and click Add New Application Password. Copy the password shown; it is displayed only once.
-
Connect the client with your store’s address, the agent’s username and the Application Password. The commands for Claude Code and Claude Desktop are below.
-
Check it works. Ask the assistant to “list the storefront settings sections”. It should answer with the sections in the table below.
claude mcp add woocommerce_store \ --env WP_API_URL=https://YOUR-STORE.com/wp-json/mcp/mcp-adapter-default-server \ --env WP_API_USERNAME=AGENT_USERNAME \ --env WP_API_PASSWORD='APPLICATION_PASSWORD' \ -- npx -y @automattic/mcp-wordpress-remote@latestThe server name (woocommerce_store) goes before the --env flags. Add --scope user to use the
connection in every project.
Add the same values to claude_desktop_config.json, then restart Claude Desktop:
{ "mcpServers": { "woocommerce_store": { "command": "npx", "args": ["-y", "@automattic/mcp-wordpress-remote@latest"], "env": { "WP_API_URL": "https://YOUR-STORE.com/wp-json/mcp/mcp-adapter-default-server", "WP_API_USERNAME": "AGENT_USERNAME", "WP_API_PASSWORD": "APPLICATION_PASSWORD" } } }}The address /wp-json/mcp/mcp-adapter-default-server is the default MCP server. It offers three general tools
(discover, get information about, and run an ability) that give the assistant access to every published ability,
including WooCommerce’s own.
What the assistant can do
Section titled “What the assistant can do”Storefront settings
Section titled “Storefront settings”Each settings section has a pair of tools: one to read it and one to change it (named like
welabs-store/get-promo-modal-settings and welabs-store/update-promo-modal-settings). A map tool,
“List storefront settings sections”, tells the assistant what exists. These need an administrator account.
| Section | What it controls |
|---|---|
| General | Social profile links (footer and promo popup icons) |
| Colors | Colour palette, light and dark, and corner radius |
| Home slider | Home hero slider: slides, timing, shape |
| Shop slider | Shop-page banner |
| Promo tiles | Home promo cards |
| Promo popup | The first-order offer popup |
| Sale banner | Home season-sale banner |
| Deals | Home “Today’s deals” block |
| CTA banner | Home call-to-action banner |
| Testimonials | “What our customers are saying” cards |
| FAQ | FAQ page sections and questions |
| Footer | Footer columns, text and copyright bar |
| Contact page | Contact page text, address, phone, hours and form |
| Mobile tab bar | The phone bottom tab bar |
| Product page | Product sections and titles, gallery layout, review uploads |
| Trust badges | Store-wide trust badges under “Buy now” |
| Wishlist | Wishlist on or off, who may use it, empty text |
| Compare | Compare on or off, header icon, compared fields |
| Back-in-stock notifications | The notify-me sign-up and email timing |
| SEO | Website name, default sharing image, SEO plugin priority, patterns and page settings per language |
| Policy pages | Which page is each policy, per language |
Changes are partial: the assistant names only the fields it changes. A list (such as slides or FAQ sections) is replaced as a whole. Images must already be in your Media Library. If any part of a change is invalid, nothing is saved.
SEO of each item
Section titled “SEO of each item”Three tools work on individual products, posts, pages, product categories, tags and brands:
| Tool | What it does |
|---|---|
| Find items and their SEO gaps | Lists items of one type, optionally only those missing a title, description or social image, or marked hidden from search. |
| Get an item’s SEO | Shows an item’s SEO fields, what the storefront will actually print, and where each value comes from. |
| Update an item’s SEO | Changes an item’s title, description, sharing title, description and image, or hide-from-search. |
Updates go where you edit SEO today: into Yoast SEO’s or Rank Math’s own fields when one is active, otherwise into the plugin’s SEO box. The assistant can only reach items its user could edit in wp-admin, so a Shop Manager account (products and product categories, tags and brands) or an Editor account (posts and pages) is enough for SEO work.
Example requests
Section titled “Example requests”- “Show me the current promo popup settings.”
- “Change the promo popup title to ‘Welcome — free delivery on your first order’ and save it.”
- “Add a question to the FAQ under ‘Orders & shipping’ about delivery times: …”
- “Find the products with no SEO description and suggest one for each. Wait for my approval before saving.”
- “Which policy pages are not set?”
What is never offered
Section titled “What is never offered”Some settings are deliberately kept away from AI assistants, even read-only. Only a person in wp-admin can change them:
- sign-in credentials (Google, Facebook) and Cloudflare Turnstile keys;
- API Access and customer sessions;
- payment settings and the Payment & Security card;
- Header/Footer Scripts;
- the newsletter provider;
- the Header builder.
Use it safely
Section titled “Use it safely”- Review before you approve. Your MCP client asks before running any tool that changes something. Read-only tools (the “get”, “list” and “find” ones) run without asking.
- WooCommerce MCP is experimental. Besides the tools above, it exposes WooCommerce’s own product and order tools, which can create and delete. Read each request carefully before approving it.
- Use a dedicated account for the agent, so you can see its changes and remove its access without affecting anyone else.
- To disconnect, delete the Application Password (or the agent’s user), and switch WooCommerce MCP off again if you no longer need it.
- Changes reach shoppers within about 5 minutes, like any settings change.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Likely cause | Fix |
|---|---|---|
| The assistant finds no “welabs-store” tools | WordPress is older than 6.9. | Update WordPress. |
| The connection is refused | MCP is off, permalinks are “Plain”, or the site is not on HTTPS. | Check each item in Before you start. |
| “Not allowed” on settings tools | The agent’s user is not an administrator. | Use an Administrator account for settings work. |
| An update says an image was not found | The image ID is not an image in the Media Library. | Upload the image first, then ask again. |