Plaid Developer Tools

Plaid API integration for fintech developers using Cursor, Claude Code, and MCP-compatible editors. 17 skills covering Link setup, transaction sync, webhooks, sandbox testing, category mapping, error handling, API reference, institution search, account verification, investments, identity, recurring detection, migration, security, React integration, Next.js integration, and production readiness - plus 7 rules. Companion MCP server provides 30 tools for live Plaid sandbox interaction.

0
Skills
0
Rules
0
MCP Tools
Cursor 0.49+ Windows / macOS / Linux Node 18+ Claude Code compatible
Get started with Plaid sandbox
cd mcp-server && npm install && npm start

Skills

17
Skills list
Plaid Account Verification Verify bank accounts using Plaid Auth, micro-deposits, same-day micro-deposits, and database match. Use when the user needs account and routing numbers or ACH payment verification.
Triggers
  • Needs account and routing numbers for ACH payments
  • Wants to verify bank account ownership
  • Is setting up micro-deposit verification
  • Needs same-day micro-deposit flows
  • Is implementing database match verification
  • Wants to initiate ACH debits or credits
plaid-account-verification
Plaid API Reference Search and retrieve Plaid API endpoint documentation including parameters, authentication requirements, response shapes, and rate limits. Use when the user needs to call a Plaid API or wants to know a
Triggers
  • Asks how to call a specific Plaid API endpoint
  • Wants to know what Plaid APIs are available
  • Needs parameter details for a Plaid endpoint
  • Is looking up authentication requirements for an endpoint
  • Needs to understand response shapes and error codes
  • Wants rate limit information for an API call
plaid-api-reference
Plaid Category Mapping Map Plaid personal finance categories to your application's taxonomy. Covers the primary/detailed hierarchy, building custom mapping layers, and common category use cases. Use when the user needs to c
Triggers
  • Needs to understand Plaid's transaction category system
  • Wants to map Plaid categories to custom app categories
  • Is building a budgeting or expense tracking feature
  • Needs to display human-readable category labels
  • Wants to aggregate spending by category
  • Is migrating from the legacy category system to `personal_finance_category`
plaid-category-mapping
Plaid Error Handling Detect, classify, and recover from Plaid API errors including ITEM_LOGIN_REQUIRED, INVALID_CREDENTIALS, INSTITUTION_NOT_RESPONDING, rate limits, and network failures. Use when the user needs to handle
Triggers
  • Is getting errors from Plaid API calls
  • Needs to implement error handling for Plaid integration
  • Wants to understand Plaid error types and recovery strategies
  • Needs to handle ITEM_LOGIN_REQUIRED or other item errors
  • Is debugging intermittent failures or rate limits
  • Wants to build a robust error recovery system
