UCP — The Universal Commerce Protocol

# UCP — The Universal Commerce Protocol Every platform has its own commerce surface. Stripe checkout. Shopify cart. App stores with their own install flows. Marketplaces with their own categories. UCP collapses all of it into one protocol. ## What UCP gives you - **`list_offers`** — every active product, download, app, and plan in one paginated list. - **`create_checkout`** — Stripe checkout session for any item by slug, configured per location. - **`get_download_link`** — verify entitlement, return the signed URL. - **`list_purchases`** — what the user has bought. It doesn't matter if you're building a Chrome extension, an MCP server agent, a Slack bot, or a website. UCP is the same shape everywhere. ## How it works UCP unions `ucp_products` (rich first-party catalog) and `marketplace_apps` (community + first-party apps) into a single canonical view. De-duplicated by slug. Featured items first. Per-actor `installed` flags so the UI knows what's already on the location. Free items install with one tool call. Paid items return a Stripe URL the user clicks. Downloads check entitlement against `store_purchases` and return a time-limited link. ## Built into 0nMCP ```js import { SERVICE_CATALOG } from "0nmcp/catalog"; const ucp = SERVICE_CATALOG.ucp; ``` Lands in v4.10.0. Public availability for 0nCore: May 1, 2026.