{
  "data": {
    "a": {
      "slug": "mpp",
      "name": "Machine Payments Protocol (MPP)",
      "vendor": "Tempo and Stripe",
      "vendorUrl": "https://mpp.dev",
      "kind": "protocol",
      "category": "pay-per-call",
      "summary": "A method-agnostic 'Payment' HTTP authentication scheme from Tempo and Stripe, launched on 2026-03-18.",
      "url": "https://www.anchorterminal.com/tools/mpp",
      "markdownUrl": "https://www.anchorterminal.com/tools/mpp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/mpp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/mpp.json",
      "dns": "mpp.grade.anchorterminal.com",
      "repo": "https://github.com/tempoxyz/mpp-specs",
      "license": "CC0-1.0 (spec)",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "mppx"
        },
        {
          "registry": "pypi",
          "name": "pympp"
        },
        {
          "registry": "go",
          "name": "github.com/tempoxyz/mpp-go"
        }
      ],
      "auth": "none",
      "authNotes": "Stablecoin payments need only a funded wallet. Card payments use a Stripe shared payment token issued through Link, optionally approved by a person.",
      "pricing": "free",
      "pricingNotes": "No protocol fee. Tempo gas is paid in stablecoin, capped around $0.0006 for a 50k-gas transfer, and the server can sponsor it. Stripe charges 1.5% on stablecoins, its card pricing on cards, and $0.15 per shared payment token (https://docs.stripe.com/payments/machine).",
      "priceSummary": "Free",
      "where": "spec",
      "x402": {
        "level": "no",
        "evidence": "A payment protocol, not a tool that accepts payment.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 93,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-26"
      },
      "docsUrl": "https://mpp.dev",
      "llmsTxt": "https://mpp.dev/llms.txt",
      "capabilities": [
        "payments.protocol",
        "payments.stablecoin",
        "payments.card-token"
      ],
      "tags": [
        "protocol",
        "ietf-draft",
        "stablecoin",
        "cards",
        "stripe"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 81.7,
        "grade": "A",
        "agentReady": true,
        "rank": 0,
        "ranked": false,
        "notRankedWhy": "A protocol, graded on the same scale but not ranked against tools",
        "rankOf": 1486,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 91,
          "maintenance": 97,
          "payments": 94,
          "reliability": 85,
          "schema": 89,
          "security": 79,
          "transparency": 50
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -3,
        "negativeNotes": [
          "2026-03-26, three advisories in mppx eight days after launch, GHSA-8x4m-qw58-3pcx (critical, multiple payment bypass and griefing bugs), GHSA-mv9j-8jvg-j8mr (high, Tempo session close voucher bypass) and GHSA-8mhj-rffc-rcvw (moderate, Stripe credential replay). Fixed and published, so we deduct 2 (https://github.com/wevm/mppx/security/advisories)",
          "2026-07-01, two moderate gas-draining advisories in mppx (GHSA-727h-3vm5-qwq6, GHSA-vc9j-9wph-qghj), fixed and published, so we deduct 1 (https://github.com/wevm/mppx/security/advisories)"
        ],
        "verdict": "A 1,464-line Internet-Draft with 11 error codes, Retry-After and HMAC-SHA256 test vectors. Individual Internet-Draft, not adopted by any IETF working group.",
        "bestFor": "Sellers who want stablecoins and cards behind one 402, or Stripe settlement into a fiat balance, and for agents making many small calls through sessions. x402 has more facilitators and a foundation, l402 suits Lightning-only stacks.",
        "strengths": [
          "A 1,464-line Internet-Draft with 11 error codes, Retry-After and HMAC-SHA256 test vectors",
          "Single-use proofs, request-body binding and Idempotency-Key guidance in the core",
          "Official SDKs in TypeScript, Python, Go, Rust and Ruby, each running a shared conformance suite and all tagged in October 2026",
          "Method drafts for Tempo, EVM, Solana, Lightning, Stellar, XRPL, Hedera and Stripe cards",
          "Spec under CC0"
        ],
        "weaknesses": [
          "Individual Internet-Draft, not adopted by any IETF working group",
          "Five mppx advisories in 2026, one critical",
          "No legal entity or governance body named for the spec",
          "Stripe's minimums are $0.50 for card tokens and 0.01 USDC for stablecoins",
          "No bug bounty while Tempo is under audit"
        ],
        "agentNotes": [
          "Check amount, recipient and currency in the `request` parameter, never the description",
          "Send an `Idempotency-Key` when retrying a paid POST",
          "Use a session for many small calls to one server rather than a charge per call",
          "Set `max_amount` and `expires_at` on any card token",
          "Run a current mppx, releases before 0.4.11 had payment-bypass and session-voucher bugs"
        ],
        "metrics": {
          "kind": "spec",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "A",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 81.7
          }
        ],
        "editorialScores": {
          "ergonomics": 91,
          "maintenance": 97,
          "payments": 94,
          "reliability": 85,
          "schema": 89,
          "security": 79,
          "transparency": 67
        },
        "provenanceScore": 32,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm i mppx   # or: pip install pympp"
      },
      "letme": {
        "capability": "https://letme.dev/payments.protocol",
        "tool": "https://letme.dev/mpp"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Stripe stablecoin processing",
          "unit": "pct",
          "usd": 1.5
        },
        {
          "item": "Stripe shared payment token",
          "unit": "tx",
          "usd": 0.15
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "mpp.dev",
        "domainRegistered": "2024-07-13",
        "domainNote": "No legal entity is named for the spec. Its authors work at Tempo and Stripe.",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-26",
        "score": 32
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/mpp.json",
      "live": {
        "slug": "mpp",
        "versions": [
          {
            "registry": "github",
            "name": "tempoxyz/mpp-specs",
            "version": "spec-artifacts-cd75e27a54402da8a66af7cdf3b2ef87c58f02f1",
            "released": "2026-11-02",
            "seenAt": "2026-11-06T23:47:38.299910377Z"
          },
          {
            "registry": "npm",
            "name": "mppx",
            "version": "0.17.3",
            "seenAt": "2026-11-06T23:47:36.406688542Z"
          },
          {
            "registry": "pypi",
            "name": "pympp",
            "version": "0.20.0",
            "released": "2026-11-03",
            "seenAt": "2026-11-06T23:47:38.115082935Z"
          }
        ],
        "githubStars": 96,
        "npmWeekly": 401164,
        "pypiWeekly": 602842,
        "securityTxt": {
          "url": "https://mpp.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:05.065629921Z"
        },
        "llmsTxt": {
          "url": "https://mpp.dev/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:14.489248678Z"
        },
        "domain": {
          "domain": "mpp.dev",
          "registered": "2024-07-13",
          "source": "https://pubapi.registry.google/rdap/domain/mpp.dev",
          "checkedAt": "2026-11-01T14:10:36.558953129Z"
        },
        "pages": [
          {
            "url": "https://datatracker.ietf.org/doc/draft-ryan-httpauth-payment/",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:02:31.004802296Z",
            "changedAt": "2026-11-06T13:25:07.847285355Z",
            "fingerprint": "4e4d5861838d"
          }
        ],
        "github": {
          "repo": "tempoxyz/mpp-specs",
          "checkedAt": "2026-11-02T09:30:53.898785561Z",
          "stars": 95,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-26T21:39:06Z",
          "openIssues": 12,
          "openPRs": 9,
          "issuesOpened90d": 15,
          "issuesClosed90d": 9,
          "prsMerged90d": 41,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 48,
            "failure": 0,
            "other": 2,
            "latest": "success",
            "latestAt": "2026-10-26T21:36:55Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 6,
            "medianDays": 6.4
          }
        },
        "updatedAt": "2026-11-07T16:00:05.065629921Z"
      }
    },
    "answer": "Machine Payments Protocol (MPP) scores 81.7 (A) on agent readiness against Universal Commerce Protocol (UCP)'s 72 (BB), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "ucp",
      "name": "Universal Commerce Protocol (UCP)",
      "vendor": "UCP Authors (Google, Shopify and co-developers)",
      "vendorUrl": "https://ucp.dev",
      "kind": "protocol",
      "category": "checkout-protocols",
      "summary": "The Universal Commerce Protocol (UCP) is an open specification, co-developed by Google, Shopify and other retailers and platforms, for agents to discover a business's capabilities and run catalogue, cart, checkout, identity linking and order flows over REST, MCP or A2A.",
      "url": "https://www.anchorterminal.com/tools/ucp",
      "markdownUrl": "https://www.anchorterminal.com/tools/ucp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/ucp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/ucp.json",
      "dns": "ucp.grade.anchorterminal.com",
      "repo": "https://github.com/Universal-Commerce-Protocol/ucp",
      "license": "Apache-2.0",
      "transports": [],
      "packages": [],
      "auth": "oauth",
      "authNotes": "A specification, not a service. Identity linking uses OAuth 2.0 for a platform to act for a user at a business. Agent requests carry a UCP-Agent profile, and signed agents send RFC 9421 HTTP message signatures with a Signature-Agent header and a JWK thumbprint key ID. Payment credentials move through payment handlers and token exchange between payment and credential providers, with AP2 mandates supported.",
      "pricing": "free",
      "pricingNotes": "The specification, schemas, SDKs and conformance tests are free under Apache-2.0. Costs come from the business's platform and payment provider, not the protocol.",
      "priceSummary": "Free · OSS",
      "where": "spec",
      "x402": {
        "level": "no",
        "evidence": "A commerce protocol, not a tool that accepts payment; it supports AP2 mandates and payment handlers (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 3479,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://ucp.dev/latest/specification/overview/",
      "llmsTxt": "https://ucp.dev/llms.txt",
      "openapi": "https://github.com/Universal-Commerce-Protocol/ucp/blob/main/source/services/shopping/rest.openapi.json",
      "capabilities": [
        "payments.protocol",
        "payments.checkout",
        "payments.mandate"
      ],
      "tags": [
        "protocol",
        "open-standard",
        "open-source",
        "mcp",
        "a2a",
        "ap2",
        "openapi",
        "openrpc",
        "llms-txt",
        "shopify",
        "google",
        "commerce"
      ],
      "lastRelease": "2026-08-25",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 72,
        "grade": "BB",
        "agentReady": true,
        "rank": 0,
        "ranked": false,
        "notRankedWhy": "A protocol, graded on the same scale but not ranked against tools",
        "rankOf": 1486,
        "categoryRank": 1,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 70,
          "payments": 50,
          "reliability": 79,
          "schema": 90,
          "security": 67,
          "transparency": 47
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "OpenAPI, OpenRPC and JSON Schema for every surface, official Python and JavaScript SDKs, conformance tests and live use on Shopify stores and Stripe's checkout. Governance runs through councils led by Google and Shopify, the last release was 25 August 2026, and there is no guidance on untrusted product content.",
        "bestFor": "Agents buying from merchants that publish UCP profiles, and platforms building agent checkout. acp, ap2, visa-intelligent-commerce and mastercard-agent-pay are the other checkout-protocol listings; UCP can carry AP2 mandates.",
        "strengths": [
          "Machine-readable contracts for every transport, OpenAPI, OpenRPC and JSON Schema 2020-12",
          "Official Python and JavaScript SDKs, a schema validator and a conformance test suite",
          "Idempotency keys required on MCP checkout calls",
          "Live on every Shopify store and as Stripe's own-checkout route",
          "Breaking changes announced two weeks before they merge"
        ],
        "weaknesses": [
          "No release since v2026-08-25, though main changes most days",
          "No guidance on product descriptions or business messages as untrusted content for agents",
          "Lodging is a draft and food ordering unreleased",
          "Governing and tech councils are led by Google and Shopify members"
        ],
        "agentNotes": [
          "Read the business profile first and call only the capabilities both profiles declare",
          "Send a fresh idempotency-key UUID on each checkout call and reuse it on retry",
          "Hand the buyer the continue_url when a checkout needs a person instead of retrying",
          "Send a UCP-Agent profile, and sign requests with RFC 9421 if the business requires signed agents"
        ],
        "metrics": {
          "kind": "spec",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 72
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 70,
          "payments": 50,
          "reliability": 79,
          "schema": 90,
          "security": 67,
          "transparency": 62
        },
        "provenanceScore": 32,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "letme": {
        "capability": "https://letme.dev/payments.protocol",
        "tool": "https://letme.dev/ucp"
      },
      "area": "payments",
      "provenance": {
        "legalEntity": "",
        "domain": "ucp.dev",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://github.com/Universal-Commerce-Protocol/ucp/releases",
        "securityTxt": "unknown",
        "checked": "2026-11-06",
        "notes": [
          "Files carry \"Copyright 2026 UCP Authors\" under Apache-2.0. No legal entity runs the project; governance is by councils whose members are named with their companies.",
          "Security reports go to Google's g.co/vulnz with a five-working-day response, coordinated through GitHub Security Advisories (SECURITY.md in the .github repository).",
          "ucp.dev has no robots.txt and serves llms.txt. No terms or privacy policy found for the site.",
          "The registration date of ucp.dev wasn't found through RDAP."
        ],
        "score": 32
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/ucp.json",
      "live": {
        "slug": "ucp",
        "versions": [
          {
            "registry": "github",
            "name": "Universal-Commerce-Protocol/ucp",
            "version": "v2026-08-25",
            "released": "2026-08-25",
            "seenAt": "2026-11-07T00:13:40.257304662Z"
          }
        ],
        "githubStars": 3480,
        "securityTxt": {
          "url": "https://ucp.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:23.109475398Z"
        },
        "llmsTxt": {
          "url": "https://ucp.dev/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:34:12.746672159Z"
        },
        "updatedAt": "2026-11-07T16:00:23.109475398Z"
      }
    },
    "edges": [
      {
        "by": 44,
        "category": "payments",
        "leads": "mpp",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "MPP is a machine payment protocol (40). No protocol fee. Tempo gas is capped near $0.0006 a transfer and Stripe charges 1.5 per cent on stablecoins and $0.15 per shared payment token per the 26 September check, while Stripe's page sets minimums of $0.50 for card tokens and 0.01 USDC for stablecoins (17). The spec is CC0 and the SDKs are open source (20). A buyer with a stablecoin wallet needs no account, but the card route needs a token from Link, optionally approved by a person (17).",
          "b": "Protocol reading. UCP moves payment through handlers, tokens and AP2 mandates rather than a per-call machine payment (10 of 40). No protocol fee; implementer prices are the platform's and payment provider's (15). The spec, SDKs and samples are free (20). A business or platform has to implement it, and a buyer links identity or approves payment, so no fully autonomous route (5). 10 + 15 + 20 + 5 = 50."
        },
        "scores": {
          "a": 94,
          "b": 50
        }
      },
      {
        "by": 27,
        "category": "maintenance",
        "leads": "mpp",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "mppx 0.17.0, mpp-rs 0.18.1 and pympp 0.18.0 on 29 October 2026, and a spec commit on 26 October (30). mppx alone tagged 22 releases in the 90 days to 1 November (20). 10 open issues and 20 open pull requests on mppx on 1 November, down from 14 issues on 1 October. Reply times weren't read, so 22 stands (22). Official SDKs in five languages, all tagged in October 2026, with mpp-go moving from v0.2.0 (1 July) to v0.4.0 through v0.6.0 between 24 and 26 October and mpp-rb at v0.1.10 (15). CI with dependency scanning, Dependabot, OpenSSF Scorecard in mppx and fuzzing in Rust (10).",
          "b": "The latest release is v2026-08-25, 73 days before this check (20). One release in the 90 days, though changes merge on main most days, among them a return-policy extension on 23 October and cart-only checkout on 21 October (7). Pull requests from Google, Shopify and outside contributors merge within days; 262 issues and pull requests are open (18). Official SDKs, updated 5 November (15). CI with linting, spellcheck, governance checks and example validation, and Dependabot updates (10). 20 + 7 + 18 + 15 + 10 = 70."
        },
        "scores": {
          "a": 97,
          "b": 70
        }
      },
      {
        "by": 12,
        "category": "security",
        "leads": "mpp",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Payment proofs are single use, challenges can be bound with HMAC-SHA256 and to a digest of the request body, and the card path uses Stripe shared payment tokens with usage and expiry limits (26). Spend is capped by SPT limits and session deposits, while overall agent budgets are left to the client (14). The draft tells clients they MUST NOT trust the description and MUST check amount, recipient, currency and validity window themselves (13). Every paid response carries a Payment-Receipt header and settlement leaves an on-chain or Stripe record (13). Reports go to security@tempo.xyz with acknowledgement in 5 days, there's no bug bounty while Tempo is under audit, and mppx has published five advisories in 2026, one critical, with none since 1 July (13).",
          "b": "OAuth 2.0 identity linking, RFC 9421 signatures for signed agents with key IDs bound to JWK thumbprints, and payment handlers with token exchange instead of raw card data (25 of 30). Checkout can hand back to the buyer through continue_url or an embedded checkout, and AP2 mandates record consent, but unattended completion is allowed by design (15 of 20). The permalink spec treats URL inputs as untrusted and requires server-side validation, but we found no guidance on product text reaching an agent (5 of 15). Order events go to business webhooks; we didn't read whether they are signed (8 of 15). SECURITY.md routes reports to Google's intake with a stated response time and GitHub advisories (14 of 20). 25 + 15 + 5 + 8 + 14 = 67."
        },
        "scores": {
          "a": 79,
          "b": 67
        }
      },
      {
        "by": 9,
        "category": "ergonomics",
        "leads": "mpp",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "One 402 and one retry, and session intents let many small calls share one deposit (23). Charge and subscription intents, per-method sessions, client payment preferences and a discovery draft (17). Error codes such as payment-insufficient, payment-expired and invalid-challenge say what failed, and servers SHOULD send Retry-After (18). The draft requires single-use proofs, at most one settlement for concurrent requests with the same credential, and recommends an Idempotency-Key for non-idempotent methods (18). SDKs in five languages and a CLI (15).",
          "b": "Protocol reading. Capability negotiation means an agent sees only what both sides support, though the schemas are large (18 of 25). Catalogue search pages with a cursor and has_next_page (15 of 20). An error model with codes and continue_url to hand a buyer to the business when the agent can't finish (18). The MCP binding requires an idempotency-key UUID on checkout calls for retry safety (18). Official SDKs in Python and JavaScript; every request needs a UCP-Agent profile (13 of 15). 18 + 15 + 18 + 18 + 13 = 82."
        },
        "scores": {
          "a": 91,
          "b": 82
        }
      },
      {
        "by": 6,
        "category": "reliability",
        "leads": "mpp",
        "name": "Reliability",
        "reasons": {
          "a": "Graded as a protocol on reference implementations (30), public servers or processors (25), spec stability (25) and test vectors (20). Official SDKs in TypeScript (mppx), Python, Go, Rust and Ruby (30). There's no facilitator role, servers verify on chain or through Stripe, and the mpp.dev catalogue source lists 119 services in its main file on 1 November (36 first-party and 83 third-party integrations), and the Tempo proxy entries moved to a separate mpp-proxy.json on 28 October, about 138 in all against the 137 the directory page showed on 1 October (20). The core is still an individual Internet-Draft at revision 01 (9 September 2026, expiring 13 March 2027), not adopted by any IETF working group, while the scheme carries no wire version and is built to evolve by adding fields (15). The draft includes HMAC-SHA256 challenge-binding test vectors, and every SDK runs a shared conformance suite from tempoxyz/mpp-tools in CI, with cross-SDK smoke tests in Rust (20).",
          "b": "Protocol reading, split as reference implementations 30, live deployments 25, spec stability 25 and test vectors 20. Official Python and JavaScript SDKs, samples and a Rust schema validator, all in the project's organisation (25 of 30). Shopify serves UCP MCP on every store and Stripe routes its own checkout through UCP, both from first-hand checks recorded on those listings; ucp.dev lists about 50 endorsers, which are claims (20 of 25). Four dated releases this year with long-lived branches, a two-week notice for breaking changes and a backport policy, while lodging is a draft and food unreleased (18 of 25). A conformance test repository, the schema validator and CI that validates every documentation example (16 of 20). 25 + 20 + 18 + 16 = 79."
        },
        "scores": {
          "a": 85,
          "b": 79
        }
      }
    ],
    "facts": [
      {
        "a": "Payment protocol",
        "b": "Payment protocol",
        "name": "Kind"
      },
      {
        "a": "Tempo and Stripe",
        "b": "UCP Authors (Google, Shopify and co-developers)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "None",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Free",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "CC0-1.0 (spec)",
        "b": "Apache-2.0",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-29",
        "b": "2026-08-25",
        "name": "Last release"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "no document linked",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "93 stars",
        "b": "3.5k stars",
        "name": "Popularity"
      },
      {
        "a": "4/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Machine Payments Protocol (MPP) scores 81.7 (A) on agent readiness against Universal Commerce Protocol (UCP)'s 72 (BB), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Machine Payments Protocol (MPP) or Universal Commerce Protocol (UCP)?"
      },
      {
        "answer": "No open-source release is listed for Machine Payments Protocol (MPP). Universal Commerce Protocol (UCP) is open source (Apache-2.0).",
        "question": "Are Machine Payments Protocol (MPP) and Universal Commerce Protocol (UCP) open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 85 against 79",
          "Agent ergonomics, 91 against 82",
          "Security \u0026 auth, 79 against 67",
          "Payments \u0026 pricing, 94 against 50",
          "Maintenance \u0026 community, 97 against 70"
        ],
        "also": [
          "No key needed to call it"
        ],
        "goodFor": "Sellers who want stablecoins and cards behind one 402, or Stripe settlement into a fiat balance, and for agents making many small calls through sessions. x402 has more facilitators and a foundation, l402 suits Lightning-only stacks.",
        "slug": "mpp",
        "watchFor": "Individual Internet-Draft, not adopted by any IETF working group"
      },
      {
        "aheadOn": null,
        "also": [
          "Open source",
          "No incidents deducted, where Machine Payments Protocol (MPP) loses 3 points for them"
        ],
        "goodFor": "Agents buying from merchants that publish UCP profiles, and platforms building agent checkout. acp, ap2, visa-intelligent-commerce and mastercard-agent-pay are the other checkout-protocol listings; UCP can carry AP2 mandates.",
        "slug": "ucp",
        "watchFor": "No release since v2026-08-25, though main changes most days"
      }
    ],
    "history": {
      "mpp": [
        {
          "causes": [
            "product"
          ],
          "date": "2026-11-01",
          "delta": 0.2,
          "from": 81.5,
          "fromGrade": "A",
          "to": 81.7,
          "toGrade": "A"
        },
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-10-28",
          "delta": 0.1,
          "from": 81.4,
          "fromGrade": "A",
          "to": 81.5,
          "toGrade": "A"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.3,
          "from": 81.1,
          "fromGrade": "A",
          "to": 81.4,
          "toGrade": "A"
        }
      ],
      "ucp": null
    },
    "job": {
      "capability": "payments.protocol",
      "name": "Agent payment protocols"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/ack-pay-vs-mpp.json",
        "title": "ACK-Pay (Agent Commerce Kit) vs Machine Payments Protocol (MPP)",
        "url": "https://www.anchorterminal.com/compare/ack-pay-vs-mpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ack-pay-vs-ucp.json",
        "title": "ACK-Pay (Agent Commerce Kit) vs Universal Commerce Protocol (UCP)",
        "url": "https://www.anchorterminal.com/compare/ack-pay-vs-ucp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/acp-vs-mpp.json",
        "title": "Agentic Commerce Protocol (ACP) vs Machine Payments Protocol (MPP)",
        "url": "https://www.anchorterminal.com/compare/acp-vs-mpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/acp-vs-ucp.json",
        "title": "Agentic Commerce Protocol (ACP) vs Universal Commerce Protocol (UCP)",
        "url": "https://www.anchorterminal.com/compare/acp-vs-ucp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amex-ace-vs-mpp.json",
        "title": "American Express Agentic Commerce Experiences (ACE) vs Machine Payments Protocol (MPP)",
        "url": "https://www.anchorterminal.com/compare/amex-ace-vs-mpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amex-ace-vs-ucp.json",
        "title": "American Express Agentic Commerce Experiences (ACE) vs Universal Commerce Protocol (UCP)",
        "url": "https://www.anchorterminal.com/compare/amex-ace-vs-ucp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ap2-vs-mpp.json",
        "title": "Agent Payments Protocol (AP2) vs Machine Payments Protocol (MPP)",
        "url": "https://www.anchorterminal.com/compare/ap2-vs-mpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ap2-vs-ucp.json",
        "title": "Agent Payments Protocol (AP2) vs Universal Commerce Protocol (UCP)",
        "url": "https://www.anchorterminal.com/compare/ap2-vs-ucp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/l402-vs-mpp.json",
        "title": "L402 vs Machine Payments Protocol (MPP)",
        "url": "https://www.anchorterminal.com/compare/l402-vs-mpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/l402-vs-ucp.json",
        "title": "L402 vs Universal Commerce Protocol (UCP)",
        "url": "https://www.anchorterminal.com/compare/l402-vs-ucp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mastercard-agent-pay-vs-mpp.json",
        "title": "Mastercard Agent Pay vs Machine Payments Protocol (MPP)",
        "url": "https://www.anchorterminal.com/compare/mastercard-agent-pay-vs-mpp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mastercard-agent-pay-vs-ucp.json",
        "title": "Mastercard Agent Pay vs Universal Commerce Protocol (UCP)",
        "url": "https://www.anchorterminal.com/compare/mastercard-agent-pay-vs-ucp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mpp-vs-visa-intelligent-commerce.json",
        "title": "Machine Payments Protocol (MPP) vs Visa Intelligent Commerce",
        "url": "https://www.anchorterminal.com/compare/mpp-vs-visa-intelligent-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mpp-vs-x402.json",
        "title": "Machine Payments Protocol (MPP) vs x402",
        "url": "https://www.anchorterminal.com/compare/mpp-vs-x402"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ucp-vs-visa-intelligent-commerce.json",
        "title": "Universal Commerce Protocol (UCP) vs Visa Intelligent Commerce",
        "url": "https://www.anchorterminal.com/compare/ucp-vs-visa-intelligent-commerce"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ucp-vs-x402.json",
        "title": "Universal Commerce Protocol (UCP) vs x402",
        "url": "https://www.anchorterminal.com/compare/ucp-vs-x402"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 6,
        "edge": "mpp",
        "key": "reliability",
        "mpp": 85,
        "name": "Reliability",
        "ucp": 79,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 1,
        "edge": "ucp",
        "key": "schema",
        "mpp": 89,
        "name": "Schema \u0026 documentation",
        "ucp": 90,
        "weight": 13
      },
      {
        "by": 9,
        "edge": "mpp",
        "key": "ergonomics",
        "mpp": 91,
        "name": "Agent ergonomics",
        "ucp": 82,
        "weight": 13
      },
      {
        "by": 12,
        "edge": "mpp",
        "key": "security",
        "mpp": 79,
        "name": "Security \u0026 auth",
        "ucp": 67,
        "weight": 14
      },
      {
        "by": 44,
        "edge": "mpp",
        "key": "payments",
        "mpp": 94,
        "name": "Payments \u0026 pricing",
        "ucp": 50,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 27,
        "edge": "mpp",
        "key": "maintenance",
        "mpp": 97,
        "name": "Maintenance \u0026 community",
        "ucp": 70,
        "weight": 7
      },
      {
        "by": 3,
        "edge": "mpp",
        "key": "transparency",
        "mpp": 50,
        "name": "Transparency \u0026 trust",
        "ucp": 47,
        "weight": 7
      }
    ],
    "summary": "Machine Payments Protocol (MPP) scores 81.7 (A) on agent readiness against Universal Commerce Protocol (UCP)'s 72 (BB), and leads in 6 of 7 scored categories. Both do agent payment protocols.",
    "tasks": null,
    "tutorials": [
      {
        "title": "Inspect an MPP payment challenge before paying",
        "tool": "mpp",
        "url": "https://www.anchorterminal.com/tutorials/mpp/"
      }
    ],
    "verdicts": {
      "mpp": "A 1,464-line Internet-Draft with 11 error codes, Retry-After and HMAC-SHA256 test vectors. Individual Internet-Draft, not adopted by any IETF working group.",
      "ucp": "OpenAPI, OpenRPC and JSON Schema for every surface, official Python and JavaScript SDKs, conformance tests and live use on Shopify stores and Stripe's checkout. Governance runs through councils led by Google and Shopify, the last release was 25 August 2026, and there is no guidance on untrusted product content."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/mpp-vs-ucp",
    "json": "https://www.anchorterminal.com/compare/mpp-vs-ucp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/mpp-vs-ucp.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/mpp-vs-ucp.min.md"
  },
  "markdown": "Machine Payments Protocol (MPP) scores 81.7 (A) on agent readiness against Universal Commerce Protocol (UCP)'s 72 (BB), and leads in 6 of 7 scored categories. Both do agent payment protocols.\n\n- Machine Payments Protocol (MPP): grade A, 81.7/100, rank graded, not ranked against tools. Markdown https://www.anchorterminal.com/tools/mpp.md · JSON https://www.anchorterminal.com/api/v1/tools/mpp.json\n- Universal Commerce Protocol (UCP): grade BB, 72/100, rank graded, not ranked against tools. Markdown https://www.anchorterminal.com/tools/ucp.md · JSON https://www.anchorterminal.com/api/v1/tools/ucp.json\n- All 30 pay per call comparisons: https://www.anchorterminal.com/compare/pay-per-call/index.md\n- All 39 checkout comparisons: https://www.anchorterminal.com/compare/checkout-protocols/index.md\n\n## Which one, for what\n\n### Machine Payments Protocol (MPP) (A)\n\nGood for: Sellers who want stablecoins and cards behind one 402, or Stripe settlement into a fiat balance, and for agents making many small calls through sessions. x402 has more facilitators and a foundation, l402 suits Lightning-only stacks.\n\nAhead on:\n- Reliability, 85 against 79\n- Agent ergonomics, 91 against 82\n- Security \u0026 auth, 79 against 67\n- Payments \u0026 pricing, 94 against 50\n- Maintenance \u0026 community, 97 against 70\n\nAlso in its favour:\n- No key needed to call it\n\nWatch for: Individual Internet-Draft, not adopted by any IETF working group\n\n### Universal Commerce Protocol (UCP) (BB)\n\nGood for: Agents buying from merchants that publish UCP profiles, and platforms building agent checkout. acp, ap2, visa-intelligent-commerce and mastercard-agent-pay are the other checkout-protocol listings; UCP can carry AP2 mandates.\n\nAlso in its favour:\n- Open source\n- No incidents deducted, where Machine Payments Protocol (MPP) loses 3 points for them\n\nWatch for: No release since v2026-08-25, though main changes most days\n\n\n## Why the edge\n\n### Payments \u0026 pricing: Machine Payments Protocol (MPP) +44\n\n- Machine Payments Protocol (MPP) (94): MPP is a machine payment protocol (40). No protocol fee. Tempo gas is capped near $0.0006 a transfer and Stripe charges 1.5 per cent on stablecoins and $0.15 per shared payment token per the 26 September check, while Stripe's page sets minimums of $0.50 for card tokens and 0.01 USDC for stablecoins (17). The spec is CC0 and the SDKs are open source (20). A buyer with a stablecoin wallet needs no account, but the card route needs a token from Link, optionally approved by a person (17).\n- Universal Commerce Protocol (UCP) (50): Protocol reading. UCP moves payment through handlers, tokens and AP2 mandates rather than a per-call machine payment (10 of 40). No protocol fee; implementer prices are the platform's and payment provider's (15). The spec, SDKs and samples are free (20). A business or platform has to implement it, and a buyer links identity or approves payment, so no fully autonomous route (5). 10 + 15 + 20 + 5 = 50.\n\n### Maintenance \u0026 community: Machine Payments Protocol (MPP) +27\n\n- Machine Payments Protocol (MPP) (97): mppx 0.17.0, mpp-rs 0.18.1 and pympp 0.18.0 on 29 October 2026, and a spec commit on 26 October (30). mppx alone tagged 22 releases in the 90 days to 1 November (20). 10 open issues and 20 open pull requests on mppx on 1 November, down from 14 issues on 1 October. Reply times weren't read, so 22 stands (22). Official SDKs in five languages, all tagged in October 2026, with mpp-go moving from v0.2.0 (1 July) to v0.4.0 through v0.6.0 between 24 and 26 October and mpp-rb at v0.1.10 (15). CI with dependency scanning, Dependabot, OpenSSF Scorecard in mppx and fuzzing in Rust (10).\n- Universal Commerce Protocol (UCP) (70): The latest release is v2026-08-25, 73 days before this check (20). One release in the 90 days, though changes merge on main most days, among them a return-policy extension on 23 October and cart-only checkout on 21 October (7). Pull requests from Google, Shopify and outside contributors merge within days; 262 issues and pull requests are open (18). Official SDKs, updated 5 November (15). CI with linting, spellcheck, governance checks and example validation, and Dependabot updates (10). 20 + 7 + 18 + 15 + 10 = 70.\n\n### Security \u0026 auth: Machine Payments Protocol (MPP) +12\n\n- Machine Payments Protocol (MPP) (79): Payment proofs are single use, challenges can be bound with HMAC-SHA256 and to a digest of the request body, and the card path uses Stripe shared payment tokens with usage and expiry limits (26). Spend is capped by SPT limits and session deposits, while overall agent budgets are left to the client (14). The draft tells clients they MUST NOT trust the description and MUST check amount, recipient, currency and validity window themselves (13). Every paid response carries a Payment-Receipt header and settlement leaves an on-chain or Stripe record (13). Reports go to security@tempo.xyz with acknowledgement in 5 days, there's no bug bounty while Tempo is under audit, and mppx has published five advisories in 2026, one critical, with none since 1 July (13).\n- Universal Commerce Protocol (UCP) (67): OAuth 2.0 identity linking, RFC 9421 signatures for signed agents with key IDs bound to JWK thumbprints, and payment handlers with token exchange instead of raw card data (25 of 30). Checkout can hand back to the buyer through continue_url or an embedded checkout, and AP2 mandates record consent, but unattended completion is allowed by design (15 of 20). The permalink spec treats URL inputs as untrusted and requires server-side validation, but we found no guidance on product text reaching an agent (5 of 15). Order events go to business webhooks; we didn't read whether they are signed (8 of 15). SECURITY.md routes reports to Google's intake with a stated response time and GitHub advisories (14 of 20). 25 + 15 + 5 + 8 + 14 = 67.\n\n### Agent ergonomics: Machine Payments Protocol (MPP) +9\n\n- Machine Payments Protocol (MPP) (91): One 402 and one retry, and session intents let many small calls share one deposit (23). Charge and subscription intents, per-method sessions, client payment preferences and a discovery draft (17). Error codes such as payment-insufficient, payment-expired and invalid-challenge say what failed, and servers SHOULD send Retry-After (18). The draft requires single-use proofs, at most one settlement for concurrent requests with the same credential, and recommends an Idempotency-Key for non-idempotent methods (18). SDKs in five languages and a CLI (15).\n- Universal Commerce Protocol (UCP) (82): Protocol reading. Capability negotiation means an agent sees only what both sides support, though the schemas are large (18 of 25). Catalogue search pages with a cursor and has_next_page (15 of 20). An error model with codes and continue_url to hand a buyer to the business when the agent can't finish (18). The MCP binding requires an idempotency-key UUID on checkout calls for retry safety (18). Official SDKs in Python and JavaScript; every request needs a UCP-Agent profile (13 of 15). 18 + 15 + 18 + 18 + 13 = 82.\n\n### Reliability: Machine Payments Protocol (MPP) +6\n\n- Machine Payments Protocol (MPP) (85): Graded as a protocol on reference implementations (30), public servers or processors (25), spec stability (25) and test vectors (20). Official SDKs in TypeScript (mppx), Python, Go, Rust and Ruby (30). There's no facilitator role, servers verify on chain or through Stripe, and the mpp.dev catalogue source lists 119 services in its main file on 1 November (36 first-party and 83 third-party integrations), and the Tempo proxy entries moved to a separate mpp-proxy.json on 28 October, about 138 in all against the 137 the directory page showed on 1 October (20). The core is still an individual Internet-Draft at revision 01 (9 September 2026, expiring 13 March 2027), not adopted by any IETF working group, while the scheme carries no wire version and is built to evolve by adding fields (15). The draft includes HMAC-SHA256 challenge-binding test vectors, and every SDK runs a shared conformance suite from tempoxyz/mpp-tools in CI, with cross-SDK smoke tests in Rust (20).\n- Universal Commerce Protocol (UCP) (79): Protocol reading, split as reference implementations 30, live deployments 25, spec stability 25 and test vectors 20. Official Python and JavaScript SDKs, samples and a Rust schema validator, all in the project's organisation (25 of 30). Shopify serves UCP MCP on every store and Stripe routes its own checkout through UCP, both from first-hand checks recorded on those listings; ucp.dev lists about 50 endorsers, which are claims (20 of 25). Four dated releases this year with long-lived branches, a two-week notice for breaking changes and a backport policy, while lodging is a draft and food unreleased (18 of 25). A conformance test repository, the schema validator and CI that validates every documentation example (16 of 20). 25 + 20 + 18 + 16 = 79.\n\n## Score by category\n\n| Category | Weight | Machine Payments Protocol (MPP) | Universal Commerce Protocol (UCP) | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 85 | 79 | Machine Payments Protocol (MPP) +6 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 90 | Universal Commerce Protocol (UCP) +1 |\n| Agent ergonomics | 13% (16.2 this run) | 91 | 82 | Machine Payments Protocol (MPP) +9 |\n| Security \u0026 auth | 14% (17.5 this run) | 79 | 67 | Machine Payments Protocol (MPP) +12 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 94 | 50 | Machine Payments Protocol (MPP) +44 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 97 | 70 | Machine Payments Protocol (MPP) +27 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 50 | 47 | Machine Payments Protocol (MPP) +3 |\n| Negative events | ≤15 | -3 | 0 | |\n| **Total** | | **81.7 · A** | **72 · BB** | |\n\n## Facts side by side\n\n| Fact | Machine Payments Protocol (MPP) | Universal Commerce Protocol (UCP) |\n| --- | --- | --- |\n| Kind | Payment protocol | Payment protocol |\n| Vendor | Tempo and Stripe | UCP Authors (Google, Shopify and co-developers) |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  |  |\n| Auth | None | OAuth |\n| Pricing | Free | Free |\n| x402 | no | no |\n| Licence | CC0-1.0 (spec) | Apache-2.0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-29 | 2026-08-25 |\n| Terms last updated | no document linked | no document linked |\n| Privacy policy last updated | no document linked | no document linked |\n| Popularity | 93 stars | 3.5k stars |\n| Agent reviews | 4/5 (2) | none |\n\n## How the scores have moved\n\n### Machine Payments Protocol (MPP)\n\n- +0.2 on 1 November 2026: product\n- +0.1 on 28 October 2026: new evidence\n- +0.3 on 27 October 2026: checklist\n\n### Universal Commerce Protocol (UCP)\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Machine Payments Protocol (MPP).** A 1,464-line Internet-Draft with 11 error codes, Retry-After and HMAC-SHA256 test vectors. Individual Internet-Draft, not adopted by any IETF working group.\n\n**Universal Commerce Protocol (UCP).** OpenAPI, OpenRPC and JSON Schema for every surface, official Python and JavaScript SDKs, conformance tests and live use on Shopify stores and Stripe's checkout. Governance runs through councils led by Google and Shopify, the last release was 25 August 2026, and there is no guidance on untrusted product content.\n\n## Before you call either\n\n### Machine Payments Protocol (MPP)\n\n1. Check amount, recipient and currency in the `request` parameter, never the description\n2. Send an `Idempotency-Key` when retrying a paid POST\n3. Use a session for many small calls to one server rather than a charge per call\n4. Set `max_amount` and `expires_at` on any card token\n5. Run a current mppx, releases before 0.4.11 had payment-bypass and session-voucher bugs\n\n### Universal Commerce Protocol (UCP)\n\n1. Read the business profile first and call only the capabilities both profiles declare\n2. Send a fresh idempotency-key UUID on each checkout call and reuse it on retry\n3. Hand the buyer the continue_url when a checkout needs a person instead of retrying\n4. Send a UCP-Agent profile, and sign requests with RFC 9421 if the business requires signed agents\n\n## Tutorials\n\n- [Inspect an MPP payment challenge before paying](https://www.anchorterminal.com/tutorials/mpp/), for Machine Payments Protocol (MPP)\n\n## Questions\n\n### Which is better for AI agents, Machine Payments Protocol (MPP) or Universal Commerce Protocol (UCP)?\n\nMachine Payments Protocol (MPP) scores 81.7 (A) on agent readiness against Universal Commerce Protocol (UCP)'s 72 (BB), and leads in 6 of 7 scored categories.\n\n### Are Machine Payments Protocol (MPP) and Universal Commerce Protocol (UCP) open source?\n\nNo open-source release is listed for Machine Payments Protocol (MPP). Universal Commerce Protocol (UCP) is open source (Apache-2.0).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/mpp-vs-ucp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/mpp-vs-ucp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"mpp\", \"b\": \"ucp\"}`. From a terminal: `anchor compare mpp ucp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/mpp.json and https://www.anchorterminal.com/api/v1/tools/ucp.json\n\n## Other comparisons with Machine Payments Protocol (MPP) or Universal Commerce Protocol (UCP)\n\n- [ACK-Pay (Agent Commerce Kit) vs Machine Payments Protocol (MPP)](https://www.anchorterminal.com/compare/ack-pay-vs-mpp.md)\n- [ACK-Pay (Agent Commerce Kit) vs Universal Commerce Protocol (UCP)](https://www.anchorterminal.com/compare/ack-pay-vs-ucp.md)\n- [Agentic Commerce Protocol (ACP) vs Machine Payments Protocol (MPP)](https://www.anchorterminal.com/compare/acp-vs-mpp.md)\n- [Agentic Commerce Protocol (ACP) vs Universal Commerce Protocol (UCP)](https://www.anchorterminal.com/compare/acp-vs-ucp.md)\n- [American Express Agentic Commerce Experiences (ACE) vs Machine Payments Protocol (MPP)](https://www.anchorterminal.com/compare/amex-ace-vs-mpp.md)\n- [American Express Agentic Commerce Experiences (ACE) vs Universal Commerce Protocol (UCP)](https://www.anchorterminal.com/compare/amex-ace-vs-ucp.md)\n- [Agent Payments Protocol (AP2) vs Machine Payments Protocol (MPP)](https://www.anchorterminal.com/compare/ap2-vs-mpp.md)\n- [Agent Payments Protocol (AP2) vs Universal Commerce Protocol (UCP)](https://www.anchorterminal.com/compare/ap2-vs-ucp.md)\n- [L402 vs Machine Payments Protocol (MPP)](https://www.anchorterminal.com/compare/l402-vs-mpp.md)\n- [L402 vs Universal Commerce Protocol (UCP)](https://www.anchorterminal.com/compare/l402-vs-ucp.md)\n- [Mastercard Agent Pay vs Machine Payments Protocol (MPP)](https://www.anchorterminal.com/compare/mastercard-agent-pay-vs-mpp.md)\n- [Mastercard Agent Pay vs Universal Commerce Protocol (UCP)](https://www.anchorterminal.com/compare/mastercard-agent-pay-vs-ucp.md)\n- [Machine Payments Protocol (MPP) vs Visa Intelligent Commerce](https://www.anchorterminal.com/compare/mpp-vs-visa-intelligent-commerce.md)\n- [Machine Payments Protocol (MPP) vs x402](https://www.anchorterminal.com/compare/mpp-vs-x402.md)\n- [Universal Commerce Protocol (UCP) vs Visa Intelligent Commerce](https://www.anchorterminal.com/compare/ucp-vs-visa-intelligent-commerce.md)\n- [Universal Commerce Protocol (UCP) vs x402](https://www.anchorterminal.com/compare/ucp-vs-x402.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Machine Payments Protocol (MPP) vs Universal Commerce Protocol (UCP)",
        "url": ""
      }
    ],
    "description": "Machine Payments Protocol scores 81.7 (A) to Universal Commerce Protocol's 72 (BB) for agent payment protocols. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Machine Payments Protocol (MPP) A 81.7",
      "Universal Commerce Protocol (UCP) BB 72",
      "scores"
    ],
    "h1": "Machine Payments Protocol (MPP) vs Universal Commerce Protocol (UCP)",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/mpp-vs-ucp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Machine Payments Protocol vs Universal Commerce Protocol (2026)",
    "toc": null,
    "updated": "2026-11-06",
    "url": "https://www.anchorterminal.com/compare/mpp-vs-ucp"
  },
  "tokens": {
    "markdown": 4050,
    "slim": 2380
  },
  "version": 1
}
