MPP (Machine Payments Protocol)
Last updated Aug 5, 2026
is an open protocol for machine-to-machine payments. It standardizes the HTTP 402 Payment Required status code with a formal authentication scheme proposed to the IETF ↗︎. MPP gives agents, applications, and people one interface to pay for a service in the same HTTP request.
MPP is payment-method agnostic. It supports stablecoins, cards through Stripe, and custom payment methods. A service can offer more than one method.
How it works
- An Agent or HTTP client requests a paid resource.
- The service returns
402 Payment Requiredwith a payment Challenge. - The client fulfills the payment.
- The client retries with a payment Credential.
- The service returns the resource with a payment Receipt.
HTTP services exchange payment data in authentication headers. Model Context Protocol (MCP) tools use the same flow through JSON-RPC.
Payment intents
MPP defines three payment intents:
charge— Collect a one-time payment.session— Charge for measured usage.subscription— Sell recurring access.
For more information, refer to MPP payment intents ↗︎.
Compatibility with x402
MPP is backwards-compatible with x402. MPP clients can consume existing x402 services without changes to those services.
Build on Cloudflare
Accept payments
Charge for a Worker route or an MCP tool
Pay from the Agents SDK
Pay HTTP services and MCP tools from a Cloudflare Agent
SDKs
MPP provides SDKs for TypeScript, Python, Rust, Go, and Ruby. The Cloudflare guides use the TypeScript mppx SDK ↗︎.
For current packages and integrations, refer to the MPP SDK documentation ↗︎.
Related
- mpp.dev ↗︎ — Protocol documentation and guides
- IETF specification ↗︎ — Payment HTTP Authentication Scheme
- Pay Per Crawl — Cloudflare-native web content monetization
Was this helpful?
YesNo
On this page
{"@context":"https://schema.org","@type":"WebPage","@id":"https://developers.cloudflare.com/agents/tools/payments/mpp/#page","headline":"MPP (Machine Payments Protocol)","description":"Accept and make payments using Machine Payments Protocol (MPP) with Cloudflare Workers and the Agents SDK.","url":"https://developers.cloudflare.com/agents/tools/payments/mpp/","inLanguage":"en","image":"https://developers.cloudflare.com/agents/tools/payments/mpp/og.png?v=cf3ee0bd9b2ec1dd","dateModified":"2026-08-05","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}
description: Gate HTTP endpoints with MPP payments using the mpp-proxy template on Cloudflare Workers. title: Charge for HTTP content image: https://developers.cloudflare.com/agents/tools/payments/mpp-charge-for-http-content/og.png?v=af4a2346e36e5439
Documentation Index
Fetch the complete documentation index at: https://developers.cloudflare.com/agents/llms.txt
Use this file to discover all available pages before exploring further.
Docs