{
  "data": {
    "a": {
      "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": 161,
        "ranked": true,
        "rankOf": 842,
        "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-09T10:42:52.979044003Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 364,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 340,
          "p95ms24h": 392,
          "samples24h": 260,
          "samples30d": 2098,
          "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": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 114,
              "ok": 114
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.plaid.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T10:41:59.521455667Z"
        },
        "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-09T10:42:52.979044003Z"
      }
    },
    "answer": "Plaid scores 69.8 (B) on agent readiness against Yodlee Core API's 41.9 (E), and leads in 6 of 7 scored categories.",
    "b": {
      "slug": "yodlee-financial-data",
      "name": "Yodlee Core API",
      "vendor": "Yodlee, Inc.",
      "vendorUrl": "https://www.yodlee.com",
      "kind": "http-api",
      "category": "banking-data",
      "summary": "Yodlee's Core API (v1.1) aggregates a consumer's bank, card, investment, loan and insurance accounts for balances, categorised transactions, holdings, statements and account-owner details. Consumers link accounts through the embedded FastLink 4 widget.",
      "url": "https://www.anchorterminal.com/tools/yodlee-financial-data",
      "markdownUrl": "https://www.anchorterminal.com/tools/yodlee-financial-data.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/yodlee-financial-data.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/yodlee-financial-data.json",
      "repo": "https://github.com/Yodlee/OpenAPI",
      "license": "Proprietary service. The Swagger file on GitHub is MIT",
      "transports": [
        "http"
      ],
      "packages": [],
      "auth": "oauth",
      "authNotes": "Self-serve for the sandbox. Registering on the developer portal gives a `clientId`, a `secret` and an admin `loginName` on the API dashboard. `POST /auth/token` takes the id and secret in a form body and a `loginName` header, and returns a bearer token that lasts 30 minutes and acts for that user, or for the admin on administrative calls. Every call also sends `Api-Version: 1.1`. Each environment (sandbox, development, production) has its own credentials. How production access is granted is not stated in the public docs. Full account numbers and holder details need Yodlee Security Office approval.",
      "pricing": "paid",
      "pricingNotes": "No public price. `/pricing` returns 404 on yodlee.com and on the developer portal, and product pages ask for a demo. The sandbox is free on registration, with five preconfigured users and sample data only, so an agent's owner can test without a contract (checked 2026-10-08).",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the Swagger file or yodlee.com (checked 2026-10-08).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 17,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-08"
      },
      "docsUrl": "https://developer.yodlee.com/resources/yodlee/yodlee-api-overview/docs",
      "openapi": "https://raw.githubusercontent.com/Yodlee/OpenAPI/main/swagger.yaml",
      "capabilities": [
        "bank.accounts",
        "bank.transactions",
        "bank.identity",
        "bank.consent"
      ],
      "tags": [
        "hosted",
        "oauth",
        "openapi",
        "sandbox",
        "webhooks",
        "sales-led",
        "closed-source",
        "enterprise",
        "soc2"
      ],
      "lastRelease": "2026-07-31",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 41.9,
        "grade": "E",
        "agentReady": false,
        "rank": 796,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 12,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 58,
          "maintenance": 33,
          "payments": 15,
          "reliability": 15,
          "schema": 71,
          "security": 49,
          "transparency": 53
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-08"
        },
        "negative": 0,
        "verdict": "A public Swagger 2.0 file covers 98 operations with per-operation error codes, and tokens last 30 minutes and are bound to one end user. No price, service terms, status page, rate limit or SLA is published, there is no official server SDK, and the sandbox is limited to five preconfigured users with sample data.",
        "bestFor": "A bank, wealth firm or fintech with a Yodlee contract that needs wide account coverage, including investment holdings, loans and insurance, in the US, UK, Australia and India.",
        "strengths": [
          "Public Swagger 2.0 file on GitHub (MIT) with 98 operations, 267 definitions and `Y`-prefixed error codes listed per operation",
          "Access tokens expire after 30 minutes, are bound to one end user's `loginName`, and can be revoked with `DELETE /auth/token`",
          "Free sandbox on registration with five preconfigured test users, per the docs",
          "Consent endpoints list, renew and record open banking consents, and `DELETE /user/unregister` removes a user and their data",
          "The Security FAQ states an annual SOC 2 Type 2 assessment, PCI DSS 4.0.1 Level One certification and yearly third-party penetration tests"
        ],
        "weaknesses": [
          "No public price, service agreement or developer terms. The terms address named in the Swagger file returns 404",
          "No status page, rate limit, 429 guidance, idempotency key or SLA was found in the pages read",
          "No official server SDK. Yodlee's docs tell developers to generate a client from the Swagger file",
          "The Swagger file was last updated on 22 April 2026 to the November 2025 release and lacks fields added in June and July 2026, such as `isCrypto`",
          "The sandbox cannot register new users, and full account numbers and holder details need Yodlee Security Office approval",
          "The privacy notice covers only Yodlee's own consumer services and websites, and no DPA or sub-processor list is public"
        ],
        "agentNotes": [
          "Get a token with `POST /auth/token`, sending `Api-Version: 1.1` and the end user's `loginName` as headers and `clientId` and `secret` in a form body. Reuse it for up to 30 minutes",
          "Use the admin `loginName` only for administrative calls such as webhook subscriptions. A token made with a user's `loginName` reads only that user's data",
          "In the sandbox, pick one of the five preconfigured users. Registering new users is not supported there",
          "Page `GET /transactions` with `skip` and `top` (1 to 500). Without dates it returns the last 30 days, and at most two years with `fromDate` and `toDate`",
          "A person must link accounts in FastLink 4 first. Then read `GET /providerAccounts` for link status before `GET /accounts`",
          "Subscribe to `DATA_UPDATES` or `REFRESH` webhooks, or poll `GET /dataExtracts/events` in windows of at most 60 minutes, and do not poll accounts in a loop"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "E",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 41.9
          }
        ],
        "editorialScores": {
          "ergonomics": 58,
          "maintenance": 33,
          "payments": 15,
          "reliability": 15,
          "schema": 71,
          "security": 49,
          "transparency": 32
        },
        "provenanceScore": 73
      },
      "connect": {
        "http": "POST /auth/token\nApi-Version: 1.1\nloginName: \u003cloginName\u003e\nContent-Type: application/x-www-form-urlencoded\n\nclientId=\u003cclientId\u003e\u0026secret=\u003csecret\u003e"
      },
      "letme": {
        "capability": "https://letme.dev/bank.accounts",
        "tool": "https://letme.dev/yodlee-financial-data"
      },
      "area": "domain-data",
      "provenance": {
        "legalEntity": "Yodlee, Inc.",
        "domain": "yodlee.com",
        "domainRegistered": "1999-02-09",
        "endpointOnVendorDomain": null,
        "terms": "",
        "privacy": "",
        "statusPage": "",
        "changelog": "https://developer.yodlee.com/resources/yodlee",
        "securityTxt": "none",
        "checked": "2026-10-08",
        "notes": [
          "The privacy notice names Yodlee, Inc. and its subsidiaries Yodlee Credit, LLC, Yodlee Data Services, LLC and Yodlee Infotech Private Limited. The company page says Yodlee was acquired by Envestnet in 2015 and joined the STG portfolio in 2025.",
          "`terms` is left out. No service agreement or developer terms are published. The Swagger file gives https://developer.yodlee.com/terms/condition as its terms of service, and that address returns 404.",
          "`privacy` is left out. The privacy notice at https://www.yodlee.com/legal/privacy-notice says it applies to Yodlee's direct-to-consumer services and websites, and that a client's own privacy practices apply to services delivered through a Yodlee client, which is how API data is handled.",
          "`endpointOnVendorDomain` is null. The public docs print API paths without a host, and the host is given with the credentials on a dashboard we did not read.",
          "No status page is linked from yodlee.com or the developer portal, and status.yodlee.com did not answer.",
          "https://www.yodlee.com/.well-known/security.txt returns the home page, and the same path on developer.yodlee.com returns 404.",
          "Verisign's RDAP server gives a registration date of 1999-02-09 and CSC Corporate Domains, Inc. as registrar."
        ],
        "score": 73
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/yodlee-financial-data.json"
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Plaid",
        "b": "Yodlee, Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://production.plaid.com",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio, Streamable HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT (SDKs and MCP server)",
        "b": "Proprietary service. The Swagger file on GitHub is MIT",
        "name": "Licence"
      },
      {
        "a": "4",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-24",
        "b": "2026-07-31",
        "name": "Last release"
      },
      {
        "a": "2025-12-01",
        "b": "no document linked",
        "name": "Terms last updated"
      },
      {
        "a": "2025-12-01",
        "b": "no document linked",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "586 stars, 1.3M npm/wk, 657k PyPI/wk",
        "b": "17 stars",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Plaid scores 69.8 (B) on agent readiness against Yodlee Core API's 41.9 (E), and leads in 6 of 7 scored categories.",
        "question": "Which is better for AI agents, Plaid or Yodlee Core API?"
      },
      {
        "answer": "Plaid takes an API key or an OAuth sign-in. Yodlee Core API uses an OAuth sign-in.",
        "question": "Do Plaid and Yodlee Core API need an API key?"
      },
      {
        "answer": "Plaid has a hosted endpoint at https://production.plaid.com. No hosted endpoint is listed for Yodlee Core API.",
        "question": "Can an agent call Plaid and Yodlee Core API without installing anything?"
      },
      {
        "answer": "Plaid is open source (MIT (SDKs and MCP server)). No open-source release is listed for Yodlee Core API.",
        "question": "Are Plaid and Yodlee Core API open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 68 against 15",
          "Schema \u0026 documentation, 93 against 71",
          "Agent ergonomics, 82 against 58",
          "Security \u0026 auth, 67 against 49",
          "Maintenance \u0026 community, 83 against 33",
          "Transparency \u0026 trust, 79 against 53"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "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"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "A bank, wealth firm or fintech with a Yodlee contract that needs wide account coverage, including investment holdings, loans and insurance, in the US, UK, Australia and India.",
        "slug": "yodlee-financial-data",
        "watchFor": "No public price, service agreement or developer terms. The terms address named in the Swagger file returns 404"
      }
    ],
    "job": {
      "capability": "bank.accounts",
      "name": "Bank accounts"
    },
    "others": [
      {
        "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/akoya-vs-yodlee-financial-data.json",
        "title": "Akoya vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/akoya-vs-yodlee-financial-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-plaid.json",
        "title": "Belvo vs Plaid",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-plaid"
      },
      {
        "json": "https://www.anchorterminal.com/compare/belvo-vs-yodlee-financial-data.json",
        "title": "Belvo vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/belvo-vs-yodlee-financial-data"
      },
      {
        "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/enable-banking-vs-yodlee-financial-data.json",
        "title": "Enable Banking vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/enable-banking-vs-yodlee-financial-data"
      },
      {
        "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/flinks-vs-yodlee-financial-data.json",
        "title": "Flinks vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/flinks-vs-yodlee-financial-data"
      },
      {
        "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/gocardless-bank-account-data-vs-yodlee-financial-data.json",
        "title": "GoCardless Bank Account Data vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-yodlee-financial-data"
      },
      {
        "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/mx-vs-yodlee-financial-data.json",
        "title": "MX Platform API vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/mx-vs-yodlee-financial-data"
      },
      {
        "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"
      },
      {
        "json": "https://www.anchorterminal.com/compare/salt-edge-vs-yodlee-financial-data.json",
        "title": "Salt Edge Account Information vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/salt-edge-vs-yodlee-financial-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/teller-vs-yodlee-financial-data.json",
        "title": "Teller vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/teller-vs-yodlee-financial-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tink-vs-yodlee-financial-data.json",
        "title": "Tink vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/tink-vs-yodlee-financial-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/truelayer-vs-yodlee-financial-data.json",
        "title": "TrueLayer vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/truelayer-vs-yodlee-financial-data"
      },
      {
        "json": "https://www.anchorterminal.com/compare/yapily-vs-yodlee-financial-data.json",
        "title": "Yapily vs Yodlee Core API",
        "url": "https://www.anchorterminal.com/compare/yapily-vs-yodlee-financial-data"
      }
    ],
    "scores": [
      {
        "by": 53,
        "edge": "plaid",
        "key": "reliability",
        "name": "Reliability",
        "plaid": 68,
        "weight": 16,
        "yodlee-financial-data": 15
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 22,
        "edge": "plaid",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "plaid": 93,
        "weight": 13,
        "yodlee-financial-data": 71
      },
      {
        "by": 24,
        "edge": "plaid",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "plaid": 82,
        "weight": 13,
        "yodlee-financial-data": 58
      },
      {
        "by": 18,
        "edge": "plaid",
        "key": "security",
        "name": "Security \u0026 auth",
        "plaid": 67,
        "weight": 14,
        "yodlee-financial-data": 49
      },
      {
        "by": 0,
        "edge": "",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "plaid": 15,
        "weight": 10,
        "yodlee-financial-data": 15
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 50,
        "edge": "plaid",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "plaid": 83,
        "weight": 7,
        "yodlee-financial-data": 33
      },
      {
        "by": 26,
        "edge": "plaid",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "plaid": 79,
        "weight": 7,
        "yodlee-financial-data": 53
      }
    ],
    "summary": "Plaid scores 69.8 (B) on agent readiness against Yodlee Core API's 41.9 (E), and leads in 6 of 7 scored categories. Both do bank accounts.",
    "verdicts": {
      "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.",
      "yodlee-financial-data": "A public Swagger 2.0 file covers 98 operations with per-operation error codes, and tokens last 30 minutes and are bound to one end user. No price, service terms, status page, rate limit or SLA is published, there is no official server SDK, and the sandbox is limited to five preconfigured users with sample data."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data",
    "json": "https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data.md",
    "slim": "https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data.min.md"
  },
  "markdown": "Plaid scores 69.8 (B) on agent readiness against Yodlee Core API's 41.9 (E), and leads in 6 of 7 scored categories. Both do bank accounts.\n\n- Plaid: grade B, 69.8/100, rank #161 of 842. Markdown https://www.anchorterminal.com/tools/plaid.md · JSON https://www.anchorterminal.com/api/v1/tools/plaid.json\n- Yodlee Core API: grade E, 41.9/100, rank #796 of 842. Markdown https://www.anchorterminal.com/tools/yodlee-financial-data.md · JSON https://www.anchorterminal.com/api/v1/tools/yodlee-financial-data.json\n\n## Which one, for what\n\n### Plaid (B)\n\nGood for: US and Canadian account, transaction, identity and income data, with Transfer for payments.\n\nAhead on:\n- Reliability, 68 against 15\n- Schema \u0026 documentation, 93 against 71\n- Agent ergonomics, 82 against 58\n- Security \u0026 auth, 67 against 49\n- Maintenance \u0026 community, 83 against 33\n- Transparency \u0026 trust, 79 against 53\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\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### Yodlee Core API (E)\n\nGood for: A bank, wealth firm or fintech with a Yodlee contract that needs wide account coverage, including investment holdings, loans and insurance, in the US, UK, Australia and India.\n\nWatch for: No public price, service agreement or developer terms. The terms address named in the Swagger file returns 404\n\n\n## Score by category\n\n| Category | Weight | Plaid | Yodlee Core API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 68 | 15 | Plaid +53 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 93 | 71 | Plaid +22 |\n| Agent ergonomics | 13% (16.2 this run) | 82 | 58 | Plaid +24 |\n| Security \u0026 auth | 14% (17.5 this run) | 67 | 49 | Plaid +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 15 | 15 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 83 | 33 | Plaid +50 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 79 | 53 | Plaid +26 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **69.8 · B** | **41.9 · E** | |\n\n## Facts side by side\n\n| Fact | Plaid | Yodlee Core API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Plaid | Yodlee, Inc. |\n| Hosted endpoint | `https://production.plaid.com` | no (local only) |\n| Transports | HTTP, stdio, Streamable HTTP | HTTP |\n| Auth | OAuth or key | OAuth |\n| Pricing | Paid | Paid |\n| x402 | no | no |\n| Licence | MIT (SDKs and MCP server) | Proprietary service. The Swagger file on GitHub is MIT |\n| Tools exposed | 4 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2026-09-24 | 2026-07-31 |\n| Terms last updated | 2025-12-01 | no document linked |\n| Privacy policy last updated | 2025-12-01 | no document linked |\n| Customer content may train models | not found in the text |  |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | yes |  |\n| Terms or service can change without notice | not found in the text |  |\n| Arbitration or class-action waiver | not found in the text |  |\n| Popularity | 586 stars, 1.3M npm/wk, 657k PyPI/wk | 17 stars |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\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**Yodlee Core API.** A public Swagger 2.0 file covers 98 operations with per-operation error codes, and tokens last 30 minutes and are bound to one end user. No price, service terms, status page, rate limit or SLA is published, there is no official server SDK, and the sandbox is limited to five preconfigured users with sample data.\n\n## Before you call either\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### Yodlee Core API\n\n1. Get a token with `POST /auth/token`, sending `Api-Version: 1.1` and the end user's `loginName` as headers and `clientId` and `secret` in a form body. Reuse it for up to 30 minutes\n2. Use the admin `loginName` only for administrative calls such as webhook subscriptions. A token made with a user's `loginName` reads only that user's data\n3. In the sandbox, pick one of the five preconfigured users. Registering new users is not supported there\n4. Page `GET /transactions` with `skip` and `top` (1 to 500). Without dates it returns the last 30 days, and at most two years with `fromDate` and `toDate`\n5. A person must link accounts in FastLink 4 first. Then read `GET /providerAccounts` for link status before `GET /accounts`\n6. Subscribe to `DATA_UPDATES` or `REFRESH` webhooks, or poll `GET /dataExtracts/events` in windows of at most 60 minutes, and do not poll accounts in a loop\n\n## Questions\n\n### Which is better for AI agents, Plaid or Yodlee Core API?\n\nPlaid scores 69.8 (B) on agent readiness against Yodlee Core API's 41.9 (E), and leads in 6 of 7 scored categories.\n\n### Do Plaid and Yodlee Core API need an API key?\n\nPlaid takes an API key or an OAuth sign-in. Yodlee Core API uses an OAuth sign-in.\n\n### Can an agent call Plaid and Yodlee Core API without installing anything?\n\nPlaid has a hosted endpoint at https://production.plaid.com. No hosted endpoint is listed for Yodlee Core API.\n\n### Are Plaid and Yodlee Core API open source?\n\nPlaid is open source (MIT (SDKs and MCP server)). No open-source release is listed for Yodlee Core API.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data.json, and with the fewest tokens: https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"plaid\", \"b\": \"yodlee-financial-data\"}`. From a terminal: `anchor compare plaid yodlee-financial-data`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/plaid.json and https://www.anchorterminal.com/api/v1/tools/yodlee-financial-data.json\n\n## Other comparisons with Plaid or Yodlee Core API\n\n- [Akoya vs Plaid](https://www.anchorterminal.com/compare/akoya-vs-plaid.md)\n- [Akoya vs Yodlee Core API](https://www.anchorterminal.com/compare/akoya-vs-yodlee-financial-data.md)\n- [Belvo vs Plaid](https://www.anchorterminal.com/compare/belvo-vs-plaid.md)\n- [Belvo vs Yodlee Core API](https://www.anchorterminal.com/compare/belvo-vs-yodlee-financial-data.md)\n- [Enable Banking vs Plaid](https://www.anchorterminal.com/compare/enable-banking-vs-plaid.md)\n- [Enable Banking vs Yodlee Core API](https://www.anchorterminal.com/compare/enable-banking-vs-yodlee-financial-data.md)\n- [Flinks vs Plaid](https://www.anchorterminal.com/compare/flinks-vs-plaid.md)\n- [Flinks vs Yodlee Core API](https://www.anchorterminal.com/compare/flinks-vs-yodlee-financial-data.md)\n- [GoCardless Bank Account Data vs Plaid](https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-plaid.md)\n- [GoCardless Bank Account Data vs Yodlee Core API](https://www.anchorterminal.com/compare/gocardless-bank-account-data-vs-yodlee-financial-data.md)\n- [MX Platform API vs Plaid](https://www.anchorterminal.com/compare/mx-vs-plaid.md)\n- [MX Platform API vs Yodlee Core API](https://www.anchorterminal.com/compare/mx-vs-yodlee-financial-data.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- [Salt Edge Account Information vs Yodlee Core API](https://www.anchorterminal.com/compare/salt-edge-vs-yodlee-financial-data.md)\n- [Teller vs Yodlee Core API](https://www.anchorterminal.com/compare/teller-vs-yodlee-financial-data.md)\n- [Tink vs Yodlee Core API](https://www.anchorterminal.com/compare/tink-vs-yodlee-financial-data.md)\n- [TrueLayer vs Yodlee Core API](https://www.anchorterminal.com/compare/truelayer-vs-yodlee-financial-data.md)\n- [Yapily vs Yodlee Core API](https://www.anchorterminal.com/compare/yapily-vs-yodlee-financial-data.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "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": "Plaid vs Yodlee Core API",
        "url": ""
      }
    ],
    "description": "Plaid scores 69.8 (B) on agent readiness against Yodlee Core API's 41.9 (E), and leads in 6 of 7 scored categories. Both do bank accounts. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Plaid B 69.8",
      "Yodlee Core API E 41.9",
      "scores"
    ],
    "h1": "Plaid vs Yodlee Core API",
    "image": "https://www.anchorterminal.com/assets/og/compare-plaid-vs-yodlee-financial-data.png",
    "path": "/compare/plaid-vs-yodlee-financial-data",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Plaid vs Yodlee Core API for AI agents, B 69.8 vs E 41.9",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/plaid-vs-yodlee-financial-data"
  },
  "tokens": {
    "markdown": 2400,
    "slim": 680
  },
  "version": 1
}
