UCP Product Discovery
How AI shopping agents find and buy products on UCP-verified stores. The MCP tool call sequence, capability requirements, and a live list of 19,004+ stores supporting it right now.
What product discovery actually means for AI agents
Product discovery is how an AI shopping agent figures out what a store sells without scraping HTML or guessing. It's the difference between an agent that might find the right product and an agent that's guaranteed to.
On a UCP-verified store, the whole flow is structured. The agent fetches the store's /.well-known/ucp profile, sees which capabilities are declared (the important one here is catalog-search), and dispatches tool calls against the declared transport endpoint. Each call returns typed product objects the agent can reason about directly — no HTML parsing, no fragile selectors, no guessing at price formats.
Below is the live demo: a real AI agent running the full discovery → browse → checkout sequence against a real UCP-verified store. Every tool call is what your own agent would send.
● A real AI agent doing product discovery on a verified UCP store
The four steps that make up discovery
Every UCP product discovery flow boils down to the same four steps. The first reads the store's profile; the other three are MCP tool calls to the endpoint the store declares, using the tool names the UCP binding defines. All of it happens on the store's own endpoint: UCP Checker tells an agent which stores to try and never sits in the transaction.
-
1
/.well-known/ucpAgent fetches the store's profile and reads it. This is the handshake: the agent sees which capabilities the store declares, which transports and endpoints it exposes, and which payment handlers it accepts. If catalog search (
dev.ucp.shopping.catalog.search) isn't declared, discovery stops here. UCP Checker'scheck-domainanddiscover-storetools report the same thing, as observed.HTTP GET · JSON response -
2
search_catalogAgent calls
search_catalogon the store's declared MCP endpoint, with the query nested under the operation ({catalog: {query: "wool sneakers", context: {address_country: "US"}}}) and its platform profile inmeta["ucp-agent"]. The store returns a typed list of product objects — title, price, currency, variants, image URL — with no HTML parsing required. This is where "scraping vs shopping" stops being an analogy and becomes a measurable capability gap.MCP tool call · returnsproducts[] -
3
create_cartAgent picks a variant and calls
create_cart(andupdate_cartto change it). The store returns the cart and a checkout URL. At this point the agent has a real, persistable cart — not a simulation, not a preview.MCP tool call · returnscart+ checkout URL -
4
create_checkout→complete_checkoutAgent opens a checkout with
create_checkout, pays through one of the store's declared payment handlers, and callscomplete_checkout. The store returns the order. The agent has bought something — end to end, no human in the loop.MCP tool calls · returnsorder
Stores that support product discovery right now
UCP-verified stores currently declaring the capabilities required for product discovery — ranked by total capability depth. Every entry is re-crawled every 24 hours; any store that drops out stops appearing automatically.
Run product discovery yourself
Three tools, three roles. UCP Checker tells you whether a store supports discovery. UCP Playground runs a real AI agent session against the store so you can watch every tool call live. UCP Registry exposes a discovery API you can call from your own app. They're designed to be used together.
Check a store's discovery readiness
Paste any domain and UCP Checker fetches its profile, validates against the current spec, confirms it declares catalog-search, and returns the full capability breakdown. Free, no signup, runs in ~1 second.
Watch a real agent shop a store
UCP Playground runs a live AI agent session against any verified store — discover, search, cart, checkout. Watch every MCP tool call and response in real time. Zero code, just pick a store and press play.
Open PlaygroundRun discovery from your own app
UCP Registry exposes a live product discovery API — pass a store domain and a query, get typed product results back. The production endpoint for developers who want to actually do discovery at scale, not just test it.
Open RegistryFrequently Asked Questions
What is UCP product discovery?
/.well-known/ucp profile, sees which capabilities are declared, and calls search_catalog on the MCP endpoint the store declares. The store returns typed product objects the agent can reason about directly — no parsing, no guessing.How is this different from Google Shopping or a product feed?
create_cart) against the same endpoint. No index, no lag, no handoff. It's discovery + transaction in one session.Which AI agents can do UCP product discovery?
What capabilities does a store need to declare?
catalog-search or catalog-lookup. For the full discover → buy flow, agents also need cart, checkout, and at least one declared payment handler. Browse the full capability registry for the canonical list.Where do I actually run discovery?
How often is this data updated?
catalog-search or fails validation falls off on the next crawl cycle, any new store that adds it gets added.Get the agentic commerce digest every Monday
Real adoption data, ecosystem trends, new spec versions, and the stores that broke or recovered this week. Read by founders and engineers building the next generation of commerce.
