plaid-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PLAID_ENV | Yes | Plaid environment: 'production' or 'sandbox' (default is 'production') | |
| PLAID_MCP_DB | No | Path to SQLite database file (default is '~/.plaid-mcp/plaid.db') | |
| PLAID_SECRET | Yes | Your Plaid secret from dashboard.plaid.com (sandbox or production) | |
| MCP_AUTH_TOKEN | No | Random 32-byte token for HTTP mode authentication (required for remote deployment) | |
| PLAID_PRODUCTS | No | Comma-separated list of Plaid products required at link time (e.g., 'transactions') | |
| PLAID_CLIENT_ID | Yes | Your Plaid client ID from dashboard.plaid.com | |
| PLAID_CLIENT_NAME | No | Client name shown to users in Plaid Link (default is 'plaid-mcp') | |
| PLAID_WEBHOOK_URL | No | URL for webhook-driven link completion (optional, for remote deployment) | |
| PLAID_COUNTRY_CODES | No | Comma-separated country codes (e.g., 'US' or 'US,CA,GB') | |
| PLAID_OPTIONAL_PRODUCTS | No | Comma-separated list of Plaid products requested if supported (e.g., 'investments,liabilities,identity') |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| link_accountA | Start a new Plaid Link session. Returns a URL the user opens in their browser to authenticate with their bank. After they finish, call complete_linking with the returned link_token. |
| complete_linkingA | Finalize a Link session once the user has completed it in their browser. Exchanges the public_token for a permanent access_token and caches accounts. |
| list_linked_institutions_toolA | List every institution currently linked, with account counts and any errors. |
| remove_institution_toolB | Unlink an institution (Plaid item) and delete its local data. |
| list_accounts_toolA | List every account across every linked institution (from the local cache). |
| get_balances_toolA | Live balance lookup (hits Plaid, not cached). Filter by account_id if given. |
| sync_transactions_toolA | Pull the latest transactions from Plaid into the local cache. Idempotent and incremental — uses cursors from the last sync. Plaid's first sync after linking an institution runs asynchronously;
when wait_for_ready is True (default), this tool blocks briefly until
the historical pull reports HISTORICAL_UPDATE_COMPLETE. Returned
|
| refresh_transactions_toolA | Nudge Plaid to pull fresh transactions from the bank right now. Use when a user just made a purchase and wants to see it, or when transactions look stale. Plaid normally refreshes on its own every few hours; this forces an immediate pull. Asynchronous — wait 30-60s then call sync_transactions to ingest any new data. Pass item_id to refresh one institution, or leave empty to refresh everything. Some smaller banks don't support on-demand refresh. |
| get_transactions_toolA | Query cached transactions. Dates are YYYY-MM-DD. Run sync_transactions first to refresh. Positive amounts = spend. |
| search_transactions_toolC | Fuzzy search across transaction description and merchant name. |
| spending_summary_toolC | Aggregate spending by category | subcategory | merchant | account. |
| get_holdings_toolC | Current investment positions (tickers, quantities, market value, cost basis). |
| get_investment_transactions_toolC | Brokerage transactions: buys, sells, dividends, fees. |
| get_liabilities_toolC | Credit cards, student loans, mortgages with APRs, balances, due dates. |
| get_identity_toolC | Account holder names, emails, phones, addresses as reported by the institution. |
| get_income_toolB | Bank-detected income streams. Requires Income product enabled in your Plaid dashboard. |
| set_account_override_toolA | Annotate a linked card with the real APR when Plaid misses it. Common case: Citi doesn't consistently report 0% intro / balance-transfer promos through /liabilities/get. Use this to record the true effective APR and (optionally) a promo expiration date so summarize_debt_tool can reason honestly. After the promo_expires date, payoff analysis reverts to Plaid's reported purchase APR. |
| clear_account_override_toolC | Remove any APR override for an account. |
| list_overrides_toolB | List every account APR override the user has recorded. |
| add_external_debt_toolA | Track a debt that isn't behind a linked Plaid account. Use for BNPL (Affirm, Klarna), medical bills, 401(k) loans, or debts at
non-linkable lenders. |
| update_external_debt_toolC | Update any subset of fields on an existing external debt. |
| remove_external_debt_toolC | Delete an external debt entry. |
| list_external_debts_toolA | List every external (non-Plaid-linked) debt the user has recorded. |
| summarize_debt_toolA | Rank every debt and project payoff timelines. Merges Plaid-reported credit cards with user APR overrides and any external debts, then ranks by strategy:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/t-rhex/plaid-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server