UCP Checker
Registry code: ea6ca0814c30be00
UCP Checker — read-only.
This server answers two questions: **is this store agent-ready, and which
- endpoint
- https://ucpchecker.com/mcp
- protocol
- streamable-http ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is UCP Checker live?
- Yes — it answered the hub's last check (checked 1h ago). It answered 100% of checks over the last 30 days.
- Is UCP Checker free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does UCP Checker have?
- 8 tools: get-product-details, search-all, search-catalog, search-policies, check-domain, discover-store, list-categories, list-stores.
- Is UCP Checker safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 99.8%· all time 99.8%
last good check
of 8 tools
- degraded → live
- live → degraded· timeout after 20000ms
- unknown → live
- used for
- check if a store supports universal commerce protocol
- search products across agent-ready stores
- list verified ucp stores
- search a store's policies
- takes → gives
- text → data
- tools
- 8 reads
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
list-categories reads open 6h ago
List store categories with store counts. Categories exist only for the deeply audited subset of verified stores, so this is a way to browse, not the whole index: list-stores and search-all cover every verified storefront. Sorted by number of stores (most first).
{ "type": "object", "properties": {} }arguments 4 lineslist-stores reads open 6h ago
List verified UCP storefronts across every platform, best-evidenced first. Use when the user wants to browse stores — e.g., "what stores can I shop at?" or "show me Wix stores". To find stores that sell something, prefer search-all. Each store carries what we have actually observed about it, not what it claims: - `transactable` — declares checkout and we have read its catalogue - `catalogued` — we have read its catalogue - `resolvable` — its endpoint resolves, we have not probed it yet - `declared` — a valid profile, nothing observed beyond it Filter by `platform` (shopify, wix, woocommerce, bigcommerce, shopware…). `category` narrows to the smaller set of deeply audited stores (see list-categories), so leave it out unless the user asks for a category. Developer previews and staging hosts are not listed.
{ "type": "object", "properties": { "limit": { "type": "integer", "description": "Maximum number of stores to return (default: 10, max: 50)" }, "category": { "type": "string", "description": "Optional. Limit to the deeply audited stores in one category (e.g., \"footwear\"); see list-categories. Most browsing is better without it." }, "platform": { "type": "string", "description": "Restrict to one platform, e.g. \"wix\", \"shopify\", \"woocommerce\"." } } }arguments 17 linesget-product-details reads unknown 6h ago
Get full product details including variant IDs from a UCP-enabled store. Use after search-catalog to see a product's full declared detail, including its variants. Pass the Product ID from search results to get all variants with their IDs. Example: domain: "allbirds.com", productId: "gid://shopify/Product/123456"
{ "type": "object", "required": [ "domain", "productId" ], "properties": { "domain": { "type": "string", "description": "The store domain (e.g., \"allbirds.com\")" }, "productId": { "type": "string", "description": "The product ID from search-catalog results (e.g., \"gid://shopify/Product/123456\")" } } }arguments 17 linessearch-all reads unknown 16h ago
Search for products across verified UCP stores at once. Fans the query out, concurrently, to the stores whose observed catalogue best matches it, and returns results grouped by store with each store's UCP score and evidence. Rare query words count for more than common ones. If no store's catalogue matches well enough, it searches no one and says "No strong match", naming the words no store carries and the closest weak matches, so you can go to a store you know instead of rewording. Slow or failing stores are skipped. `category` narrows the fan-out to the smaller set of deeply audited stores; leave it out for most queries. Example: query: "mattress topper", maxStores: 5
{ "type": "object", "required": [ "query" ], "properties": { "query": { "type": "string", "description": "Product search term (e.g., \"running shoes\", \"hoodie\")" }, "country": { "type": "string", "description": "ISO country code for localized pricing (e.g., \"US\", \"GB\"). Optional." }, "category": { "type": "string", "description": "Optional. Limit the fan-out to the deeply audited stores in one category (e.g., \"footwear\"); see list-categories. Most queries search better without it." }, "maxStores": { "type": "integer", "description": "Maximum number of stores to search (default: 5, max: 10)" } } }arguments 24 linessearch-catalog reads unknown 16h ago
Search for products on any UCP-enabled Shopify store. Searches the store's live product catalog via UCP/MCP and returns matching products with titles, prices, variants, and images. Examples: - domain: "allbirds.com", query: "tree topper" - domain: "gymshark.com", query: "hoodie"
{ "type": "object", "required": [ "domain", "query" ], "properties": { "query": { "type": "string", "description": "Product search term (e.g., \"tree topper\", \"wool runners\", \"hoodie\")" }, "domain": { "type": "string", "description": "The store domain (e.g., \"allbirds.com\", \"gymshark.com\"). Must be a UCP-enabled Shopify store." }, "country": { "type": "string", "description": "ISO country code for localized pricing/inventory (e.g., \"US\", \"GB\", \"CA\"). Optional — defaults to store default." } } }arguments 21 linessearch-policies reads unknown 16h ago
Search store policies on any UCP-enabled Shopify store. Query return policies, shipping policies, refund policies, privacy policies, terms of service, or any other store policy. Returns the matching policy text. Use this when a user asks about a store's policies before or after purchase — e.g., "what is the return policy?", "do they offer free shipping?", "refund window?" Example: domain: "allbirds.com", query: "return policy"
{ "type": "object", "required": [ "domain", "query" ], "properties": { "query": { "type": "string", "description": "Policy search term (e.g., \"return policy\", \"shipping\", \"refund window\", \"privacy policy\")" }, "domain": { "type": "string", "description": "The store domain (e.g., \"allbirds.com\")" } } }arguments 17 linescheck-domain reads unknown 12h ago
Check if a domain supports Universal Commerce Protocol (UCP). Returns the UCP status, protocol version, capabilities, response latency, and AI bot access policies (GPTBot, ClaudeBot, Google-Extended, etc.). If the store's edge rate-limits the live attempt, the result says so and reports the last OBSERVED state and when it was observed — an unobserved attempt is never presented as a verdict about the store. The domain is automatically normalized (removes protocol, www, paths). Examples: "shopify.com", "https://www.example.com/path" → "example.com" A negative result is information, not permission. It reports what UCP Checker has observed — it does not say a store cannot be used, and it is not a reason to stop. If a store matters to your task, try discover-store or connect to it directly regardless of what this returns.
{ "type": "object", "required": [ "domain" ], "properties": { "domain": { "type": "string", "description": "The domain to check for UCP support (e.g., \"shopify.com\", \"example.com\"). Protocol, www prefix, and paths are automatically removed." } } }arguments 12 linesdiscover-store reads unknown 12h ago
Discover available shopping tools on a UCP-enabled store. Connects to the store's MCP endpoint and lists all available tools (search, cart, shipping, etc.). Use this to understand what a store supports before shopping. Example: domain: "allbirds.com"
{ "type": "object", "required": [ "domain" ], "properties": { "domain": { "type": "string", "description": "The store domain to discover (e.g., \"allbirds.com\")" } } }arguments 12 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's idea6ca0814c30be00.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/ea6ca0814c30be00/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/ea6ca0814c30be00?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 1
- ok
- 1
- failed
- 0
- success rate
- 100%
- median latency
- 1,863ms
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
1 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.