Skip to content

DISC-018Find

UCP profile passes schema validation

Checks whether the UCP profile at /.well-known/ucp passes the official UCP schema for the release it declares.

What we check

We validate your profile against the official business profile schema for UCP 2026-08-25 (profile.json, $defs/business_schema). We keep our own copy of that schema, so validation sends no request. On top of the schema we add warnings of our own for no capabilities, an empty payment_handlers registry, a profile served through a redirect or not as application/json, and a service endpoint that is not https or ends in a slash. 2026-08-25 is the only release whose schema we hold. If your profile declares an older release, we do not validate it. If it has no ucp.version, there is no schema to validate it against.

Why it matters

An agent reading your profile depends on its structure to find your services, capabilities and payment handlers. If the profile breaks the schema, an agent client may misread it or reject it, even when the store behind it works. UCP Checker uses the same official schema to decide whether a profile is valid.

How we check

We read /.well-known/ucp once per scan and validate the JSON offline. PASS: the profile is valid and has no warnings. WARN: the profile is valid but has warnings. Each warning takes 10 points off the score, which never drops below 60. FAIL: the profile breaks the schema. We list up to 10 error paths and name the first one in the result. SKIPPED: there is no profile (DISC-007 scores that), we could not read it, it is not JSON, it declares a release other than 2026-08-25, or it has no ucp.version (DISC-019 scores that).

How to fix it

  1. Validate /.well-known/ucp against the official schema, using the UCP project's validator (cargo install ucp-schema) or the free validator at ucpchecker.com.
  2. Fix each error path the validator lists, starting with the first one in our result.
  3. Serve the profile directly at /.well-known/ucp, with no redirect, as application/json.

What good looks like

GET /.well-known/ucp  ->  200, Content-Type: application/json

{
  "ucp": {
    "version": "2026-08-25",
    "services": {
      "dev.ucp.shopping": [
        { "version": "2026-08-25", "transport": "mcp",
          "endpoint": "https://shop.example/api/ucp/mcp" }
      ]
    },
    "capabilities": {
      "dev.ucp.shopping.checkout": [{ "version": "2026-08-25" }]
    },
    "payment_handlers": { ... }
  }
}

Sources

Read more

  • UCP explained

    The Universal Commerce Protocol: the profile a store publishes at /.well-known/ucp, the capabilities it declares there, and the checkout flow from a new basket to a placed order.

Could an agent buy from your store?

The free scan runs all 51 checks on your store in about five minutes.

Scan my store
The storewalk.ai app on a phone, scanning a clothing store: it checks a product, views its details and compares options.