agent-ready · shopify

Make your Shopify store buyable by Claude, ChatGPT, Cursor.

Shopify ships you 60% of the way — JSON-LD on most themes, structured products.json, public cart API. The remaining 40% is variant-aware tool exposure, add-to-cart actions agents can call, inventory-state awareness, and shopper-side MCP that scales across all 4M+ Shopify stores. Most of it requires zero code changes to your theme.

Free wmcp.sh adapter works on every public Shopify store. Or have us audit yours for $499.

You're already 60% agent-ready. Here's the other 40%.

Shopify ships JSON-LD Product schema on most themes by default — that's the floor. The remaining work is variants, cart actions, and bridging Shopify's owner-side dev-mcp with the shopper-side stack agents like Claude / OpenAI / Cursor actually use when buying.

The agent-readiness diagnostic for Shopify.

1

Variants aren't exposed as separate agent-callable choices

Most Shopify themes render variants as a JS-driven dropdown. JSON-LD Product schema lists the parent product, but the actual sellable SKUs (size 10 in red, size 11 in blue) are buried in a JS array agents can't reliably parse.

→ Agent says: "I want Wool Runners size 10." Result: clicks add-to-cart on the default variant. Wrong SKU.

Fix: wmcp.sh's Shopify adapter pulls /products/<handle>.json which always returns the full variants array — every (id, title, price, available, options) tuple. Each variant becomes a callable tool the agent picks deterministically.

2

No add-to-cart action exposed to agents

Shopify's public storefront has /cart/add.js but no MCP wrapper. Agents have to either drive a browser session (slow, fragile) or you don't get the purchase.

→ Agent reads price + availability but can't act.

Fix: wmcp.sh exposes add_to_cart as an actionable tool for every Shopify store automatically. The agent calls it with {variant_id, quantity} and gets back the updated cart token, no browser required.

3

Inventory state changes aren't agent-discoverable

When a product is back in stock or a variant sells out, there's no webhook agents can subscribe to. Agents have to re-query, get stale data, or surface "in stock" to users when it isn't.

→ Agent recommends a product that just sold out 30 seconds ago. Trust degraded.

Fix: wmcp.sh caches with a short TTL (60s) for live queries and listens to /products.json?updated_at_min=… for backfill. For high-volume stores, we can wire a Shopify webhook on the store's side that pushes invalidations directly into our cache.

4

Multi-currency / multi-locale isn't agent-aware

Shopify Markets serves different prices, currencies, and product availability to different geos. Agents fetching server-side see the default locale, not the shopper's intent.

→ A UK shopper's agent gets USD prices because the request originated from a US-region serverless edge.

Fix: Pass locale + country hints in the agent's tool call. wmcp.sh forwards them as Shopify Markets headers so the response reflects the shopper's actual market.

5

No shopper-side MCP server (Shopify's dev-mcp is owner-side only)

Shopify shipped dev-mcp in 2026 — but it's for store operators managing their OWN store. The shopper agent calling add_to_cart across many stores has no first-party MCP from Shopify and isn't on their roadmap.

→ Every store needs its own integration, none of which scale.

Fix: wmcp.sh is the shopper-side MCP for the entire Shopify ecosystem. One URL: https://wmcp.sh/api/v1/tools?url=<your-product-page>. Works on 4M+ Shopify stores without store-by-store integration.

Validate, then ship.

Most Shopify stores need zero code changes. wmcp.sh works on top of what your theme already outputs.

10-minute Shopify checklist

Run curl 'https://wmcp.sh/api/v1/tools?url=https://YOUR-STORE.com/products/SOME-HANDLE'. You should see a tools array with get_price, get_availability, add_to_cart, and one tool per variant.
View source on the same product page. Confirm JSON-LD application/ld+json with "@type": "Product" is present. (Most themes ship this — Dawn, Sense, Refresh, Crave all do.)
Confirm /products/<handle>.json returns 200 (not blocked by your Plus Cloudflare rules). If 403, allowlist Claude-User + ChatGPT-User at your WAF.
Submit your store to wmcp.sh/directory — appears as an agent-discoverable store in our public list, drives indirect traffic from agents looking for shoppable inventory.
Hand the wmcp.sh URL to a Claude / Cursor / Codex user and watch them buy. That's the proof.

Live example.

Drop any Shopify product URL into wmcp.sh and you get back agent-callable tools. Here's a working example with Allbirds:

# Get tools for a Shopify product page
curl 'https://wmcp.sh/api/v1/tools?url=https://www.allbirds.com/products/mens-wool-runners'

# Response — agent sees:
{
  "adapter": "shopify",
  "product": { "title": "Men's Wool Runners", "vendor": "Allbirds" },
  "variants": [
    { "id": "39427184461330", "title": "US 10 / Natural Grey", "available": true },
    // ... +24 more variants
  ],
  "tools": [
    { "name": "get_price", "result": "$110.00" },
    { "name": "get_availability", "result": "in_stock" },
    { "name": "add_to_cart",
      "action": { "kind": "shopify_add_to_cart" },
      "description": "Add this product (default variant) to the cart." },
    // One add_to_cart_variant_X tool per variant
  ]
}

Ship it yourself, or have us do it.

Free · ~5 min

DIY: works out of the box

Most Shopify stores need zero code changes. Point any agent at your store's products via wmcp.sh, free.

  • Free 100 reads/day. $29/mo Pro for 10k+/day.
  • Submit your store to /directory (agent-discoverable).
  • Hand the URL to any MCP-capable agent — works immediately.
Try it free →

Common questions from Shopify operators.

I'm on Shopify — isn't my store already AI-ready out of the box?
Partly. Shopify ships JSON-LD Product schema on most themes by default — that's the foundation. Three pieces are still missing: WebMCP action markup on cart/checkout buttons, variant-aware tool exposure (agents pick size/color), inventory-real-time tools. Plus Shopify's official MCP server (dev-mcp) is OWNER-side. wmcp.sh fills the shopper-side gap by reading your products.json + variants and exposing add-to-cart actions agents can call.
Does this work with Shopify Plus, Basic, Advanced, custom themes?
All Shopify plans. The adapter hits public /products.json which every store exposes regardless of plan. Custom themes only break things if they disable products.json (rare). Headless Shopify (Hydrogen, custom React) is fully supported via theme-agnostic endpoints.
How is this different from Shopify's official dev-mcp?
dev-mcp is for store OPERATORS managing their own store (Admin API operations). wmcp.sh is for SHOPPERS and their agents (public storefront across many stores they don't own). Complementary, not competitive.
Can agents actually complete a purchase?
Add to cart: yes, every public store, via /cart/add.js. Final checkout: requires agent to drive a browser session (Computer Use, Browser Use) because Shopify Checkout is JS-heavy. We're shipping a 'checkout assist' tier that returns a pre-filled checkout URL the agent can hand to the human.
Do I need to add code to my Shopify theme?
No code changes for the basic adapter. Optional improvements: metafield with brand voice, static OpenAPI spec for custom apps, Storefront API for richer tools.
What about Cloudflare bot-protection on my Shopify Plus store?
Whitelist Claude-User, ChatGPT-User, GoogleOther in your Plus Cloudflare config. Or use wmcp.sh extension-mode which scrapes from a logged-in browser context.
Does this affect my SEO?
Positively. The same JSON-LD that's good for agents is good for Google Shopping rich results, Bing Shopping, AI Overviews.

The Shopify adapter in detail.

The wmcp.sh Shopify integration page covers everything the adapter does (products, variants, cart actions, search), with example curls + Python + cURL ready to paste: