View-source on a live Liquid store now loads a Shopify-hosted WebMCP script, and leadership asks whether ChatGPT can already fill the cart from a product page. Developers in the same week are asking whether legacy cart tools on /api/mcp still answer after 31 August 2026, and whether policy questions survive the move to UCP MCP.
Those are different doors onto the same brand. Shopify WebMCP is the in-tab door: the page registers catalogue, cart, checkout, and policy tools with the browser so an agent can call them instead of simulating clicks. Remote Storefront MCP, UCP catalog search, and the admin Claude connector stay on their own paths.
If you run an established Shopify catalogue, the useful work is naming which door you are looking at, then testing whether your theme and data can survive the in-tab one.
Introduction
Shopify documents WebMCP tools on every Liquid storefront and on the Hydrogen developer preview. There is nothing to install on hosted Liquid. An agent that supports the proposed WebMCP standard can search products, change the shopper's live cart, and take that shopper to checkout or order history, all in the tab they are looking at.
Agent support is currently limited to Chromium-based browsers, including Chrome origin-trial builds. The tools are live. Most shoppers still cannot call them. That gap is why a changelog line can read like a channel launch while the storefront still converts the way it did last month.
Community traffic this month sits on the remote side of MCP. Builders want a hard answer on deprecated get_cart / update_cart behaviour after 31 August, a policies and FAQ tool that exists on /api/mcp and is still missing from /api/ucp/mcp, and catalog payloads that return prices in minor units so models quote $600 for a $6 tee. Those tickets stay on the remote endpoints. WebMCP adds a browser-native way to do a subset of the same jobs while the shopper watches.
This article is the map we use when a merchant hears "MCP" and assumes one product. Adjacent admin chat belongs in Shopify Claude connector: setup, permissions, and risks. Off-site discovery belongs in Shopify AI product discovery: UCP catalog and data readiness. This piece stays on the page in the tab.
What changed
Shopify registered a fixed tool set on Liquid storefronts. Independent researchers first noticed a script from cdn.shopify.com/storefront/webmcp/ on live brands, with the same tools on homepage, collection, and product templates. Shopify then documented the tools and the Hydrogen preview path. The public changelog is the source of truth for names and behaviour.
Catalogue tools (search_catalog, browse_store, get_product, show_variant) read product, collection, and search data through the Storefront API. Cart tools (get_cart, update_cart, cancel_cart) call standard storefront actions, the same Shopify.actions surface apps use. If the theme opens a cart drawer on those actions, the agent triggers that drawer too. Checkout and account tools (proceed_to_checkout, manage_orders) navigate the live session. search_shop_policies_and_faqs answers from the store's own policy and FAQ content.
update_cart is allowed to refuse an ambiguous request and return options instead of guessing a line. proceed_to_checkout checks that the cart is not empty. manage_orders sends a logged-out shopper through login first. None of those tools charges a card. The shopper still finishes payment in checkout.
The same ten tools appear on every template. Page-scoped tools (a size-guide action only on PDP, a payment action only on checkout) are allowed by the WebMCP model. Shopify shipped one set everywhere so Liquid merchants did not have to configure anything. That is a sane day-one default. It also means a tool can be advertised on a template where the underlying UI never existed.
A name collision is already in the wild. webmcp.dev is a third-party library with a corner widget and a token flow into Claude Desktop. Shopify's implementation is the proposed browser standard plus commerce tools. Do not paste that widget onto a theme and call the job done.
Who is affected
Hosted Liquid themes already ship the script. Plus and non-Plus stores on Online Store 2.0 are in the same bucket. Vintage-era Liquid that still renders is still a Liquid storefront in Shopify's wording. You are affected even if marketing never asked for an AI channel.
Hydrogen and other headless stacks are not. Shopify added WebMCP to the Hydrogen developer preview. Production headless remains a deploy you own: standard events and actions, then the preview, then a release. Until then, agents in the tab still scrape your React tree the hard way, and remote agents still hit MCP servers.
Custom cart and variant UI is the practical failure mode. If add-to-cart is a private AJAX path that never calls Shopify.actions, humans may still see a drawer while WebMCP cart tools miss the UI contract. If swatches paint a selected state without writing the product form's variant id, show_variant will look decisive and still land the wrong SKU. That is the same isolation test we use in Shopify theme customisation limits: unpublished Dawn or Horizon, one Add to cart, compare the line.
Catalogue and policy owners are affected even when the theme is clean. search_catalog returns titles, prices, and availability the Storefront API already has. Thin descriptions, missing media, and empty policy pages become the agent's voice. That is the same data-readiness problem as UCP, now reachable from a shopper's own browser.
What to do now
Treat this as a storefront contract test, not a campaign.
| Surface | Where it runs | Who it serves | What you actually control |
|---|---|---|---|
| Shopify WebMCP | Shopper's browser tab on Liquid (Hydrogen preview) | An in-tab agent the shopper brought | Theme actions, variant wiring, policy copy, catalogue fields the Storefront API exposes |
Storefront MCP (/api/mcp) | Remote HTTP tools | Chat apps and custom agents that never load your theme | Migration off legacy cart tools, UCP capability declarations, payload shape |
| UCP catalog MCP | Shopify catalog endpoints | Agents discovering products on or off your domain | Feed-quality catalogue, markets, media, identifiers |
| Claude connector | Merchant's Claude session + Shopify admin | Staff asking operational questions, sometimes writing live data | Install permissions, who may approve writes |
1. Confirm which conversation you are in. A developer counting down 31 August is on Storefront MCP. A founder who saw a LinkedIn post about agents shopping "directly" is usually describing WebMCP. A marketing lead asking why ChatGPT Shopping went quiet is on syndication and Global Catalog, which is the pattern in the UCP readiness post.
2. Put standard storefront actions on the cart path. Cart tools reuse the same actions apps use. Override openCart and line updates so the drawer or cart page the shopper knows is the one the agent triggers. The anatomy of a high-performance Shopify theme is still the file-level standard: one owner for the cart UI, not a private fetch the theme forgot to document.
3. Walk four templates with the same jobs. Homepage, collection, product, cart. Search a real SKU. Ask for a colour or size and watch show_variant. Add, change quantity, and empty the cart. Open policies. Proceed to checkout with a non-empty cart, then with an empty cart and confirm the tool refuses. Log where the UI and the tool disagree.
4. Fix the strings the tools will speak. Policy pages, shipping tables, and FAQ content feed search_shop_policies_and_faqs. Remote builders already hit a gap: that tool exists on /api/mcp and they cannot find an equivalent on /api/ucp/mcp before the sunset. On WebMCP it is on the page. Empty policy HTML is an empty answer in both worlds.
5. Keep checkout human. Watch proceed_to_checkout land on the checkout you actually run, including any checkout UI extensions. Checkout abandonment when the funnel looks healthy still applies. An agent that can open checkout does not repair a broken shipping or payment step.
6. Decide Hydrogen on a release train. If you are headless, WebMCP is a framework and actions project, not a CDN surprise. Scope it with the rest of standard events work rather than a one-line "enable AI" ticket.
What this does not change
Staff chat still needs the Claude connector's permission model. Off-site discovery still needs catalogue quality and UCP. Admin assistance still sits in Sidekick. Calling all of that "MCP" hides which team owns the next ticket.
Order source for an in-tab agent that used standard cart actions will often look like the shopper's own session. Plan for messier direct buckets before peak, rather than after the export looks wrong.
An agent that can call search_catalog still lands the shopper on templates marketing cannot edit. Recover that path in the customisation-limits article before you brief a visual redesign so the agent has somewhere honest to navigate.
Chromium origin trials and a proposed spec (Shopify is in the room with Google and Microsoft) are the current client story. Build the contract. Leave traffic forecasts for when a stable client exists.
Conclusion
Shopify WebMCP puts structured storefront tools on Liquid pages so an in-tab agent can shop without scraping the DOM. The tools are already on hosted themes. Most buyers still cannot invoke them. The congestion is naming: WebMCP, Storefront MCP, UCP catalog, and admin connectors share an acronym and split across tab, remote API, and staff chat.
Test the contract you already own. Standard cart actions, honest variants, policy copy, and a checkout the shopper still confirms. Headless teams treat Hydrogen preview as a deploy. Ignore the third-party widget that borrowed the same name.
If you want that map against your theme and catalogue, book a Shopify stack assessment with oContis Studio. Shopify theme development is the recovery pass when custom cart and variant code sits outside Shopify.actions and agents will inherit the gap.