plaid-error-handling
Plaid Identity Verification Implement Plaid Identity and Identity Verification products for KYC flows, document verification, and match scores. Use when the user needs to verify account holder identity.
Triggers
  • Needs to verify the identity of account holders
  • Is implementing KYC (Know Your Customer) flows
  • Wants to retrieve account holder names, addresses, and contact info
  • Needs document verification (ID, passport, driver's license)
  • Wants match scores comparing Plaid data to user-provided info
  • Needs to handle joint accounts with multiple owners
plaid-identity-verification
Plaid Institution Search Search Plaid institutions by name, routing number, products supported, and country. Use when the user needs to find bank coverage, check institution availability, or look up institution details.
Triggers
  • Wants to check if a specific bank is supported by Plaid
  • Needs to search institutions by name or routing number
  • Wants to filter institutions by supported products
  • Needs institution details (logo, URL, products, MFA type)
  • Is checking country-level coverage
  • Needs to handle OAuth institutions differently from credential-based ones
plaid-institution-search
Plaid Investment Tracking Track investment holdings, securities, and transactions using the Plaid Investments product. Covers holdings retrieval, security details, cost basis, and supported brokerages.
Triggers
  • Needs to fetch investment holdings from brokerage accounts
  • Wants security details (ticker, CUSIP, ISIN, type)
  • Needs investment transaction history (buys, sells, dividends)
  • Is building a portfolio tracker or net worth calculator
  • Wants cost basis or gain/loss calculations
  • Needs to aggregate holdings across multiple brokerages
plaid-investment-tracking
Plaid Link Setup Integrate Plaid Link into web and mobile apps using react-plaid-link, token exchange, OAuth redirect handling, update mode, and multi-item flows. Use when the user needs to connect bank accounts via P
Triggers
  • Wants to integrate Plaid Link into a web or mobile app
  • Needs to create a Link token on the backend
  • Needs to handle the public token exchange flow
  • Is setting up OAuth redirect for institutional login
  • Wants to use update mode to fix broken connections
  • Needs multi-item Link flows (connecting multiple banks)
  • Is using `react-plaid-link` or `@plaid/link-web`
plaid-link-setup
Plaid Migration Guide Migrate from Yodlee, MX, Finicity, or other aggregators to Plaid. Covers data mapping, institution coverage comparison, and migration strategies.
Triggers
  • Is migrating from Yodlee, MX, Finicity, or another aggregator to Plaid
  • Needs to compare institution coverage between providers
  • Wants to map data fields from another provider to Plaid's schema
  • Is planning a phased migration strategy
  • Needs to handle dual-provider operation during transition
plaid-migration-guide
Plaid Next.js Integration Integrate Plaid into Next.js apps with App Router API routes, middleware auth, server-side token exchange, and webhook route handlers. Use when the user is building a Next.js app with Plaid.
Triggers
  • Is building a Next.js app with Plaid integration
  • Needs App Router API routes for Plaid endpoints
  • Wants middleware authentication for Plaid routes
  • Is setting up server-side token exchange
  • Needs webhook route handlers in Next.js
  • Wants server actions for Plaid operations
plaid-nextjs-integration
Plaid Production Readiness Prepare a Plaid integration for production access including the application process, compliance checklist, and sandbox to development to production migration path.
Triggers
  • Is ready to move from sandbox to development or production
  • Needs to apply for Plaid production access
  • Wants a compliance checklist for their Plaid integration
  • Needs to understand the sandbox -> development -> production path
  • Is preparing for Plaid's application review process
plaid-production-readiness
Plaid React Integration Integrate Plaid Link into React apps using react-plaid-link hooks, error boundaries, loading states, and context providers. Use when the user is building a React frontend with Plaid.
Triggers
  • Is building a React app that integrates Plaid Link
  • Needs `react-plaid-link` hook patterns beyond basic setup
  • Wants context providers for managing Plaid state
  • Needs error boundaries for Link failures
  • Is handling loading states during token creation and exchange
  • Wants reusable Plaid components
  • Needs to reconnect broken items (update mode)
plaid-react-integration
Plaid Recurring Detection Detect recurring transactions using the /transactions/recurring endpoint. Covers frequency detection, subscription identification, and recurring stream management.
Triggers
  • Needs to identify recurring transactions (subscriptions, bills, income)
  • Wants to detect subscription payments automatically
  • Is building a subscription tracker or bill reminder
  • Needs to separate recurring from one-time transactions
  • Wants to predict upcoming charges
  • Needs to classify income streams (paychecks, deposits)
plaid-recurring-detection
Plaid Sandbox Testing Test Plaid integrations using the sandbox environment with test credentials, test institutions, custom user scenarios, and error simulation. Use when the user needs to develop or test against Plaid wi
Triggers
  • Is developing a Plaid integration and needs test data
  • Wants to create sandbox items without the Link UI
  • Needs to simulate specific error conditions
  • Wants to test webhook handling in sandbox
  • Needs to generate test transactions
  • Wants to verify their integration works before going to development/production
  • Needs to test OAuth redirect flows in sandbox
plaid-sandbox-testing
Plaid Security Best Practices Secure Plaid integrations with token encryption, RLS patterns, access token rotation, audit logging, and least-privilege access. Use when the user needs to harden their Plaid implementation.
Triggers
  • Needs to store Plaid access tokens securely
  • Wants to encrypt sensitive Plaid data at rest
  • Is implementing row-level security for multi-tenant apps
  • Needs audit logging for Plaid API calls
  • Wants to implement access token rotation
  • Is preparing for a security audit of their Plaid integration
plaid-security-best-practices
Plaid Transaction Sync Implement Plaid's /transactions/sync endpoint for cursor-based transaction pagination. Covers added/modified/removed handling, cursor persistence, deduplication, and the has_more loop. Use when the us
Triggers
  • Needs to fetch transactions from Plaid
  • Is implementing `/transactions/sync` (the recommended approach)
  • Needs to handle added, modified, and removed transactions
  • Wants to understand cursor-based pagination
  • Has stale transaction data and needs to refresh
  • Is migrating from the legacy `/transactions/get` endpoint
plaid-transaction-sync
Plaid Webhook Handling Handle Plaid webhooks including verification, all webhook types and codes, sandbox webhook firing, retry logic, and idempotent processing. Use when the user needs to receive and process Plaid webhook
Triggers
  • Needs to set up a webhook endpoint for Plaid events
  • Wants to verify webhook signatures
  • Needs to handle specific webhook types (transactions, item, auth, etc.)
  • Wants to fire test webhooks in sandbox
  • Is debugging missing or duplicate webhook events
  • Needs idempotent webhook processing
plaid-webhook-handling

Rules

7
Rules list
NameScopeDescription
Plaid Env Safety Prevent sandbox or development Plaid credentials from being used in production environments. Flag environment mismatches, missing PLAID_ENV validation, and hardcoded environment URLs.
Plaid Error Handling Flag Plaid API calls that lack proper error handling. Detect missing try/catch blocks, unchecked PlaidError types, and absent error recovery logic around Plaid client method calls.
Plaid Link Best Practices Flag common Plaid Link integration issues including missing onExit handler, no error callback, hardcoded products array, and missing OAuth support.
Plaid Secrets Prevent committing Plaid API credentials, access tokens, or sensitive authentication material. Flag files containing Plaid secret patterns before they are committed.
Plaid Sync Cursor Flag transaction sync implementations that don't persist cursors, miss the has_more loop, or risk losing cursor state between sync calls.
Plaid Token Storage Flag insecure storage of Plaid access tokens including localStorage, cookies, client-side code, unencrypted database columns, and log files.
Plaid Webhook Security Flag missing webhook signature verification, unvalidated webhook payloads, and insecure webhook endpoint patterns in Plaid integrations.

MCP Tools

30
/
Accounts 7
NameDescription
plaid_getAccounts Get accounts for a Plaid access token
plaid_getBalance Get real-time balance for accounts
plaid_getIdentity Get account holder identity information
plaid_getAuthNumbers Get account and routing numbers
plaid_getInvestmentHoldings Get investment holdings and securities
plaid_getLiabilities Get liability accounts including credit cards, student loans, and mortgages
plaid_getRecurring Get recurring transactions for an item
Items 3
NameDescription
plaid_getItemStatus Get item health, last successful and failed update timestamps
plaid_removeItem Remove and disconnect a Plaid item
plaid_updateItemWebhook Update the webhook URL for an item
Link and Tokens 3
NameDescription
plaid_createLinkToken Create a Plaid Link token for sandbox testing
plaid_exchangePublicToken Exchange a Plaid public token for an access token
plaid_inspectAccessToken Decode and display access token metadata including item_id and products
Reference 8
NameDescription
plaid_listCategories Browse the full Plaid personal_finance_category taxonomy
plaid_listProducts List all Plaid products with descriptions and pricing tier
plaid_listWebhookTypes List all Plaid webhook types with payload shapes and descriptions
plaid_listCountryCoverage Show Plaid-supported countries and available products per country
plaid_listSandboxCredentials List available sandbox test credentials and their behaviors
plaid_getApiEndpoint Look up any Plaid API endpoint with parameters, auth, and response shape
plaid_searchInstitutions Search Plaid institutions by name, products, and country
plaid_getInstitution Get institution details by ID including name, products, logo, and URL
Sandbox 5
NameDescription
plaid_createSandboxItem Create a sandbox item without Link UI for instant test bank connection
plaid_resetSandboxLogin Force an ITEM_LOGIN_REQUIRED error on a sandbox item
plaid_fireSandboxWebhook Fire a specific webhook type for a sandbox item
plaid_simulateTransactions Fire sandbox transaction webhook to generate test transactions
plaid_sandboxSetVerificationStatus Set micro-deposit verification status in sandbox
Transactions 2
NameDescription
plaid_syncTransactions Run /transactions/sync with cursor management
plaid_refreshTransactions Force a transaction refresh for an item
Transfers 1
NameDescription
plaid_getTransferIntent Create a transfer intent for payment initiation
Webhooks 1
NameDescription
plaid_verifyWebhookSignature Verify a webhook payload signature given body and headers

Installation

Installation steps
  1. Clone and build:
    git clone https://github.com/TMHSDigital/Plaid-Developer-Tools.git
    cd Plaid-Developer-Tools/mcp-server && npm install && npm run build
  2. Get Plaid credentials: Sign up at dashboard.plaid.com and get your client_id and secret for the sandbox environment.
  3. Set environment variables:
    cp .env.example .env
    Edit .env with your PLAID_CLIENT_ID, PLAID_SECRET, and PLAID_ENV=sandbox.
  4. Add to Cursor MCP config (.cursor/mcp.json):
    {"mcpServers":{"plaid":{"command":"node","args":["mcp-server/dist/index.js"],"env":{"PLAID_CLIENT_ID":"YOUR_CLIENT_ID","PLAID_SECRET":"YOUR_SECRET","PLAID_ENV":"sandbox"}}}}
  5. Open your fintech project in Cursor. All 17 skills, 7 rules, and 30 MCP tools are ready. Start with sandbox mode - switch PLAID_ENV to development or production when ready.

Changelog

Recent changelog
v0.6.0 2026-04-02
Added
  • 3 live MCP tools: `plaid_updateItemWebhook`, `plaid_getLiabilities`, `plaid_verifyWebhookSignature`
  • Production skill: `plaid-react-integration` - usePlaidLink hook, PlaidContext provider, error boundaries, reconnection UI, TypeScript types
  • Production skill: `plaid-nextjs-integration` - App Router API routes, server-only Plaid client, middleware auth, webhook handler, server actions
Changed
  • Re-tagged 2 MCP tool stubs (`getTransferIntent`, `inspectAccessToken`) from v0.6.0 to v0.7.0
  • `plaid_verifyWebhookSignature` verifies body hash against JWT claims and fetches the verification key from Plaid
  • `plaid_getLiabilities` supports optional `account_ids` filter for scoping to specific liability accounts
v0.5.0 2026-04-01
Added
  • 5 live MCP tools: `plaid_sandboxSetVerificationStatus`, `plaid_simulateTransactions`, `plaid_refreshTransactions`, `plaid_removeItem`, `plaid_getItemStatus`
  • Production skill: `plaid-identity-verification` - identity data retrieval, match scoring, Identity Verification (KYC), joint account handling
  • Production skill: `plaid-recurring-detection` - inflow/outflow streams, frequency types, stream lifecycle, subscription tracking, income detection
  • Production rule: `plaid-token-storage` - flags localStorage, cookies, client-side code, unencrypted DB, and log output containing access tokens
Changed
  • Re-tagged 3 MCP tool stubs (`updateItemWebhook`, `getLiabilities`, `getTransferIntent`) from v0.5.0 to v0.6.0
  • `plaid_simulateTransactions` fires a `TRANSACTIONS` / `DEFAULT_UPDATE` webhook to generate sandbox test data
  • `plaid_getItemStatus` returns full item metadata including products, webhook, and consent expiration
Changed
  • Re-tagged 3 MCP tool stubs (`updateItemWebhook`, `getLiabilities`, `getTransferIntent`) from v0.5.0 to v0.6.0
  • `plaid_simulateTransactions` fires a `TRANSACTIONS` / `DEFAULT_UPDATE` webhook to generate sandbox test data
  • `plaid_getItemStatus` returns full item metadata including products, webhook, and consent expiration
View full changelog on GitHub →