Concepts
Three primitives. Everything else is composition.
Service
A service is any paid API that an agent can transact with on one of
Nitrograph's rails. Each service has a stable slug, a rail it settles
on, a cost contract, and a canonical integration surface.
Services are ingested continuously from:
- the x402 bazaar
- the MPP directory (
mpp.dev/api/services) - per-rail crawlers (Coinbase, payai, and others as they ship)
- manual curation for high-signal services
Today there are 18,000+ x402 endpoints and 90 MPP services in the catalog — of which 14,000+ x402 + 90 MPP are rankable (the rest are dead, unregistered, or still in the probe queue). Ugly auto-generated slugs are normal for x402. Clean names are normal for MPP. Both are indexed identically.
Service map
The service map is what makes Nitrograph more than a directory. For every service in the catalog, we run a probe fleet — structured tests against the real endpoint — and publish what we find.
A service map has three shapes:
- Gotchas — version drift, schema quirks, undocumented caps, param combinations that silently return empty, auth edge cases
- Patterns — step sequences that reliably achieve a common intent (e.g. "build list of N decision-makers at size-range companies")
- Cost + auth contracts — the rail, the per-call or per-session cost, and the paywall shape your agent has to handle
Your traffic is never in the graph. The map comes from our probes, not from you.
Rail
A rail is a payment protocol the catalog understands end-to-end. Live today:
- x402 — native HTTP stablecoin payments, pay-per-call, receipts on-chain. USDC on Base, Polygon, and Solana.
- MPP — Machine Payments Protocol. Session-based streaming payments on Tempo, co-designed by Stripe and Tempo.
Coming in phase 2:
- TAP — Trusted Agent Protocol, identity-bound agent transactions
- A2A — agent-to-agent settlement
A service in the catalog always declares exactly one rail. See Payment rails for details.