Every Shopify store we read is already serving an agent API
Key takeaways
- We read 28 live Shopify storefronts on 25 August 2026. All 28 serve a file at
/agents.mdtelling AI agents how to buy from the store, and all 28 serve a machine-readable discovery document at/.well-known/ucp. - 26 of the 28 name those endpoints in their own
robots.txt, in comment lines the platform writes for you. - The discovery document advertises a live MCP endpoint. We called
tools/liston one store: it returned 13 tools, includingsearch_catalog,create_cart, and the complete checkout lifecycle fromcreate_checkouttocomplete_checkout. - None of these stores had opted out of serving it. It looks like a platform default: the same on all 28, down to the protocol version. We did not ask a merchant whether they enabled it, and we did not go looking for a setting.
- We have no evidence that anything is coming through it. We measured what is being served, not what is being used, and those are different articles.
Published 25 August 2026 by Adot Technologies Inc, the team behind Arvio. Everything below came from read-only requests to public endpoints, made on 25 August 2026. The one exception — a single non-mutating call to one store's agent endpoint — is described in full in the method section.
The quick version
Open these three URLs on your own store. They are public, and they are already there:
https://yourstore.com/agents.md— instructions written for AI shopping agentshttps://yourstore.com/.well-known/ucp— the machine-readable version of the same thinghttps://yourstore.com/robots.txt— the first three lines now point at both
The agent surface on all 28 stores
| Endpoint | Stores serving it |
|---|---|
/agents.md |
28 / 28 |
/.well-known/ucp |
28 / 28 |
sitemap_agentic_discovery.xml |
27 / 27 stores whose sitemap we could read |
Agent endpoints named in robots.txt |
26 / 28 |
| Protocol version reported | 2026-04-08 on 28 / 28 |
| Transports advertised | mcp and embedded on 28 / 28 |
The uniformity is the point. Twenty-eight stores, different themes, different countries, catalogues from ten products to five thousand, and the agent surface is the same shape on all of them.
Inside the agents.md file
The files run between 3,944 and 4,453 bytes. All 28 point agents at the same two things: a Shop skill at https://shop.app/SKILL.md, and the Universal Commerce Protocol at ucp.dev.
The file reads like documentation written for software rather than for you. It describes a six-step flow — discover, search, cart, checkout, fulfil, complete — and then sets a boundary, quoted verbatim from the copy served on one store:
Checkout requires human approval. Agents must not complete payment without explicit buyer consent.
The rule is addressed to the agent. The file is served to anyone who asks for it.
The three lines in your robots.txt
This is the part we did not expect. On 26 of the 28 stores, robots.txt opens with comment lines naming the agent endpoints. Quoted from one store, changing only the domain:
# Agent instructions: https://yourstore.com/agents.md
# UCP discovery: https://yourstore.com/.well-known/ucp
# UCP/MCP endpoint: https://yourstore.com/api/ucp/mcp
The two stores without them are the two whose robots.txt had been customised — 144 and 159 lines against the platform default of 50. Editing that file appears to cost you the agent advertisement. Worth knowing before anyone touches yours.
The MCP endpoint's tool list
The discovery document is a list of promises. We made one call to check whether anything is behind it: a single tools/list request to one store's MCP endpoint. It returned HTTP 200 and 13 tools.
| Tool | What it is for |
|---|---|
search_catalog |
Search the store's products |
lookup_catalog |
Look up products or variants by identifier |
get_product |
Full product detail |
create_cart · get_cart · update_cart · cancel_cart |
The cart, end to end |
create_checkout · get_checkout · update_checkout |
The checkout, end to end |
complete_checkout |
Takes the payment |
cancel_checkout |
Cancels it |
get_order |
Order lookup afterwards |
Alongside those, the discovery document advertises eight capabilities on all 28 stores: catalogue search, catalogue lookup, cart, checkout, discount, fulfilment, order, and a Shopify-specific catalogue extension.
Every step of a purchase has a name on that list, and the list is live rather than proposed. Whether any of those tools work when they are called is a separate question, and one tools/list call does not answer it.
Four things worth knowing
Your catalogue was already readable. Anyone could always read a Shopify store's published products at /products.json. The agent endpoints do not open the catalogue. They standardise where to look for it.
The discovery document exposes your myshopify.com address. All 13 of our custom-domain stores publish their underlying *.myshopify.com host in /.well-known/ucp, because the service endpoints are written against it. If you have been treating that address as internal, it is not.
Prices come back in minor units. The tool descriptions state it plainly: {"amount": 600, "currency": "USD"} is $6.00. If you build anything against this, that is where the first bug will be.
The human-approval rule is a rule for the agent, not a control in your admin. We did not find a setting anywhere in this surface that a merchant turns off. We also did not look for one in the admin. No store we read had opted out of serving any of it.
What this is not
It is not evidence that anyone is buying this way.
We measured what 28 stores serve. We did not measure a single order, session, or agent visit, and we have no way to measure them from outside a store's admin. Anybody telling you agentic commerce is already driving revenue is making a claim we could not check, and the honest version of what we found is narrower and duller: the plumbing is installed and switched on, in every store we looked at, without anyone asking for it.
Whether water ever runs through it needs data we do not have: server logs, order sources, and a merchant willing to share both.
Checking your own store
- Open all three URLs. Confirm they resolve. They almost certainly do.
- Read your own
agents.md. It describes your store to a machine. It is the only page on your site written by the platform about you. - Search your own catalogue the way an agent would. If
search_catalogis how a shopper's assistant finds your products, then the words in your product titles and descriptions are doing a job they were not written for. - Check what a sold-out product looks like through that surface. We measured that the median store has 3.9% of its catalogue entirely unavailable and still published — and an agent asking for something buyable is a harsher reader of that than a human browsing a collection.
Method
Sample. The same 28 live Shopify storefronts as our catalogue survey: a convenience sample of stores that have installed our app at some point, all read on 25 August 2026. Not random, not representative of Shopify overall. Stores without a public catalogue, with invalid JSON responses, or with fewer than 10 published products were excluded before any results were looked at.
Collection. GET requests only, one per second, with a self-identifying user agent, to /agents.md, /.well-known/ucp, /robots.txt and /sitemap.xml.
The one exception. To check whether the advertised MCP endpoint was real rather than declared, we made one POST to one store: a JSON-RPC tools/list call, which is the discovery method the protocol documents and does not create, change or cancel anything. We did not call any cart, checkout, discount or order tool on any store, and we did not repeat the call.
A measurement error we corrected. Our first pass reported that no store exposed its myshopify.com host, which contradicted three stores we had read by hand. The discovery document escapes its slashes — https:\/\/ — and our pattern did not allow for that. Corrected, the figure is 13 of 13 custom-domain stores. We are documenting it because the first number was wrong for an hour and would have been publishable-looking if we had not checked it against something we had read with our own eyes.
What we could not verify
- Whether any of it is used. No traffic data, no order attribution, no agent visits. Not measurable from outside.
- Whether merchants can opt out, or ever opted in. We read what the stores serve. That all 28 serve the same thing is why we call it a default, but it is an inference from uniformity, not a merchant telling us so. We did not look in the admin and we are not going to guess at a setting we have not seen.
- What the tools do when called properly. We verified that the endpoint lists 13 tools. We did not exercise any of them, so we cannot tell you what a real agent checkout does on a real store.
- Whether the two stores missing the
robots.txtlines lost them by editing. The correlation with customised files is exact in our sample, and a correlation across two stores is not a finding. - Anything about other platforms. We looked at Shopify storefronts, nothing else.
What we still don't know
Whether this changes what a product page is for. Product copy is written on the assumption that a human is reading it. If the buyer's first reader is an agent calling search_catalog, the useful text may be the structured fields rather than the paragraphs. Nobody, us included, has measured which one an agent actually favours. That is a real experiment and we have not run it.
FAQ
What is the agents.md file on my Shopify store?
A file the platform serves at /agents.md describing how AI shopping agents should interact with your store. All 28 stores we read had one, between 3,944 and 4,453 bytes, and none of their owners enabled it.
What is UCP?
The Universal Commerce Protocol, documented at ucp.dev. In practice it is a discovery document at /.well-known/ucp that tells an agent which protocol versions, transports and capabilities the store supports. Every store we read reported version 2026-04-08.
Does my Shopify store have an MCP endpoint?
If it is like the 28 we read, yes, advertised at /api/ucp/mcp. We called tools/list on one and it returned 13 tools covering catalogue search, carts and the full checkout lifecycle.
Can an AI agent buy from my store without me knowing?
The instruction file states that checkout requires explicit buyer consent, so the approval sits with the shopper, not with you. What we can say from measurement is that the endpoints are live and that the tool list covers the whole purchase; what happens through them is not visible from outside your admin.
What is sitemap_agentic_discovery.xml?
A second sitemap, served alongside the normal one, containing exactly one URL: your /agents.md. Every store whose sitemap we could read had it.
Does this affect my SEO?
Not in the sense the question usually means. It is a separate discovery surface with its own entry points, and nothing in it changes how your pages are crawled or ranked.
Should I edit my robots.txt?
Be aware of the trade. The two stores in our sample with customised robots.txt files were also the two missing the agent endpoint comment lines. That is a pattern across two stores, not a rule, but it is worth checking what your file says before and after anyone edits it.
How do I check all of this myself?
Open /agents.md, /.well-known/ucp and /robots.txt on your own domain. Everything in this article came from those three files plus one tools/list call, and all of it is public.
Related: How much of your Shopify catalogue is unbuyable right now — from the same 28-store crawl: what an agent asking for something buyable would run into.
Related: Why your Shopify products aren't showing on Google — the older discovery surface, measured the same way.
Written by Adot Technologies Inc, the team behind Arvio: AI Store Operator — ask what changed across your catalogue, review every edit before it goes live, and undo anything.
