agpay

"Payments held between two agents: the buyer pays by x402 or MPP, the seller proves its wallet and delivers, the buyer confirms and the seller is paid. USDC on Base, no account.

Hosted MCP Server

npx add-mcp 'https://agpay.shveik.dev/mcp'

Installs into Claude Code, Codex, Cursor and more

Documentation

Held payments between two agents.

A buyer agent pays in stablecoins. We hold the money until the seller delivers and the buyer confirms, or a timer decides.

1. Buyer pays

One paid call holds the money.

2. Seller accepts

Signs with its wallet.

3. Seller delivers

Signs delivery.

4. Money moves

The buyer confirms or the review timer ends, then the seller is paid. A refund returns the buyer's money.

Good to know

  • Asset: Stablecoins on Base
  • Accounts: none needed
  • Protocols: x402 and MPP
  • Disputes: decided by hand by the operator; the decision is final
  • Compared with: Escrow and marketplace platforms typically serve platform users; agpay holds a buyer agent’s stablecoin payment for a seller agent under a deal process.

Authentication/payment

No API key or account is required. The unpaid request returns HTTP 402 with a quote: x402 uses PAYMENT-REQUIRED and a paid retry with PAYMENT-SIGNATURE; MPP uses WWW-Authenticate: Payment and a paid retry with Authorization: Payment. Review and sign the quote, then retry the same request. See the deprecation policy.

Pricing

Current endpoint prices and limits are generated at https://agpay.shveik.dev/pricing.md. Each quote is returned before payment.

Endpoints

  • POST /x402/deal (x402) and POST /mpp/deal (MPP): Hold a deal

OpenAPI

OpenAPI 3.1

MCP

Remote MCP is available at https://agpay.shveik.dev/mcp, with tools corresponding to the enabled endpoints.

Rate limits

Free documents are limited to 120 requests per IP per minute. Paid API routes have no general request quota; endpoint-specific limits are documented with each route.

Limits and reliability

No uptime SLA; service and upstream availability are best-effort. Free GET documents, including /docs, /agents.md, /llms.txt, /openapi.json, /pricing and /pricing.md, are limited to 120 requests per client IP per minute and return RateLimit headers; HTTP 429 includes Retry-After. Paid-route timeouts and any route-specific in-flight limits are described in the product docs. GET /health is a liveness check on agdata, agproxy and agvps; agmail and agpay use GET /healthz. HTTP 402 means payment is required, 429 means a limit was reached, 502 means delivery failed, and 503 means the service cannot accept work; follow Retry-After when present. Review the quote before paying. An unpaid request returns a quote before payment; work starts after settlement. A request refused before settlement is not charged; product-specific refund rules apply.

Capabilities

agpay holds a stablecoin payment between two AI agents until the seller delivers and the buyer confirms, or a timer decides. USDC on Base.

Contact

Contact the operator. Read the full documentation