{
  "data": {
    "a": {
      "slug": "belvo",
      "name": "Belvo",
      "vendor": "Belvo",
      "vendorUrl": "https://belvo.com",
      "kind": "http-api",
      "category": "banking-data",
      "summary": "Belvo is an open finance API for Latin America. It reads bank accounts, transactions and investments in Brazil, employment records in Brazil and Mexico and tax data in Mexico, and starts Pix payments in Brazil and direct debits in Mexico.",
      "url": "https://www.anchorterminal.com/tools/belvo",
      "markdownUrl": "https://www.anchorterminal.com/tools/belvo.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/belvo.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/belvo.json",
      "license": "Proprietary service under Belvo's General Conditions of Service Usage. The belvo npm package (0.28.0) is MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.belvo.com",
      "packages": [
        {
          "registry": "npm",
          "name": "belvo"
        },
        {
          "registry": "pypi",
          "name": "belvo-python"
        }
      ],
      "auth": "api-key",
      "authNotes": "HTTP Basic with a `secretId` and `secretPassword` generated in the dashboard, one pair for each environment. The password is shown once and a lost one means resetting the keys. No scopes or read-only keys were found. Sandbox keys are self-serve after email sign-up. Production keys follow a request to Belvo, a sales meeting and a certification call. End users connect accounts in the Hosted Widget, started with a 10 minute token from POST /api/token/. The Direct Debit API in Mexico has its own keys and optional IP allowlisting set up by support.",
      "pricing": "paid",
      "pricingNotes": "The Launch plan is 1,000 USD a month and Growth is priced by sales, both through Contact Sales (https://belvo.com/plans-and-pricing/). No per-call or per-link price is published, and the terms put the price in a signed Service Order with a 12 month term. The sandbox is free, self-serve and for testing only, so an agent can start without a contract but can't reach real accounts. Changing the refresh rate of recurrent links is priced by sales.",
      "priceSummary": "$1000 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the OpenAPI file or the pricing page (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 1084,
        "pypiWeekly": 240,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developers.belvo.com/",
      "llmsTxt": "https://developers.belvo.com/llms.txt",
      "openapi": "https://developers.belvo.com/_bundle/apis/BelvoOpenApiSpec.yaml",
      "capabilities": [
        "bank.accounts",
        "bank.transactions",
        "bank.identity",
        "bank.payments",
        "bank.consent"
      ],
      "tags": [
        "hosted",
        "openapi",
        "llms-txt",
        "api-key",
        "webhooks",
        "sandbox",
        "brazil",
        "mexico",
        "latin-america",
        "sales-led",
        "status-page",
        "closed-source"
      ],
      "lastRelease": "2026-08-10",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.5,
        "grade": "B",
        "agentReady": false,
        "rank": 309,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 30,
          "payments": 20,
          "reliability": 84,
          "schema": 80,
          "security": 57,
          "transparency": 64
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "Belvo publishes a 146-operation OpenAPI file, an llms.txt with a Markdown twin of each docs page, and list endpoints with field selection and pages of up to 1,000. Production access needs a sales meeting, a certification call and a paid plan from 1,000 USD a month, and no changelog or maintained SDK was found.",
        "bestFor": "Lenders and fintechs that need consented bank data in Brazil, employment or tax records in Mexico, or Pix and direct debit collection, and can sign a contract.",
        "strengths": [
          "Public OpenAPI 3.0.2 file, version 1.223.0, with 146 operations on 83 paths, and a separate specification for Direct Debit in Mexico",
          "llms.txt lists a Markdown twin of every docs page in English, Spanish and Portuguese",
          "List endpoints take `fields`, `omit`, `page_size` up to 1,000 and range filters on dates and amounts",
          "Retention is set per link and per call with `stale_in`, `credentials_storage` and `save_data`",
          "ISO/IEC 27001:2022 and PCI DSS Level 1 are stated on the security page"
        ],
        "weaknesses": [
          "Production keys follow a sales meeting, a certification call with a Belvo engineer and a paid plan from 1,000 USD a month",
          "One `secretId` and `secretPassword` pair per environment over HTTP Basic, with no scopes or read-only keys found",
          "No changelog was found, and the Python, Node and Ruby packages were last published in 2023 with their GitHub repositories returning 404",
          "Bank data covers Brazil only in the docs read on 8 October 2026, and Mexico has employment, fiscal and direct debit products",
          "security.txt expired on 22 March 2025",
          "General rate limits carry no published numbers, and the data webhooks have no signature, only an optional fixed authorisation header"
        ],
        "agentNotes": [
          "Send HTTP Basic with `secretId` as username and `secretPassword` as password to https://sandbox.belvo.com, and switch to https://api.belvo.com only with production keys",
          "Create links through the Hosted Widget with a token from POST /api/token/, which expires after 10 minutes",
          "Read stored data with GET list calls. Each POST retrieval in Brazil counts against monthly Open Finance limits, such as 8 a month per CPF for owners and accounts",
          "Retry 50x responses up to five times from a 3 second base with a factor of two, and don't retry 40x apart from `too_many_sessions`",
          "Send `Belvo-Idempotency-Key` with a UUID when creating a payment intent, and `X-Belvo-Request-Mode: async` on link deletion to avoid the limit of 5 deletions a minute"
        ],
        "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": 63.5
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 30,
          "payments": 20,
          "reliability": 84,
          "schema": 80,
          "security": 57,
          "transparency": 46
        },
        "provenanceScore": 81
      },
      "connect": {
        "http": "curl -X GET https://sandbox.belvo.com/api/ \\\n  -H \"Authorization: Basic $(echo -n 'YOUR_SECRET_ID:YOUR_SECRET_PASSWORD' | base64)\"",
        "claudeCode": "claude mcp add --transport http belvo-docs https://developers.belvo.com/mcp",
        "config": {
          "mcpServers": {
            "belvo-docs": {
              "type": "http",
              "url": "https://developers.belvo.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/bank.accounts",
        "tool": "https://letme.dev/belvo"
      },
      "area": "domain-data",
      "unitPrices": [
        {
          "item": "Launch plan",
          "unit": "month",
          "usd": 1000,
          "note": "Production access, through sales. Growth plan is custom"
        }
      ],
      "provenance": {
        "legalEntity": "Belvo Tecnologias Ltda.",
        "domain": "belvo.com",
        "domainRegistered": "2005-07-17",
        "endpointOnVendorDomain": true,
        "terms": "https://belvo.com/terms-service/",
        "privacy": "https://belvo.com/privacy-policy-end-users/",
        "statusPage": "https://status.belvo.com",
        "changelog": "",
        "securityTxt": "expired",
        "checked": "2026-10-08",
        "notes": [
          "The General Conditions of Service Usage, last updated 10 January 2025, define Belvo as Belvo Tecnologias Ltda., CNPJ 37.869.837/0001-81, and Belvo Instituição de Pagamento Ltda., CNPJ 43.215.815/0001-09, with affiliates. They are governed by Brazilian law with the courts of São Paulo.",
          "The legal notice also names Belvo Technologies, SAPI de CV in Mexico City (RFC BTE1912023D6) and Belvo Technologies Inc. Sucursal en España in Barcelona.",
          "The privacy link is the end-user policy, which covers data Belvo processes through its platform for clients. A separate policy for clients and site visitors at https://belvo.com/privacy-policy-clients/ was last updated 15 July 2024.",
          "security.txt is PGP-signed, gives security@belvo.com and a disclosure policy on Federacy, and expired on 22 March 2025.",
          "No changelog was found. developers.belvo.com/changelog returns 404 and llms.txt lists none.",
          "Verisign RDAP gives a registration date of 2005-07-17 for belvo.com."
        ],
        "score": 81
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/belvo.json",
      "live": {
        "slug": "belvo",
        "probe": {
          "target": "https://api.belvo.com",
          "method": "get",
          "lastAt": "2026-10-08T19:52:45.922404587Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 66,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 46,
          "p95ms24h": 188,
          "samples24h": 27,
          "samples30d": 27,
          "days": [
            {
              "date": "2026-10-08",
              "probes": 27,
              "ok": 27
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.belvo.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T19:50:26.2285697Z"
        },
        "pages": [
          {
            "url": "https://belvo.com/plans-and-pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:15:32.924207659Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e45bde6abe6f"
          },
          {
            "url": "https://belvo.com/privacy-policy-end-users/",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-08T18:15:35.22055183Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "44ff1673e0c9"
          },
          {
            "url": "https://belvo.com/terms-service/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:15:55.309282506Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "fc9af45fbdce"
          }
        ],
        "updatedAt": "2026-10-08T19:52:45.922404587Z"
      }
    },
    "answer": "Plaid scores 69.8 (B) on agent readiness against Belvo's 63.5 (B), and leads in 5 of 7 scored categories. Belvo leads on reliability and payments \u0026 pricing.",
    "b": {
      "slug": "plaid",
      "name": "Plaid",
      "vendor": "Plaid",
      "vendorUrl": "https://plaid.com",
      "kind": "http-api",
      "category": "banking-data",
      "summary": "Bank data aggregation platform covering the US, Canada, the UK and parts of Europe.",
      "url": "https://www.anchorterminal.com/tools/plaid",
      "markdownUrl": "https://www.anchorterminal.com/tools/plaid.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/plaid.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/plaid.json",
      "repo": "https://github.com/plaid/mcp",
      "license": "MIT (SDKs and MCP server)",
      "transports": [
        "http",
        "stdio",
        "streamable-http"
      ],
      "remoteUrl": "https://production.plaid.com",
      "packages": [
        {
          "registry": "npm",
          "name": "plaid"
        },
        {
          "registry": "pypi",
          "name": "plaid-python"
        },
        {
          "registry": "pypi",
          "name": "mcp-server-plaid"
        }
      ],
      "auth": "mixed",
      "authNotes": "Every call is a POST with `client_id` and `secret` in the JSON body (or as PLAID-CLIENT-ID and PLAID-SECRET headers). Sandbox and Production have separate secrets. End-user data needs an `access_token` from the Link flow (link token, public token, exchange). The Dashboard MCP uses OAuth client_credentials with scope `mcp:dashboard` and 15-minute tokens. The sandbox MCP takes the sandbox client id and secret as flags or environment variables.",
      "pricing": "paid",
      "pricingNotes": "Sandbox is always free. Three plans, Pay as you go (month to month, card on file), Growth (12-month commitment) and Custom, with no price list on the site; you see prices when you apply for Production access (https://plaid.com/pricing/). Billing model varies by product. One-time per Item for Auth, Identity, Income and Layer, a monthly subscription per Item for Transactions, Liabilities, Investments and Recurring Transactions, and a flat fee per call for Balance, Signal and the refresh endpoints. A subscription Item keeps billing until you call /item/remove or the user revokes it (https://plaid.com/docs/account/billing/index.html.md). Teams created after 15 April 2026 in the US and Canada get a Trial plan with 10 free Production Items, replacing the older Limited Production of 200 calls per product (https://plaid.com/docs/changelog/).",
      "priceSummary": "Paid",
      "where": "both",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 4,
      "popularity": {
        "githubStars": 586,
        "npmWeekly": 1292229,
        "pypiWeekly": 656730,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://plaid.com/docs/",
      "llmsTxt": "https://plaid.com/docs/llms.txt",
      "openapi": "https://raw.githubusercontent.com/plaid/plaid-openapi/master/2020-09-14.yml",
      "capabilities": [
        "bank.accounts",
        "bank.transactions",
        "bank.identity",
        "bank.payments",
        "bank.consent"
      ],
      "tags": [
        "hosted",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "card-required",
        "enterprise",
        "open-source"
      ],
      "lastRelease": "2026-09-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 69.8,
        "grade": "B",
        "agentReady": false,
        "rank": 147,
        "ranked": true,
        "rankOf": 722,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 83,
          "payments": 15,
          "reliability": 68,
          "schema": 93,
          "security": 67,
          "transparency": 79
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "high",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Public OpenAPI file, llms.txt with about 250 entries and a Markdown twin of every docs page. No prices before a Production application, and Transactions, Liabilities and Investments bill per Item each month until removed.",
        "bestFor": "US and Canadian account, transaction, identity and income data, with Transfer for payments.",
        "strengths": [
          "Public OpenAPI file, llms.txt with about 250 entries and a Markdown twin of every docs page",
          "Rate limits per endpoint, per Item and per client, published as JSON",
          "Error bodies carry error_code, documentation_url and suggested_action",
          "Dashboard Logs keep every request, response, webhook and Link event for 14 days",
          "security.txt valid to 31 December 2026 and a HackerOne programme"
        ],
        "weaknesses": [
          "No prices before a Production application, and Transactions, Liabilities and Investments bill per Item each month until removed",
          "Four plaid-node major versions between 23 July and 1 September 2026, each with breaking changes",
          "No Retry-After on 429 and no list of which error codes are safe to retry",
          "Six incidents marked major on the status page since 10 July 2026, five of them single banks",
          "One team secret reaches every product, Transfer included; there's no read-only key"
        ],
        "agentNotes": [
          "Point calls at https://sandbox.plaid.com until you hold a Production secret; request shapes are the same",
          "Create a sandbox Item with /sandbox/public_token/create and ins_109508, then /item/public_token/exchange, no Link UI needed",
          "Use /transactions/sync with its cursor and back off on 429 RATE_LIMIT_EXCEEDED yourself, since no Retry-After comes back",
          "Call /item/remove when the user is done, or subscription products keep billing",
          "Send an idempotency_key on `/transfer/authorization/create` so a retried request can't authorise twice"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "high",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 69.8
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 83,
          "payments": 15,
          "reliability": 68,
          "schema": 93,
          "security": 67,
          "transparency": 61
        },
        "provenanceScore": 97
      },
      "connect": {
        "http": "curl -X POST https://sandbox.plaid.com/sandbox/public_token/create -H \"Content-Type: application/json\" \\\n  -d '{\"client_id\":\"'\"$PLAID_CLIENT_ID\"'\",\"secret\":\"'\"$PLAID_SECRET\"'\",\"institution_id\":\"ins_109508\",\"initial_products\":[\"transactions\"]}'",
        "claudeCode": "claude mcp add plaid -e PLAID_CLIENT_ID=$PLAID_CLIENT_ID -e PLAID_SECRET=$PLAID_SECRET -- uvx mcp-server-plaid",
        "config": {
          "mcpServers": {
            "plaid": {
              "args": [
                "mcp-server-plaid"
              ],
              "command": "uvx",
              "env": {
                "PLAID_CLIENT_ID": "${PLAID_CLIENT_ID}",
                "PLAID_SECRET": "${PLAID_SECRET}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/bank.accounts",
        "tool": "https://letme.dev/plaid"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Plaid Inc.",
        "domain": "plaid.com",
        "domainRegistered": "1995-08-16",
        "domainNote": "plaid.com was registered in 1995, long before Plaid was founded, so the domain was bought later.",
        "endpointOnVendorDomain": true,
        "terms": "https://plaid.com/legal/#developer-policy",
        "privacy": "https://plaid.com/legal/#privacy-statement",
        "statusPage": "https://status.plaid.com",
        "changelog": "https://plaid.com/docs/changelog/",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "Plaid Inc. (San Francisco) contracts US customers; Plaid Financial Ltd. (London) and Plaid, B.V. (Amsterdam) cover the UK and the EEA.",
          "security.txt lists HackerOne and security@plaid.com and expires 2026-12-31.",
          "rdap.org returned 403 for the domain; the registration date comes from Verisign's RDAP server."
        ],
        "score": 97
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/plaid.json",
      "live": {
        "slug": "plaid",
        "probe": {
          "target": "https://production.plaid.com",
          "method": "get",
          "lastAt": "2026-10-08T19:52:59.060033465Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 334,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 344,
          "p95ms24h": 416,
          "samples24h": 272,
          "samples30d": 1941,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 225,
              "ok": 225
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.plaid.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-08T19:50:58.704023935Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "plaid",
            "version": "48.0.0",
            "seenAt": "2026-10-08T16:25:30.345209662Z"
          },
          {
            "registry": "pypi",
            "name": "mcp-server-plaid",
            "version": "0.1.1",
            "released": "2026-08-10",
            "seenAt": "2026-10-08T16:25:31.323577766Z"
          },
          {
            "registry": "pypi",
            "name": "plaid-python",
            "version": "45.0.0",
            "released": "2026-10-02",
            "seenAt": "2026-10-08T16:25:31.132908141Z"
          }
        ],
        "githubStars": 30,
        "npmWeekly": 1469361,
        "pypiWeekly": 688974,
        "securityTxt": {
          "url": "https://plaid.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2026-12-31T23:59:59.000Z",
          "checkedAt": "2026-10-08T15:39:02.201293131Z"
        },
        "llmsTxt": {
          "url": "https://plaid.com/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:45.906696009Z"
        },
        "domain": {
          "domain": "plaid.com",
          "registered": "1995-08-16",
          "source": "https://rdap.verisign.com/com/v1/domain/plaid.com",
          "checkedAt": "2026-10-04T13:09:13.710656054Z"
        },
        "pages": [
          {
            "url": "https://plaid.com/docs/changelog/",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-08T18:23:02.586422213Z",
            "changedAt": "2026-10-08T18:23:02.586422213Z",
            "fingerprint": "3e9653eec20a"
          },
          {
            "url": "https://plaid.com/pricing/",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-08T18:23:07.48587411Z",
            "changedAt": "2026-10-06T16:11:29.459778327Z",
            "fingerprint": "15a9f4a4d8fd"
          },
          {
            "url": "https://plaid.com/legal/",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-08T18:23:05.247201174Z",
            "changedAt": "2026-10-06T16:11:26.544421142Z",
            "fingerprint": "ecb1a91718b4"
          }
        ],
        "updatedAt": "2026-10-08T19:52:59.060033465Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Belvo",
        "b": "Plaid",
        "name": "Vendor"
      },
      {
        "a": "https://api.belvo.com",
        "b": "https://production.plaid.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "HTTP, stdio, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under Belvo's General Conditions of Service Usage. The belvo npm package (0.28.0) is MIT",
        "b": "MIT (SDKs and MCP server)",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "4",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-08-10",
        "b": "2026-09-24",
        "name": "Last release"
      },
      {
        "a": "2025-01-10",
        "b": "2025-12-01",
        "name": "Terms last updated"
      },
      {
        "a": "2021-02-22",
        "b": "2025-12-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "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": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1.1k npm/wk, 240 PyPI/wk",
        "b": "586 stars, 1.3M npm/wk, 657k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Plaid scores 69.8 (B) on agent readiness against Belvo's 63.5 (B), and leads in 5 of 7 scored categories. Belvo leads on reliability and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Belvo or Plaid?"
      },
      {
        "answer": "Belvo needs an API key. Plaid takes an API key or an OAuth sign-in.",
        "question": "Do Belvo and Plaid need an API key?"
      },
      {
        "answer": "Yes. Belvo has a hosted endpoint at https://api.belvo.com and Plaid at https://production.plaid.com.",
        "question": "Can an agent call Belvo and Plaid without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Belvo. Plaid is open source (MIT (SDKs and MCP server)).",
        "question": "Are Belvo and Plaid open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 84 against 68",
          "Payments \u0026 pricing, 20 against 15"
        ],
        "also": null,
        "goodFor": "Lenders and fintechs that need consented bank data in Brazil, employment or tax records in Mexico, or Pix and direct debit collection, and can sign a contract.",
        "slug": "belvo",
        "watchFor": "Production keys follow a sales meeting, a certification call with a Belvo engineer and a paid plan from 1,000 USD a month"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 93 against 80",
          "Security \u0026 auth, 67 against 57",
          "Maintenance \u0026 community, 83 against 30",
          "Transparency \u0026 trust, 79 against 64"
        ],
        "also": [
          "Runs on your own machine",
          "Open source"
        ],
        "goodFor": "US and Canadian account, transaction, identity and income data, with Transfer for payments.",
        "slug": "plaid",
        "watchFor": "No prices before a Production application, and Transactions, Liabilities and Investments bill per Item each month until removed"
      }
    ],
    "job": {
      "capability": "bank.accounts",
      "name": "Bank accounts"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-belvo.json",
        "title": "Akoya vs Belvo",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-belvo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/akoya-vs-plaid.json",
        "title": "Akoya vs Plaid",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-enable-banking.json",
        "title": "Belvo vs Enable Banking",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-enable-banking"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-flinks.json",
        "title": "Belvo vs Flinks",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-flinks"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-gocardless-bank-account-data.json",
        "title": "Belvo vs GoCardless Bank Account Data",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-gocardless-bank-account-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-mx.json",
        "title": "Belvo vs MX Platform API",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-mx"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-salt-edge.json",
        "title": "Belvo vs Salt Edge Account Information",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-salt-edge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-teller.json",
        "title": "Belvo vs Teller",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-tink.json",
        "title": "Belvo vs Tink",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-tink"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-truelayer.json",
        "title": "Belvo vs TrueLayer",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-truelayer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-yapily.json",
        "title": "Belvo vs Yapily",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-yapily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/enable-banking-vs-plaid.json",
        "title": "Enable Banking vs Plaid",
        "url": "https://www.anchorterminal.com/compare/enable-banking-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/flinks-vs-plaid.json",
        "title": "Flinks vs Plaid",
        "url": "https://www.anchorterminal.com/compare/flinks-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-plaid.json",
        "title": "GoCardless Bank Account Data vs Plaid",
        "url": "https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mx-vs-plaid.json",
        "title": "MX Platform API vs Plaid",
        "url": "https://www.anchorterminal.com/compare/mx-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-vs-salt-edge.json",
        "title": "Plaid vs Salt Edge Account Information",
        "url": "https://www.anchorterminal.com/compare/plaid-vs-salt-edge"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-vs-teller.json",
        "title": "Plaid vs Teller",
        "url": "https://www.anchorterminal.com/compare/plaid-vs-teller"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-vs-tink.json",
        "title": "Plaid vs Tink",
        "url": "https://www.anchorterminal.com/compare/plaid-vs-tink"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-vs-truelayer.json",
        "title": "Plaid vs TrueLayer",
        "url": "https://www.anchorterminal.com/compare/plaid-vs-truelayer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/plaid-vs-yapily.json",
        "title": "Plaid vs Yapily",
        "url": "https://www.anchorterminal.com/compare/plaid-vs-yapily"
      }
    ],
    "scores": [
      {
        "belvo": 84,
        "by": 16,
        "edge": "belvo",
        "key": "reliability",
        "name": "Reliability",
        "plaid": 68,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "belvo": 80,
        "by": 13,
        "edge": "plaid",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "plaid": 93,
        "weight": 13
      },
      {
        "belvo": 80,
        "by": 2,
        "edge": "plaid",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "plaid": 82,
        "weight": 13
      },
      {
        "belvo": 57,
        "by": 10,
        "edge": "plaid",
        "key": "security",
        "name": "Security \u0026 auth",
        "plaid": 67,
        "weight": 14
      },
      {
        "belvo": 20,
        "by": 5,
        "edge": "belvo",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "plaid": 15,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "belvo": 30,
        "by": 53,
        "edge": "plaid",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "plaid": 83,
        "weight": 7
      },
      {
        "belvo": 64,
        "by": 15,
        "edge": "plaid",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "plaid": 79,
        "weight": 7
      }
    ],
    "summary": "Plaid scores 69.8 (B) on agent readiness against Belvo's 63.5 (B), and leads in 5 of 7 scored categories. Belvo leads on reliability and payments \u0026 pricing. Both do bank accounts.",
    "verdicts": {
      "belvo": "Belvo publishes a 146-operation OpenAPI file, an llms.txt with a Markdown twin of each docs page, and list endpoints with field selection and pages of up to 1,000. Production access needs a sales meeting, a certification call and a paid plan from 1,000 USD a month, and no changelog or maintained SDK was found.",
      "plaid": "Public OpenAPI file, llms.txt with about 250 entries and a Markdown twin of every docs page. No prices before a Production application, and Transactions, Liabilities and Investments bill per Item each month until removed."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/belvo-vs-plaid",
    "json": "https://www.anchorterminal.com/compare/belvo-vs-plaid.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/belvo-vs-plaid.md",
    "slim": "https://www.anchorterminal.com/compare/belvo-vs-plaid.min.md"
  },
  "markdown": "Plaid scores 69.8 (B) on agent readiness against Belvo's 63.5 (B), and leads in 5 of 7 scored categories. Belvo leads on reliability and payments \u0026 pricing. Both do bank accounts.\n\n- Belvo: grade B, 63.5/100, rank #309 of 722. Markdown https://www.anchorterminal.com/tools/belvo.md · JSON https://www.anchorterminal.com/api/v1/tools/belvo.json\n- Plaid: grade B, 69.8/100, rank #147 of 722. Markdown https://www.anchorterminal.com/tools/plaid.md · JSON https://www.anchorterminal.com/api/v1/tools/plaid.json\n\n## Which one, for what\n\n### Belvo (B)\n\nGood for: Lenders and fintechs that need consented bank data in Brazil, employment or tax records in Mexico, or Pix and direct debit collection, and can sign a contract.\n\nAhead on:\n- Reliability, 84 against 68\n- Payments \u0026 pricing, 20 against 15\n\nWatch for: Production keys follow a sales meeting, a certification call with a Belvo engineer and a paid plan from 1,000 USD a month\n\n### Plaid (B)\n\nGood for: US and Canadian account, transaction, identity and income data, with Transfer for payments.\n\nAhead on:\n- Schema \u0026 documentation, 93 against 80\n- Security \u0026 auth, 67 against 57\n- Maintenance \u0026 community, 83 against 30\n- Transparency \u0026 trust, 79 against 64\n\nAlso in its favour:\n- Runs on your own machine\n- Open source\n\nWatch for: No prices before a Production application, and Transactions, Liabilities and Investments bill per Item each month until removed\n\n\n## Score by category\n\n| Category | Weight | Belvo | Plaid | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 84 | 68 | Belvo +16 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 80 | 93 | Plaid +13 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 82 | Plaid +2 |\n| Security \u0026 auth | 14% (17.5 this run) | 57 | 67 | Plaid +10 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 15 | Belvo +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 30 | 83 | Plaid +53 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 64 | 79 | Plaid +15 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **63.5 · B** | **69.8 · B** | |\n\n## Facts side by side\n\n| Fact | Belvo | Plaid |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Belvo | Plaid |\n| Hosted endpoint | `https://api.belvo.com` | `https://production.plaid.com` |\n| Transports | HTTP | HTTP, stdio, Streamable HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under Belvo's General Conditions of Service Usage. The belvo npm package (0.28.0) is MIT | MIT (SDKs and MCP server) |\n| Tools exposed | none | 4 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-08-10 | 2026-09-24 |\n| Terms last updated | 2025-01-10 | 2025-12-01 |\n| Privacy policy last updated | 2021-02-22 | 2025-12-01 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 1.1k npm/wk, 240 PyPI/wk | 586 stars, 1.3M npm/wk, 657k PyPI/wk |\n| Agent reviews | none | 3.5/5 (2) |\n\n## Verdicts\n\n**Belvo.** Belvo publishes a 146-operation OpenAPI file, an llms.txt with a Markdown twin of each docs page, and list endpoints with field selection and pages of up to 1,000. Production access needs a sales meeting, a certification call and a paid plan from 1,000 USD a month, and no changelog or maintained SDK was found.\n\n**Plaid.** Public OpenAPI file, llms.txt with about 250 entries and a Markdown twin of every docs page. No prices before a Production application, and Transactions, Liabilities and Investments bill per Item each month until removed.\n\n## Before you call either\n\n### Belvo\n\n1. Send HTTP Basic with `secretId` as username and `secretPassword` as password to https://sandbox.belvo.com, and switch to https://api.belvo.com only with production keys\n2. Create links through the Hosted Widget with a token from POST /api/token/, which expires after 10 minutes\n3. Read stored data with GET list calls. Each POST retrieval in Brazil counts against monthly Open Finance limits, such as 8 a month per CPF for owners and accounts\n4. Retry 50x responses up to five times from a 3 second base with a factor of two, and don't retry 40x apart from `too_many_sessions`\n5. Send `Belvo-Idempotency-Key` with a UUID when creating a payment intent, and `X-Belvo-Request-Mode: async` on link deletion to avoid the limit of 5 deletions a minute\n\n### Plaid\n\n1. Point calls at https://sandbox.plaid.com until you hold a Production secret; request shapes are the same\n2. Create a sandbox Item with /sandbox/public_token/create and ins_109508, then /item/public_token/exchange, no Link UI needed\n3. Use /transactions/sync with its cursor and back off on 429 RATE_LIMIT_EXCEEDED yourself, since no Retry-After comes back\n4. Call /item/remove when the user is done, or subscription products keep billing\n5. Send an idempotency_key on `/transfer/authorization/create` so a retried request can't authorise twice\n\n## Questions\n\n### Which is better for AI agents, Belvo or Plaid?\n\nPlaid scores 69.8 (B) on agent readiness against Belvo's 63.5 (B), and leads in 5 of 7 scored categories. Belvo leads on reliability and payments \u0026 pricing.\n\n### Do Belvo and Plaid need an API key?\n\nBelvo needs an API key. Plaid takes an API key or an OAuth sign-in.\n\n### Can an agent call Belvo and Plaid without installing anything?\n\nYes. Belvo has a hosted endpoint at https://api.belvo.com and Plaid at https://production.plaid.com.\n\n### Are Belvo and Plaid open source?\n\nNo open-source release is listed for Belvo. Plaid is open source (MIT (SDKs and MCP server)).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/belvo-vs-plaid.json, and with the fewest tokens: https://www.anchorterminal.com/compare/belvo-vs-plaid.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"belvo\", \"b\": \"plaid\"}`. From a terminal: `anchor compare belvo plaid`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/belvo.json and https://www.anchorterminal.com/api/v1/tools/plaid.json\n\n## Other comparisons with Belvo or Plaid\n\n- [Akoya vs Belvo](https://www.anchorterminal.com/compare/akoya-vs-belvo.md)\n- [Akoya vs Plaid](https://www.anchorterminal.com/compare/akoya-vs-plaid.md)\n- [Belvo vs Enable Banking](https://www.anchorterminal.com/compare/belvo-vs-enable-banking.md)\n- [Belvo vs Flinks](https://www.anchorterminal.com/compare/belvo-vs-flinks.md)\n- [Belvo vs GoCardless Bank Account Data](https://www.anchorterminal.com/compare/belvo-vs-gocardless-bank-account-data.md)\n- [Belvo vs MX Platform API](https://www.anchorterminal.com/compare/belvo-vs-mx.md)\n- [Belvo vs Salt Edge Account Information](https://www.anchorterminal.com/compare/belvo-vs-salt-edge.md)\n- [Belvo vs Teller](https://www.anchorterminal.com/compare/belvo-vs-teller.md)\n- [Belvo vs Tink](https://www.anchorterminal.com/compare/belvo-vs-tink.md)\n- [Belvo vs TrueLayer](https://www.anchorterminal.com/compare/belvo-vs-truelayer.md)\n- [Belvo vs Yapily](https://www.anchorterminal.com/compare/belvo-vs-yapily.md)\n- [Enable Banking vs Plaid](https://www.anchorterminal.com/compare/enable-banking-vs-plaid.md)\n- [Flinks vs Plaid](https://www.anchorterminal.com/compare/flinks-vs-plaid.md)\n- [GoCardless Bank Account Data vs Plaid](https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-plaid.md)\n- [MX Platform API vs Plaid](https://www.anchorterminal.com/compare/mx-vs-plaid.md)\n- [Plaid vs Salt Edge Account Information](https://www.anchorterminal.com/compare/plaid-vs-salt-edge.md)\n- [Plaid vs Teller](https://www.anchorterminal.com/compare/plaid-vs-teller.md)\n- [Plaid vs Tink](https://www.anchorterminal.com/compare/plaid-vs-tink.md)\n- [Plaid vs TrueLayer](https://www.anchorterminal.com/compare/plaid-vs-truelayer.md)\n- [Plaid vs Yapily](https://www.anchorterminal.com/compare/plaid-vs-yapily.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-08",
    "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": "Belvo vs Plaid",
        "url": ""
      }
    ],
    "description": "Plaid scores 69.8 (B) on agent readiness against Belvo's 63.5 (B), and leads in 5 of 7 scored categories. Belvo leads on reliability and payments \u0026 pricing. Both do bank accounts. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Belvo B 63.5",
      "Plaid B 69.8",
      "scores"
    ],
    "h1": "Belvo vs Plaid",
    "image": "https://www.anchorterminal.com/assets/og/compare-belvo-vs-plaid.png",
    "path": "/compare/belvo-vs-plaid",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Belvo vs Plaid for AI agents, B 63.5 vs B 69.8 | Anchor Terminal",
    "toc": null,
    "updated": "2026-10-08",
    "url": "https://www.anchorterminal.com/compare/belvo-vs-plaid"
  },
  "tokens": {
    "markdown": 2250,
    "slim": 630
  },
  "version": 1
}
