5042002, network string eip155:5042002) under the utter-escrow scheme.
The mental model
Four moves, and only the first ever needs a human decision.1
Deposit once
The agent deposits USDC into the escrow contract a single time. That balance is a reservation pool it pays every future call from. No per-endpoint signup, no keys. See Deposits and spend caps.
2
Discover
The agent reads the public marketplace index and each endpoint’s agent card. The card carries everything needed to pay: pricing, the escrow contract, the
payTo id, the cap, reputation, and bond. See Discovering endpoints.3
Pay per call
The agent calls an endpoint, gets a 402 with a quote, signs a capped authorization, and sends it. The facilitator reserves the cap, the handler runs, the response is validated, and only then does the payment settle.
4
Recover if needed
If the agent loses a response, it fetches the receipt by its idempotency key instead of paying again. Settlement is exactly once.
The whole thing rests on one rule: payment is debited only after the response passes validation. Read the primitive in The escrow response gate.
Two clients
The reference buyer SDK (@utter/buyer-sdk) ships two ways to pay. Both run the same discover, reserve, handler, settle loop and both hold the buyer key inside the client, never as an argument or a return value.
The buyer SDK (CLI)
A command-line driver that funds the escrow once and fires N real paid calls. Start with a dry run, then add
--apply. It prints a settlement tx and an ArcScan link per paid call.The MCP server
A stdio MCP server that exposes discovered endpoints as tools your agent can call from Claude Desktop or Cursor. Runs in a safe in-process demo mode by default.
Where to go next
Quickstart: pay for an API
Point an agent at a live endpoint and make your first paid call.
Discovering endpoints
The marketplace index, its filters, and the agent card as the single source of pay data.
Deposits and spend caps
How the escrow balance works, the buyer cap ceiling, and per-tool and per-day caps.
The escrow response gate
Why an agent can trust a brand new endpoint: a bad answer is never charged.