{
  "data": {
    "a": {
      "slug": "metronome",
      "name": "Metronome",
      "vendor": "Metronome (Stripe)",
      "vendorUrl": "https://metronome.com",
      "kind": "http-api",
      "category": "payment-platforms",
      "summary": "Metronome is a hosted usage-based billing platform, part of Stripe. Its REST API ingests usage events, defines billable metrics, rate cards and contracts, and generates invoices, with official SDKs for Python, Node.js, Go, Ruby and Java.",
      "url": "https://www.anchorterminal.com/tools/metronome",
      "markdownUrl": "https://www.anchorterminal.com/tools/metronome.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/metronome.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/metronome.json",
      "repo": "https://github.com/Metronome-Industries/metronome-node",
      "license": "Proprietary service under the Stripe Services Agreement. The SDKs on GitHub are Apache-2.0",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.metronome.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@metronome/sdk"
        },
        {
          "registry": "pypi",
          "name": "metronome-sdk"
        },
        {
          "registry": "go",
          "name": "github.com/Metronome-Industries/metronome-go"
        }
      ],
      "auth": "api-key",
      "authNotes": "Bearer tokens, created by a person under Developer, API tokens in the Metronome app and shown once. A sandbox token reaches only sandbox data and a production token only production data. A token has its creator's permissions unless Metronome support scopes it by access level, environment or endpoint. Tokens can be archived, not edited. The API description also describes agentic tokens, whose writes need a person's approval.",
      "pricing": "usage",
      "pricingNotes": "The Startup plan costs 0.8 per cent of billing volume plus $0.04 per 1,000 ingested events, self-serve with a credit card for production. The pricing page says \"Start free\" and a sandbox account is self-serve. Custom plan prices are set by sales, and the docs describe an annual platform fee plus consumption charges on order forms (https://metronome.com/pricing, checked 2026-10-09).",
      "priceSummary": "0.8% fee",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the OpenAPI description, the docs index or the pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 7,
        "npmWeekly": 363390,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.metronome.com/guides/get-started/home",
      "llmsTxt": "https://docs.metronome.com/llms.txt",
      "openapi": "https://docs.metronome.com/openapi.json",
      "capabilities": [
        "payments.metering",
        "accounting.invoices"
      ],
      "tags": [
        "hosted",
        "usage-billing",
        "openapi",
        "llms-txt",
        "webhooks",
        "python",
        "typescript",
        "go",
        "ruby",
        "java",
        "status-page",
        "soc2",
        "closed-source",
        "sandbox"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.7,
        "grade": "B",
        "agentReady": false,
        "rank": 173,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 4,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 75,
          "maintenance": 82,
          "payments": 39,
          "reliability": 68,
          "schema": 88,
          "security": 68,
          "transparency": 65
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "Metronome's API carries an `Idempotency-Key` on every POST, a public OpenAPI description of 142 operations, and agentic tokens whose writes wait for a person's approval. Prices for the Startup plan are public. Errors return only a `message` string, token scopes are set through support, and the status feed lists 13 incidents since 22 July 2026.",
        "bestFor": "A company that meters usage and bills on contracts, credits and commits, with invoices delivered through Stripe, NetSuite or cloud marketplaces.",
        "strengths": [
          "Public OpenAPI 3.0.1 description with 142 operations and 509 schemas, plus llms.txt and a Markdown twin of each docs page",
          "`Idempotency-Key` accepted on every POST for at least 24 hours, `uniqueness_key` on contracts and alerts, and event `transaction_id` deduplication for 34 days",
          "Agentic tokens get `403 AgenticMutationBlocked` on writes and queue them at `/v1/approval_requests` for a person to approve or deny",
          "Audit log readable at `/v1/auditLogs`, naming the user or API token, the resource, the action, the IP address and the user agent",
          "Startup plan prices are public (0.8 per cent of billing volume and $0.04 per 1,000 ingested events), with a self-serve sandbox sign-up"
        ],
        "weaknesses": [
          "Errors are a single `message` string with no machine-readable code, and the API description documents a 4xx response on 87 of 142 operations",
          "Token scoping by access level, environment or endpoint is set by contacting support. By default a token has its creator's permissions",
          "The status feed lists 13 incidents between 22 July and 8 October 2026, among them two hours of elevated API and ingest errors on 3 September",
          "No SLA document is published. The pricing page names enhanced SLAs on the Custom plan only",
          "The governing terms are Stripe's Services Agreement, which does not name Metronome and grants Stripe a licence to use customer content to develop and improve its services",
          "No deprecation policy was found. SDK releases of 16 January and 2 March 2026 removed fields, announced in the changelog on the day"
        ],
        "agentNotes": [
          "Send an `Idempotency-Key` header on every POST and reuse it on retry. A cached error is returned for the same key, so use a new key after fixing the cause",
          "Give each usage event a stable `transaction_id`. Metronome ignores repeats for 34 days and accepts at most 100 events per `/v1/ingest` call",
          "On 429 read `X-Metronome-Rate-Limit-Type` (`client` or `customer`) and back off. Unlisted endpoints default to 8 requests a second",
          "With an agentic token, expect `403 AgenticMutationBlocked` on writes. Post the original method, path and body to `/v1/approval_requests` and show the person the `approval_url`",
          "Use a sandbox token for testing. The token alone decides whether a call reaches sandbox or production data"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.7
          }
        ],
        "editorialScores": {
          "ergonomics": 75,
          "maintenance": 82,
          "payments": 39,
          "reliability": 68,
          "schema": 88,
          "security": 68,
          "transparency": 45
        },
        "provenanceScore": 85
      },
      "connect": {
        "install": "npm install @metronome/sdk",
        "http": "curl -X POST https://api.metronome.com/v1/billable-metrics/create \\\n  -H \"Authorization: Bearer $METRONOME_API_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"API Calls\",\n    \"aggregation_type\": \"count\",\n    \"event_type_filter\": {\n      \"in_values\": [\"api_call\"]\n    }\n  }'"
      },
      "letme": {
        "capability": "https://letme.dev/payments.metering",
        "tool": "https://letme.dev/metronome"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "Startup plan fee on billing volume",
          "unit": "pct",
          "usd": 0.8,
          "note": "plus the event fee. Custom plan priced by sales"
        },
        {
          "item": "Ingested usage event on the Startup plan",
          "unit": "tx",
          "usd": 0.00004,
          "note": "$0.04 per 1,000 ingest events"
        }
      ],
      "provenance": {
        "legalEntity": "Stripe, LLC",
        "domain": "metronome.com",
        "domainRegistered": "1998-11-04",
        "endpointOnVendorDomain": true,
        "terms": "https://stripe.com/legal/ssa",
        "privacy": "https://stripe.com/privacy",
        "statusPage": "https://status.metronome.com",
        "changelog": "https://docs.metronome.com/changelog",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "Metronome's site says it is now part of Stripe. Its legal centre links two documents, Stripe's Services Agreement as terms of service and Stripe's privacy policy.",
          "The Stripe Services Agreement (General Terms last modified 28 September 2026) names Stripe, LLC as the contracting entity for the United States, with other Stripe entities by country. It does not mention Metronome by name. Our request was redirected to the United Kingdom edition of the page.",
          "The Stripe privacy policy was last updated on 28 April 2026 and covers services supplied under the Stripe Services Agreement. It does not mention Metronome by name.",
          "The API answers at https://api.metronome.com per the OpenAPI description's server entry.",
          "https://metronome.com/.well-known/security.txt returned 404. The SDK repositories' SECURITY.md gives dev-feedback@metronome.com for service security questions.",
          "RDAP for metronome.com gives a registration date of 1998-11-04, which predates the company."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/metronome.json",
      "live": {
        "slug": "metronome",
        "probe": {
          "target": "https://api.metronome.com",
          "method": "get",
          "lastAt": "2026-10-10T02:55:02.229219584Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 427,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 427,
          "p95ms24h": 510,
          "samples24h": 115,
          "samples30d": 115,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 30,
              "ok": 30
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.metronome.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-10T02:50:27.569689356Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "Metronome-Industries/metronome-node",
            "version": "v3.10.0",
            "released": "2026-07-23",
            "seenAt": "2026-10-09T17:05:18.814448022Z"
          },
          {
            "registry": "npm",
            "name": "@metronome/sdk",
            "version": "3.10.0",
            "seenAt": "2026-10-09T17:05:16.810932336Z"
          },
          {
            "registry": "pypi",
            "name": "metronome-sdk",
            "version": "4.11.1",
            "released": "2026-08-28",
            "seenAt": "2026-10-09T17:05:17.824671392Z"
          }
        ],
        "githubStars": 7,
        "npmWeekly": 363390,
        "pypiWeekly": 157134,
        "pages": [
          {
            "url": "https://docs.metronome.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:37:46.155976649Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "db085f3c5807"
          },
          {
            "url": "https://metronome.com/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:42:03.074548835Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "0590b21f8bad"
          },
          {
            "url": "https://stripe.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:46:09.307033961Z",
            "changedAt": "2026-10-08T18:24:56.248781585Z",
            "fingerprint": "73ea5b705ed5"
          },
          {
            "url": "https://stripe.com/legal/ssa",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:46:05.029930659Z",
            "changedAt": "2026-10-08T18:24:51.983854093Z",
            "fingerprint": "43483f64e8ca"
          }
        ],
        "updatedAt": "2026-10-10T02:55:02.229219584Z"
      }
    },
    "answer": "Metronome scores 69.7 (B) on agent readiness against PayPal MCP server's 56.3 (C), and leads in 5 of 7 scored categories. PayPal MCP server leads on transparency \u0026 trust.",
    "b": {
      "slug": "paypal-mcp-server",
      "name": "PayPal MCP server",
      "vendor": "PayPal",
      "vendorUrl": "https://www.paypal.com",
      "kind": "mcp",
      "category": "payment-platforms",
      "summary": "PayPal's official MCP server lets a merchant's AI client work with invoices, orders, refunds, disputes, subscriptions, catalogue products and transaction reports. It runs locally through `npx @paypal/mcp` or as a hosted server at mcp.paypal.com with a PayPal login.",
      "url": "https://www.anchorterminal.com/tools/paypal-mcp-server",
      "markdownUrl": "https://www.anchorterminal.com/tools/paypal-mcp-server.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/paypal-mcp-server.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/paypal-mcp-server.json",
      "repo": "https://github.com/paypal/paypal-mcp-server",
      "license": "Apache-2.0 for the local server and the agent toolkit. The hosted server is a closed service under the PayPal Developer Agreement",
      "transports": [
        "stdio",
        "sse",
        "streamable-http"
      ],
      "remoteUrl": "https://mcp.paypal.com/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "@paypal/mcp"
        },
        {
          "registry": "npm",
          "name": "@paypal/agent-toolkit"
        },
        {
          "registry": "pypi",
          "name": "paypal-agent-toolkit"
        }
      ],
      "auth": "mixed",
      "authNotes": "The remote server takes OAuth. The MCP client sends the user to a PayPal login and consent page, using authorisation code with PKCE S256, refresh tokens and dynamic client registration. It also accepts a Bearer header built from a REST app's client ID and secret. The local server takes only a PayPal REST access token in `PAYPAL_ACCESS_TOKEN` or `--access-token`, which the README says lasts 32,400 seconds. A person creates the app in the PayPal Developer Dashboard, and live use needs a PayPal Business account. No scope list for the MCP server was found.",
      "pricing": "usage",
      "pricingNotes": "No charge for the MCP server or the toolkit was found. PayPal's US merchant fees apply to payments made through it, 3.49% plus $0.49 for PayPal Checkout and invoices, 2.99% plus $0.49 for standard card processing, plus 1.5% on international transactions, with no monthly fee on most products (fees page updated 1 October 2026, https://www.paypal.com/us/business/paypal-business-fees). The sandbox is free with a developer account and no card, so an agent can start without a contract.",
      "priceSummary": "3.49% fee",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the MCP quickstart, the agent tools reference, the developer llms.txt indexes or either repository (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": 28,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 995,
        "pypiWeekly": 107,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developer.paypal.com/ai-tools/mcp-server",
      "llmsTxt": "https://developer.paypal.com/llms.txt",
      "registryName": "io.github.paypal/paypal-mcp-server",
      "capabilities": [
        "payments.checkout",
        "accounting.invoices",
        "commerce.orders",
        "commerce.products"
      ],
      "tags": [
        "official",
        "hosted",
        "local",
        "open-source",
        "mcp",
        "oauth",
        "sandbox",
        "llms-txt",
        "typescript",
        "python",
        "status-page",
        "bug-bounty"
      ],
      "lastRelease": "2026-09-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.3,
        "grade": "C",
        "agentReady": false,
        "rank": 635,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 10,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 66,
          "maintenance": 64,
          "payments": 40,
          "reliability": 52,
          "schema": 70,
          "security": 48,
          "transparency": 78
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": -2,
        "negativeNotes": [
          "8 October 2026. The MCP quickstart (last updated 30 June 2026) gives `https://mcp.paypal.com/http` and `https://mcp.sandbox.paypal.com/http` as the streamable HTTP endpoints. Both returned 404 to an initialise request on 8 October 2026, while `/mcp` on each host returned the OAuth challenge. A documented endpoint that doesn't answer, minus 2 (https://developer.paypal.com/ai-tools/mcp-server)."
        ],
        "verdict": "The hosted server uses OAuth with PKCE and dynamic client registration, and the local package defaults to the sandbox. No tool carries a read-only or destructive annotation, no confirmation step for refunds or captures was found, and the documented `/http` streamable HTTP path returned 404 on 8 October 2026 while `/mcp` answered.",
        "bestFor": "A merchant already on PayPal who wants an assistant to draft and send invoices, look up orders and transactions, and manage subscriptions and disputes.",
        "strengths": [
          "Hosted server at mcp.paypal.com publishes OAuth metadata with authorisation code, PKCE S256, refresh tokens, revocation and dynamic client registration",
          "The local package starts in the sandbox unless `PAYPAL_ENVIRONMENT` is `PRODUCTION`, and `--tools=` limits which tools load",
          "Every tool input is a typed schema with enums and range limits, built from zod definitions in the Apache-2.0 toolkit",
          "US fees are public without a login, and sandbox testing needs no card or monthly fee",
          "Listed in the official MCP registry as `io.github.paypal/paypal-mcp-server`, and the toolkit had three releases between 10 August and 1 September 2026"
        ],
        "weaknesses": [
          "The quickstart gives `/http` for streamable HTTP. On 8 October 2026 it returned 404 on both hosts, and `/mcp` returned the OAuth challenge",
          "Tools are registered without `readOnlyHint` or `destructiveHint`, and no approval step for `create_refund`, `pay_order` or `accept_dispute_claim` was found",
          "`@paypal/mcp` 1.8.1 dates from 28 October 2025 and selects 28 tool keys, while the toolkit it loads defines 48 tools",
          "PayPal states that it doesn't publish rate limits, and no SLA was found. The Developer Agreement gives no uptime guarantee for the sandbox",
          "Neither repository has tests in CI, and the toolkit changelog stops at 1.3.5 from April 2025 although 1.11.0 is current"
        ],
        "agentNotes": [
          "Connect a remote client to `https://mcp.paypal.com/mcp` or `/sse`. The documented `/http` path returned 404 on 8 October 2026",
          "Set `PAYPAL_ENVIRONMENT=PRODUCTION` for live calls. Any other value, including the registry's `LIVE`, runs against the sandbox",
          "Refresh `PAYPAL_ACCESS_TOKEN` before it expires. The README gives `expires_in` 32400 seconds, and the local server takes no client ID or secret",
          "Pass `--tools=` with only the keys the task needs, such as `invoices.list,orders.get`. `--tools=all` loads 28 keys including refunds and captures",
          "Ask the user before `create_refund`, `pay_order`, `cancel_subscription` or `accept_dispute_claim`. The server applies them without a confirmation step"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 56.3
          }
        ],
        "editorialScores": {
          "ergonomics": 66,
          "maintenance": 64,
          "payments": 40,
          "reliability": 52,
          "schema": 70,
          "security": 48,
          "transparency": 58
        },
        "provenanceScore": 98
      },
      "connect": {
        "install": "npx -y @paypal/mcp --tools=all",
        "config": {
          "mcpServers": {
            "paypal": {
              "args": [
                "-y",
                "@paypal/mcp",
                "--tools=all"
              ],
              "command": "npx",
              "env": {
                "PAYPAL_ACCESS_TOKEN": "YOUR_PAYPAL_ACCESS_TOKEN",
                "PAYPAL_ENVIRONMENT": "SANDBOX"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/payments.checkout",
        "tool": "https://letme.dev/paypal-mcp-server"
      },
      "area": "payments",
      "unitPrices": [
        {
          "item": "PayPal Checkout, US domestic",
          "unit": "pct",
          "usd": 3.49,
          "note": "plus $0.49 per transaction"
        },
        {
          "item": "PayPal Checkout fixed fee, USD",
          "unit": "tx",
          "usd": 0.49
        },
        {
          "item": "Standard card processing, US domestic",
          "unit": "pct",
          "usd": 2.99,
          "note": "plus $0.49 per transaction"
        },
        {
          "item": "International commercial transaction surcharge",
          "unit": "pct",
          "usd": 1.5
        },
        {
          "item": "Standard dispute fee",
          "unit": "tx",
          "usd": 15
        }
      ],
      "provenance": {
        "legalEntity": "PayPal, Inc.",
        "domain": "paypal.com",
        "domainRegistered": "1999-07-15",
        "endpointOnVendorDomain": true,
        "terms": "https://www.paypal.com/us/legalhub/paypal/xdeveloper-full",
        "privacy": "https://www.paypal.com/us/legalhub/paypal/privacy-full",
        "statusPage": "https://www.paypal-status.com",
        "changelog": "https://github.com/paypal/agent-toolkit/blob/main/typescript/CHANGELOG.md",
        "securityTxt": "valid",
        "checked": "2026-10-08",
        "notes": [
          "The PayPal Developer Agreement, last updated 18 November 2024, governs the Developer's Tools and API calls and takes precedence over the User Agreement for them. US users contract with PayPal, Inc. and some other regions with PayPal Pte. Ltd.",
          "The US User Agreement (last updated 14 September 2026) and Privacy Statement (last updated 28 September 2026) name PayPal, Inc.",
          "www.paypal.com/.well-known/security.txt redirects to www.paypalobjects.com and names the HackerOne programme. It has no Expires field.",
          "The toolkit changelog on GitHub stops at 1.3.5 from 23 April 2025. Later releases are visible only as tags and npm versions.",
          "RDAP for paypal.com gives a registration date of 1999-07-15. The status page is on paypal-status.com, a separate domain."
        ],
        "score": 98
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/paypal-mcp-server.json",
      "live": {
        "slug": "paypal-mcp-server",
        "probe": {
          "target": "https://mcp.paypal.com/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-10-10T02:55:05.432911183Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 42,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 59,
          "p95ms24h": 210,
          "samples24h": 199,
          "samples30d": 199,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 169,
              "ok": 169
            },
            {
              "date": "2026-10-10",
              "probes": 30,
              "ok": 30
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.paypal-status.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-10T00:51:07.752293592Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@paypal/agent-toolkit",
            "version": "1.11.0",
            "seenAt": "2026-10-09T17:12:18.626045411Z"
          },
          {
            "registry": "npm",
            "name": "@paypal/mcp",
            "version": "1.8.1",
            "seenAt": "2026-10-09T17:12:17.697044735Z"
          },
          {
            "registry": "pypi",
            "name": "paypal-agent-toolkit",
            "version": "1.11.0",
            "released": "2026-09-01",
            "seenAt": "2026-10-09T17:12:19.938694069Z"
          }
        ],
        "githubStars": 13,
        "npmWeekly": 744,
        "pypiWeekly": 117,
        "securityTxt": {
          "url": "https://paypal.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-09T15:40:29.703070781Z"
        },
        "llmsTxt": {
          "url": "https://developer.paypal.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-09T14:02:34.720980943Z"
        },
        "pages": [
          {
            "url": "https://raw.githubusercontent.com/paypal/agent-toolkit/main/typescript/CHANGELOG.md",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:49.140305813Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bd425588a0b0"
          },
          {
            "url": "https://www.paypal.com/us/legalhub/paypal/privacy-full",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:55.134927797Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "01d0829deec7"
          },
          {
            "url": "https://www.paypal.com/us/legalhub/paypal/xdeveloper-full",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:52:58.102177131Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "a7925965937c"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.paypal.com/mcp",
          "checkedAt": "2026-10-09T21:40:47.41226913Z",
          "status": "auth",
          "note": "asks for credentials before listing its tools",
          "changedAt": "2026-10-09T21:40:47.41226913Z"
        },
        "updatedAt": "2026-10-10T02:55:05.432911183Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Metronome (Stripe)",
        "b": "PayPal",
        "name": "Vendor"
      },
      {
        "a": "https://api.metronome.com",
        "b": "https://mcp.paypal.com/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "stdio, SSE (legacy), Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Stripe Services Agreement. The SDKs on GitHub are Apache-2.0",
        "b": "Apache-2.0 for the local server and the agent toolkit. The hosted server is a closed service under the PayPal Developer Agreement",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "28",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "io.github.paypal/paypal-mcp-server",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-29",
        "b": "2026-09-01",
        "name": "Last release"
      },
      {
        "a": "2026-09-28",
        "b": "2024-11-18",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-28",
        "b": "2026-09-28",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "7 stars, 363k npm/wk",
        "b": "995 npm/wk, 107 PyPI/wk",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "Metronome scores 69.7 (B) on agent readiness against PayPal MCP server's 56.3 (C), and leads in 5 of 7 scored categories. PayPal MCP server leads on transparency \u0026 trust.",
        "question": "Which is better for AI agents, Metronome or PayPal MCP server?"
      },
      {
        "answer": "Metronome needs an API key. PayPal MCP server takes an API key or an OAuth sign-in.",
        "question": "Do Metronome and PayPal MCP server need an API key?"
      },
      {
        "answer": "Yes. Metronome has a hosted endpoint at https://api.metronome.com and PayPal MCP server at https://mcp.paypal.com/mcp.",
        "question": "Can an agent call Metronome and PayPal MCP server without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Metronome. PayPal MCP server is open source (Apache-2.0 for the local server and the agent toolkit. The hosted server is a closed service under the PayPal Developer Agreement).",
        "question": "Are Metronome and PayPal MCP server open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 68 against 52",
          "Schema \u0026 documentation, 88 against 70",
          "Agent ergonomics, 75 against 66",
          "Security \u0026 auth, 68 against 48",
          "Maintenance \u0026 community, 82 against 64"
        ],
        "also": null,
        "goodFor": "A company that meters usage and bills on contracts, credits and commits, with invoices delivered through Stripe, NetSuite or cloud marketplaces.",
        "slug": "metronome",
        "watchFor": "Errors are a single `message` string with no machine-readable code, and the API description documents a 4xx response on 87 of 142 operations"
      },
      {
        "aheadOn": [
          "Transparency \u0026 trust, 78 against 65"
        ],
        "also": [
          "Runs on your own machine",
          "Open source"
        ],
        "goodFor": "A merchant already on PayPal who wants an assistant to draft and send invoices, look up orders and transactions, and manage subscriptions and disputes.",
        "slug": "paypal-mcp-server",
        "watchFor": "The quickstart gives `/http` for streamable HTTP. On 8 October 2026 it returned 404 on both hosts, and `/mcp` returned the OAuth challenge"
      }
    ],
    "job": {
      "capability": "accounting.invoices",
      "name": "Invoicing"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/atxp-vs-metronome.json",
        "title": "ATXP vs Metronome",
        "url": "https://www.anchorterminal.com/compare/atxp-vs-metronome"
      },
      {
        "json": "https://www.anchorterminal.com/compare/lago-vs-metronome.json",
        "title": "Lago vs Metronome",
        "url": "https://www.anchorterminal.com/compare/lago-vs-metronome"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metronome-vs-nevermined.json",
        "title": "Metronome vs Nevermined API + MCP",
        "url": "https://www.anchorterminal.com/compare/metronome-vs-nevermined"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metronome-vs-orb.json",
        "title": "Metronome vs Orb",
        "url": "https://www.anchorterminal.com/compare/metronome-vs-orb"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metronome-vs-paid.json",
        "title": "Metronome vs Paid",
        "url": "https://www.anchorterminal.com/compare/metronome-vs-paid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metronome-vs-stripe-mcp.json",
        "title": "Metronome vs Stripe API + MCP",
        "url": "https://www.anchorterminal.com/compare/metronome-vs-stripe-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/metronome-vs-tempo.json",
        "title": "Metronome vs Tempo",
        "url": "https://www.anchorterminal.com/compare/metronome-vs-tempo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/adyen-mcp-server-vs-paypal-mcp-server.json",
        "title": "Adyen MCP server vs PayPal MCP server",
        "url": "https://www.anchorterminal.com/compare/adyen-mcp-server-vs-paypal-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crossmint-vs-paypal-mcp-server.json",
        "title": "Crossmint API + Docs MCP vs PayPal MCP server",
        "url": "https://www.anchorterminal.com/compare/crossmint-vs-paypal-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/nevermined-vs-paypal-mcp-server.json",
        "title": "Nevermined API + MCP vs PayPal MCP server",
        "url": "https://www.anchorterminal.com/compare/nevermined-vs-paypal-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paid-vs-paypal-mcp-server.json",
        "title": "Paid vs PayPal MCP server",
        "url": "https://www.anchorterminal.com/compare/paid-vs-paypal-mcp-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paypal-mcp-server-vs-skyfire.json",
        "title": "PayPal MCP server vs Skyfire API + MCP",
        "url": "https://www.anchorterminal.com/compare/paypal-mcp-server-vs-skyfire"
      },
      {
        "json": "https://www.anchorterminal.com/compare/paypal-mcp-server-vs-stripe-mcp.json",
        "title": "PayPal MCP server vs Stripe API + MCP",
        "url": "https://www.anchorterminal.com/compare/paypal-mcp-server-vs-stripe-mcp"
      }
    ],
    "scores": [
      {
        "by": 16,
        "edge": "metronome",
        "key": "reliability",
        "metronome": 68,
        "name": "Reliability",
        "paypal-mcp-server": 52,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 18,
        "edge": "metronome",
        "key": "schema",
        "metronome": 88,
        "name": "Schema \u0026 documentation",
        "paypal-mcp-server": 70,
        "weight": 13
      },
      {
        "by": 9,
        "edge": "metronome",
        "key": "ergonomics",
        "metronome": 75,
        "name": "Agent ergonomics",
        "paypal-mcp-server": 66,
        "weight": 13
      },
      {
        "by": 20,
        "edge": "metronome",
        "key": "security",
        "metronome": 68,
        "name": "Security \u0026 auth",
        "paypal-mcp-server": 48,
        "weight": 14
      },
      {
        "by": 1,
        "edge": "paypal-mcp-server",
        "key": "payments",
        "metronome": 39,
        "name": "Payments \u0026 pricing",
        "paypal-mcp-server": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 18,
        "edge": "metronome",
        "key": "maintenance",
        "metronome": 82,
        "name": "Maintenance \u0026 community",
        "paypal-mcp-server": 64,
        "weight": 7
      },
      {
        "by": 13,
        "edge": "paypal-mcp-server",
        "key": "transparency",
        "metronome": 65,
        "name": "Transparency \u0026 trust",
        "paypal-mcp-server": 78,
        "weight": 7
      }
    ],
    "summary": "Metronome scores 69.7 (B) on agent readiness against PayPal MCP server's 56.3 (C), and leads in 5 of 7 scored categories. PayPal MCP server leads on transparency \u0026 trust. Both do invoicing.",
    "verdicts": {
      "metronome": "Metronome's API carries an `Idempotency-Key` on every POST, a public OpenAPI description of 142 operations, and agentic tokens whose writes wait for a person's approval. Prices for the Startup plan are public. Errors return only a `message` string, token scopes are set through support, and the status feed lists 13 incidents since 22 July 2026.",
      "paypal-mcp-server": "The hosted server uses OAuth with PKCE and dynamic client registration, and the local package defaults to the sandbox. No tool carries a read-only or destructive annotation, no confirmation step for refunds or captures was found, and the documented `/http` streamable HTTP path returned 404 on 8 October 2026 while `/mcp` answered."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server",
    "json": "https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server.md",
    "slim": "https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server.min.md"
  },
  "markdown": "Metronome scores 69.7 (B) on agent readiness against PayPal MCP server's 56.3 (C), and leads in 5 of 7 scored categories. PayPal MCP server leads on transparency \u0026 trust. Both do invoicing.\n\n- Metronome: grade B, 69.7/100, rank #173 of 950. Markdown https://www.anchorterminal.com/tools/metronome.md · JSON https://www.anchorterminal.com/api/v1/tools/metronome.json\n- PayPal MCP server: grade C, 56.3/100, rank #635 of 950. Markdown https://www.anchorterminal.com/tools/paypal-mcp-server.md · JSON https://www.anchorterminal.com/api/v1/tools/paypal-mcp-server.json\n- Best payment and monetisation platforms for AI agents: https://www.anchorterminal.com/best/payment-platforms/index.md\n- All 76 platforms comparisons: https://www.anchorterminal.com/compare/payment-platforms/index.md\n\n## Which one, for what\n\n### Metronome (B)\n\nGood for: A company that meters usage and bills on contracts, credits and commits, with invoices delivered through Stripe, NetSuite or cloud marketplaces.\n\nAhead on:\n- Reliability, 68 against 52\n- Schema \u0026 documentation, 88 against 70\n- Agent ergonomics, 75 against 66\n- Security \u0026 auth, 68 against 48\n- Maintenance \u0026 community, 82 against 64\n\nWatch for: Errors are a single `message` string with no machine-readable code, and the API description documents a 4xx response on 87 of 142 operations\n\n### PayPal MCP server (C)\n\nGood for: A merchant already on PayPal who wants an assistant to draft and send invoices, look up orders and transactions, and manage subscriptions and disputes.\n\nAhead on:\n- Transparency \u0026 trust, 78 against 65\n\nAlso in its favour:\n- Runs on your own machine\n- Open source\n\nWatch for: The quickstart gives `/http` for streamable HTTP. On 8 October 2026 it returned 404 on both hosts, and `/mcp` returned the OAuth challenge\n\n\n## Score by category\n\n| Category | Weight | Metronome | PayPal MCP server | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 68 | 52 | Metronome +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 88 | 70 | Metronome +18 |\n| Agent ergonomics | 13% (16.2 this run) | 75 | 66 | Metronome +9 |\n| Security \u0026 auth | 14% (17.5 this run) | 68 | 48 | Metronome +20 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 39 | 40 | PayPal MCP server +1 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 82 | 64 | Metronome +18 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 65 | 78 | PayPal MCP server +13 |\n| Negative events | ≤15 | 0 | -2 | |\n| **Total** | | **69.7 · B** | **56.3 · C** | |\n\n## Facts side by side\n\n| Fact | Metronome | PayPal MCP server |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Metronome (Stripe) | PayPal |\n| Hosted endpoint | `https://api.metronome.com` | `https://mcp.paypal.com/mcp` |\n| Transports | HTTP | stdio, SSE (legacy), Streamable HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| x402 | no | no |\n| Licence | Proprietary service under the Stripe Services Agreement. The SDKs on GitHub are Apache-2.0 | Apache-2.0 for the local server and the agent toolkit. The hosted server is a closed service under the PayPal Developer Agreement |\n| Tools exposed | none | 28 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | not listed | `io.github.paypal/paypal-mcp-server` |\n| Last release | 2026-09-29 | 2026-09-01 |\n| Terms last updated | 2026-09-28 | 2024-11-18 |\n| Privacy policy last updated | 2026-04-28 | 2026-09-28 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 7 stars, 363k npm/wk | 995 npm/wk, 107 PyPI/wk |\n\n## Verdicts\n\n**Metronome.** Metronome's API carries an `Idempotency-Key` on every POST, a public OpenAPI description of 142 operations, and agentic tokens whose writes wait for a person's approval. Prices for the Startup plan are public. Errors return only a `message` string, token scopes are set through support, and the status feed lists 13 incidents since 22 July 2026.\n\n**PayPal MCP server.** The hosted server uses OAuth with PKCE and dynamic client registration, and the local package defaults to the sandbox. No tool carries a read-only or destructive annotation, no confirmation step for refunds or captures was found, and the documented `/http` streamable HTTP path returned 404 on 8 October 2026 while `/mcp` answered.\n\n## Before you call either\n\n### Metronome\n\n1. Send an `Idempotency-Key` header on every POST and reuse it on retry. A cached error is returned for the same key, so use a new key after fixing the cause\n2. Give each usage event a stable `transaction_id`. Metronome ignores repeats for 34 days and accepts at most 100 events per `/v1/ingest` call\n3. On 429 read `X-Metronome-Rate-Limit-Type` (`client` or `customer`) and back off. Unlisted endpoints default to 8 requests a second\n4. With an agentic token, expect `403 AgenticMutationBlocked` on writes. Post the original method, path and body to `/v1/approval_requests` and show the person the `approval_url`\n5. Use a sandbox token for testing. The token alone decides whether a call reaches sandbox or production data\n\n### PayPal MCP server\n\n1. Connect a remote client to `https://mcp.paypal.com/mcp` or `/sse`. The documented `/http` path returned 404 on 8 October 2026\n2. Set `PAYPAL_ENVIRONMENT=PRODUCTION` for live calls. Any other value, including the registry's `LIVE`, runs against the sandbox\n3. Refresh `PAYPAL_ACCESS_TOKEN` before it expires. The README gives `expires_in` 32400 seconds, and the local server takes no client ID or secret\n4. Pass `--tools=` with only the keys the task needs, such as `invoices.list,orders.get`. `--tools=all` loads 28 keys including refunds and captures\n5. Ask the user before `create_refund`, `pay_order`, `cancel_subscription` or `accept_dispute_claim`. The server applies them without a confirmation step\n\n## Questions\n\n### Which is better for AI agents, Metronome or PayPal MCP server?\n\nMetronome scores 69.7 (B) on agent readiness against PayPal MCP server's 56.3 (C), and leads in 5 of 7 scored categories. PayPal MCP server leads on transparency \u0026 trust.\n\n### Do Metronome and PayPal MCP server need an API key?\n\nMetronome needs an API key. PayPal MCP server takes an API key or an OAuth sign-in.\n\n### Can an agent call Metronome and PayPal MCP server without installing anything?\n\nYes. Metronome has a hosted endpoint at https://api.metronome.com and PayPal MCP server at https://mcp.paypal.com/mcp.\n\n### Are Metronome and PayPal MCP server open source?\n\nNo open-source release is listed for Metronome. PayPal MCP server is open source (Apache-2.0 for the local server and the agent toolkit. The hosted server is a closed service under the PayPal Developer Agreement).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server.json, and with the fewest tokens: https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"metronome\", \"b\": \"paypal-mcp-server\"}`. From a terminal: `anchor compare metronome paypal-mcp-server`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/metronome.json and https://www.anchorterminal.com/api/v1/tools/paypal-mcp-server.json\n\n## Other comparisons with Metronome or PayPal MCP server\n\n- [ATXP vs Metronome](https://www.anchorterminal.com/compare/atxp-vs-metronome.md)\n- [Lago vs Metronome](https://www.anchorterminal.com/compare/lago-vs-metronome.md)\n- [Metronome vs Nevermined API + MCP](https://www.anchorterminal.com/compare/metronome-vs-nevermined.md)\n- [Metronome vs Orb](https://www.anchorterminal.com/compare/metronome-vs-orb.md)\n- [Metronome vs Paid](https://www.anchorterminal.com/compare/metronome-vs-paid.md)\n- [Metronome vs Stripe API + MCP](https://www.anchorterminal.com/compare/metronome-vs-stripe-mcp.md)\n- [Metronome vs Tempo](https://www.anchorterminal.com/compare/metronome-vs-tempo.md)\n- [Adyen MCP server vs PayPal MCP server](https://www.anchorterminal.com/compare/adyen-mcp-server-vs-paypal-mcp-server.md)\n- [Crossmint API + Docs MCP vs PayPal MCP server](https://www.anchorterminal.com/compare/crossmint-vs-paypal-mcp-server.md)\n- [Nevermined API + MCP vs PayPal MCP server](https://www.anchorterminal.com/compare/nevermined-vs-paypal-mcp-server.md)\n- [Paid vs PayPal MCP server](https://www.anchorterminal.com/compare/paid-vs-paypal-mcp-server.md)\n- [PayPal MCP server vs Skyfire API + MCP](https://www.anchorterminal.com/compare/paypal-mcp-server-vs-skyfire.md)\n- [PayPal MCP server vs Stripe API + MCP](https://www.anchorterminal.com/compare/paypal-mcp-server-vs-stripe-mcp.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Metronome vs PayPal MCP server",
        "url": ""
      }
    ],
    "description": "Metronome scores 69.7 (B) to PayPal's 56.3 (C) for invoicing. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Metronome B 69.7",
      "PayPal MCP server C 56.3",
      "scores"
    ],
    "h1": "Metronome vs PayPal MCP server",
    "image": "https://www.anchorterminal.com/assets/og/compare-metronome-vs-paypal-mcp-server.png",
    "path": "/compare/metronome-vs-paypal-mcp-server",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Metronome vs PayPal for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/metronome-vs-paypal-mcp-server"
  },
  "tokens": {
    "markdown": 2450,
    "slim": 680
  },
  "version": 1
}
