MPP Protocol Compatibility
IndieGent works with MPP-enabled APIs automatically. No extra setup needed.
What is MPP?
The Machine Payments Protocol (MPP) is an emerging IETF standards-track protocol designed for machine-to-machine payments over HTTP. It's one of several approaches being developed to solve the same problem IndieGent solves: how do AI agents pay for services?
MPP uses the HTTP 402 Payment Required status code with a WWW-Authenticate: Payment header to tell an agent how to pay. The agent pays, then retries the request with an Authorization: Payment credential.
How IndieGent Handles MPP
If your agent — using the IndieGent SDK — encounters an API that uses MPP, payment is handled automatically. You don't need to know the API uses MPP. You don't need to configure anything. The SDK detects the protocol, pays from your agent's wallet, and retries.
import { IndieGent } from "@indiegent/sdk";
const agent = new IndieGent({
apiKey: process.env.INDIEGENT_API_KEY,
});
// This API happens to use MPP — your agent doesn't care
const res = await agent.fetch("https://some-mpp-api.com/data");
const data = await res.json();
// SDK detected the MPP 402, paid automatically, retriedHow MPP Works (Technical)
For those who want to understand the protocol under the hood:
1. Agent makes a request
GET /resource HTTP/1.1
Host: api.example.com2. Server returns 402 with payment instructions
HTTP/1.1 402 Payment Required
WWW-Authenticate: Payment type="exact",
chain="base",
currency="USDC",
amount="10000",
address="0xServiceWallet...",
maxAge=3003. Agent pays and retries
GET /resource HTTP/1.1
Host: api.example.com
Authorization: Payment credential="0xTxHash...",
chain="base",
currency="USDC"4. Server verifies and responds
HTTP/1.1 200 OK
Payment-Receipt: status="success", txHash="0x..."
{ "data": "..." }MPP vs IndieGent Marketplace
MPP is a payment protocol — it defines how agents and services negotiate payments over HTTP. IndieGent is a full platform — wallets, funding, spending caps, dashboard, marketplace, and payment protocol support.
| MPP (Protocol) | IndieGent (Platform) | |
|---|---|---|
| What it is | Payment standard for HTTP APIs | Full wallet + marketplace platform |
| Wallet management | Not included — bring your own | Create, fund, manage, monitor wallets |
| Funding | Not included | Credit card via Coinbase, or direct USDC |
| Spending controls | Not included | Per-agent caps, auto-topup, dashboard |
| Service discovery | Not included | Marketplace with flights, email, search, etc. |
| MPP support | Native | Full compatibility via SDK |
Think of it like this: MPP is a payment rail (like Visa's network). IndieGent is the full banking experience (like the bank that issues your Visa card). IndieGent uses MPP as one of several supported payment rails.
When Does This Matter?
If you use the IndieGent marketplace, you don't need to think about MPP at all — the marketplace handles everything internally.
MPP compatibility matters when your agent calls APIs outside the marketplace that happen to use the MPP standard for payments. As more APIs adopt MPP, your IndieGent wallet will work with all of them automatically.
Learn More
- mpp.dev — Official MPP specification
- IndieGent SDK — Handles MPP automatically
- x402 Protocol — Another supported payment standard
- Agent Pay — IndieGent's own payment format