UCP Checker
UCP Score

UCP Score for catalog.shopify.com

Nearly there

77 out of 100, grade B: nearly there. The missing 23 points are spread across Discovery and Conformance and Capabilities. One spec break on the status page isn't counted in the score.

Discovery 85Conformance 88Capabilities 53release 2026-08-25

How the score is made

three areas, weighted
Discovery 30%
Can a UCP agent find and read the profile: HTTPS, an answer at /.well-known/ucp, robots.txt allowing it, and five files outside UCP (llms.txt, sitemap, Open Graph, Organization schema, viewport).
85−4.5 pts
Conformance 40%
Does the profile follow the spec: valid against its release (counted three times), a dated release, keys published, few warnings, spec and schema links that resolve.
88−4.8 pts
Capabilities 30%
What an agent can do here: how many capabilities, checkout, at least one service, payment handlers, and services that answer our check.
53−14.1 pts
A85–100Ready for UCP agents
B70–84Nearly there
C50–69Partly ready
D30–49Hard for UCP agents
F0–29Not ready

Raise the score

fixes that move the number
part of +5
1Publish Organization schema (JSON-LD) on the homepage
No Organization-typed JSON-LD detected on your homepage.
Organization schema gives agents a structured representation of your brand identity: name, logo, social profiles, contact info, founding date. Agents use this to verify you are who you claim to be and to link your profile data to a recognizable entity.
Discovery · effort medium
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "OnlineStore",
  "name": "Yourstore",
  "url": "https://yourstore.com",
  "logo": "https://yourstore.com/logo.png",
  "sameAs": [
    "https://twitter.com/yourstore",
    "https://www.instagram.com/yourstore"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+1-800-000-0000",
    "contactType": "Customer Service"
  }
}
</script>

Drop into <head> or end of <body>. Use OnlineStore (more specific) when the entire site is an ecommerce store; Organization is the generic fallback.

part of +5
2Publish a /llms.txt brand brief
No /llms.txt file detected at the root of your domain.
llms.txt is an emerging convention (analogous to robots.txt) that lets you give AI agents a hand-written brief about your brand, product categories, return policy, and crawl preferences. Strict UCP agents do not require it, but recommendation/discovery agents increasingly read it for context.
Discovery · effort low
# llms.txt
# Public brief for AI agents about Yourstore

# About
One or two sentences on what you sell, who you sell to, and any defining context (founded, mission, sustainability stance, etc.).

# Product Categories
- Category one
- Category two
- Category three

# Policies
- Returns: e.g. 30 days, full refund
- Shipping: e.g. Free over $30, 3-5 business days
- Any other policy worth surfacing (cruelty-free, vegan, made-to-order, etc.)

# Agent Capabilities
- UCP profile: /.well-known/ucp
- Supported flows: cart, checkout, tokenized payment, etc.
- Anything explicitly NOT supported (e.g. "no subscription products via agent")

# Contact
[email protected]

Save as /llms.txt at your site root. Plain text, written for an LLM audience. The format is informal: these section headings are a working convention, not a spec. Replace the placeholders with your own brand details and update when policies or product lines change.

part of +5
3Publish a sitemap.xml
No sitemap.xml detected at the root of your domain.
Sitemaps tell agents and crawlers which pages on your store are canonical and how often they change. Without one, agents fall back to following internal links, which is slower and less complete, especially for catalog pages buried behind faceted nav.
Discovery · effort low
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://yourstore.com/</loc>
    <changefreq>daily</changefreq>
  </url>
  <url>
    <loc>https://yourstore.com/products</loc>
    <changefreq>daily</changefreq>
  </url>
  <!-- one <url> entry per indexable page -->
</urlset>

Most ecommerce platforms generate sitemap.xml automatically. If yours does not, generate one and serve it at /sitemap.xml.

+5
4Cryptographic message signing is not yet enabled
Your UCP profile lists no public keys, so cryptographic message signing is not yet enabled for this store. HTTPS already confirms your store's identity; signing adds a further layer for checkout, payment and webhook messages.
The UCP spec recommends signing checkout completion and payment responses, and requires it for webhooks. A store that sends order updates by webhook needs keys; others can add them later.
Conformance · effort medium
{
  "keys": [
    {
      "kty": "EC",
      "crv": "P-256",
      "x": "<base64url x>",
      "y": "<base64url y>",
      "kid": "store-2026-10",
      "use": "sig",
      "alg": "ES256"
    }
  ],
  "ucp": { ... }
}

Create a P-256 (ES256) key pair: ES256 is the one algorithm every UCP agent must be able to check. Add the public key to a "keys" list at the top level of your UCP profile, as in the example, with its own "kid", and keep the private key on your server. The spec recommends a new key every 90 days: publish the new one next to the old, sign with it, and remove the old key a week later.

Every check

8 passed · 8 to fix
Agent Discovery · 5 of 8
5 OK
HTTPS, UCP profile reachable, AI bot access, Open Graph tags, Mobile viewport metaShow
  • HTTPS · Profile URL uses https://
  • UCP profile reachable · HTTP 200
  • AI bot access · robots.txt allows /.well-known/ucp
  • Open Graph tags · og:title and og:type/url present
  • Mobile viewport meta · <meta name="viewport"> present
Problem
llms.txt
HTTP 404 at /llms.txt. Fix 2 above.
Discovery
Problem
sitemap.xml
HTTP 404 at /sitemap.xml. Fix 3 above.
Discovery
Problem
Organization schema (JSON-LD)
Missing or incomplete on homepage. Fix 1 above.
Discovery
UCP Conformance · 2 of 4
2 OK
Profile passes schema validation, Protocol version present and well-formedShow
  • Profile passes schema validation · No structural errors
  • Protocol version present and well-formed · Version: 2026-08-25
To fix
Public keys published
No keys list at the top level of the profile. Fix 4 above.
Conformance
To fix
No validation warnings
1 warning.
Conformance
Capability Coverage · 1 of 4
1 OK
Transports declaredShow
  • Transports declared · MCP
To fix
Capabilities declared
2 of 6 capability families detected: Identity Linking, Catalog. A family counts once however many namespaces or extensions declare it.
Capabilities
Problem
Checkout capability
No checkout capability.
Capabilities
To fix
Payment handlers
Empty array: checkout-link redirect strategy.
Capabilities

Not in the score, but worth fixing first

spec breaks
To fix
The profile has no ETag or Last-Modified header
Spec level: SHOULD.
on the status page

The score measures what the profile declares across the three areas above. These break a rule in the spec that agents follow, so they can stop an agent before the score matters.

Speed among Shopify stores
The profile answered in 131 ms, faster than 100% of the Shopify stores we check.