Commerce Hard

MPP (Machine Payments Protocol): machine-to-machine payments

What MPP (Stripe + Tempo Labs) is, how it differs from x402, how to declare support, and how we verify it.

Updated:

What it is

MPP (Machine Payments Protocol) is an open machine-to-machine payment protocol from Stripe and Tempo Labs (March 2026). It formalises HTTP 402 for agent payments, but is broader than x402: it accepts both stablecoins and cards in a single HTTP request, and adds a session primitive for streaming transactions (subscriptions, long-running tasks).

Why it matters for AI agents

As the AI economy grows, agents buy services from other agents. MPP gives a common language for those transactions, lowering the barrier by supporting traditional cards alongside stablecoins.

x402MPP
AuthorCoinbaseStripe + Tempo Labs
MethodsStablecoins (USDC)Stablecoins + cards
SessionsNoSession primitive (streaming)

How to declare support

In ai-agent.json:

{ "payments": { "mpp": "https://api.example.com/mpp" } }

Or via a Link header:

Link: <https://api.example.com/mpp>; rel="mpp-endpoint"

Full integration means implementing an MPP endpoint per the mpp.dev spec. The session primitive is for streaming services where a transaction spans time.

Right vs wrong

RightWrong
A payments.mpp or rel="mpp-endpoint" declarationSupport exists but isn’t declared
The endpoint actually implements the MPP flowA stub at the URL
Session primitive for streamingA one-shot flow where a session is needed

Common mistakes

  • No declaration — the agent never learns of support.
  • A stub endpoint with no real flow.
  • Confusing MPP with x402 — different protocols; declare the one you actually support.

How to verify

The MPP check is informational (doesn’t affect the score). The scanner looks for a declaration: a payments.mpp field in /.well-known/ai-agent.json, or a Link header with rel="mpp-endpoint". Actual payment processing isn’t tested.

curl -s https://example.com/.well-known/ai-agent.json | jq '.payments.mpp'
curl -sI https://example.com/ | grep -i 'mpp-endpoint'

Sources