Skip to content

Checkout Capability - MCP Binding

This document specifies the Model Context Protocol (MCP) binding for the Checkout Capability.

Businesses advertise MCP transport availability through their UCP profile at /.well-known/ucp.

{
"ucp": {
"version": "2026-01-11",
"services": {
"dev.ucp.shopping": [
{
"version": "2026-01-11",
"spec": "https://ucp.dev/2026-01-11/specification/overview",
"transport": "mcp",
"schema": "https://ucp.dev/2026-01-11/services/shopping/mcp.openrpc.json",
"endpoint": "https://business.example.com/ucp/mcp"
}
]
},
"capabilities": {
"dev.ucp.shopping.checkout": [
{
"version": "2026-01-11",
"spec": "https://ucp.dev/2026-01-11/specification/checkout",
"schema": "https://ucp.dev/2026-01-11/schemas/shopping/checkout.json"
}
]
}
}
}

MCP clients MUST include a meta object in every request containing protocol metadata:

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_checkout",
"arguments": {
"meta": {
"ucp-agent": {
"profile": "https://platform.example/profiles/shopping-agent.json"
},
"idempotency-key": "550e8400-e29b-41d4-a716-446655440000"
},
"checkout": { ... }
}
}
}

The meta["ucp-agent"] field is required on all requests to enable capability negotiation. The complete_checkout and cancel_checkout operations also require meta["idempotency-key"] for retry safety.

UCP Capabilities map 1:1 to MCP Tools.

ToolOperationDescription
create_checkoutCreate CheckoutCreate a checkout session.
get_checkoutGet CheckoutGet a checkout session.
update_checkoutUpdate CheckoutUpdate a checkout session.
complete_checkoutComplete CheckoutPlace the order.
cancel_checkoutCancel CheckoutCancel a checkout session.

Maps to the Create Checkout operation.

  • checkout (Checkout): Required. Contains the initial checkout session data and optional extensions.

Maps to the Complete Checkout operation.

  • meta (Object): Required. Request metadata containing:
    • ucp-agent (Object): Required. Platform agent identification.
    • idempotency-key (String, UUID): Required. Unique key for retry safety.
  • id (String): Required. The ID of the checkout session.
  • checkout (Checkout): Required. Contains payment credentials and other finalization data to execute the transaction.

UCP distinguishes between protocol errors and business outcomes.

  • Protocol errors: Transport-level failures (authentication, rate limiting, unavailability) that prevent request processing. Returned as JSON-RPC error with code -32000 (or -32001 for discovery errors).
  • Business outcomes: Application-level results from successful request processing, returned as JSON-RPC result with UCP envelope and messages.

Platforms SHOULD authenticate agents when using MCP transport. When using HTTP Message Signatures, all checkout operations follow the Message Signatures specification.

A conforming MCP transport implementation MUST:

  1. Implement JSON-RPC 2.0 protocol correctly.
  2. Provide all core checkout tools defined in this specification.
  3. Return errors per the Core Specification.
  4. Return business outcomes as JSON-RPC result with UCP envelope and messages array.
  5. Validate tool inputs against UCP schemas.
  6. Support HTTP transport with streaming.