A Model Context Protocol (MCP) server for integrating with Plaid's API in sandbox mode. This server provides tools for linking bank accounts, retrieving transactions, balances, and account information.
- Create Link tokens for Plaid Link initialization
- Exchange public tokens for access tokens
- Retrieve account information
- Fetch transactions within date ranges
- Get real-time balance information
- Node.js 18 or higher
- Plaid account with sandbox credentials
-
Get Plaid Credentials
- Sign up at Plaid Dashboard
- Navigate to Developers > Keys
- Copy your
client_idandsandboxsecret
-
Install Dependencies
npm install
-
Configure Environment
cp .env.example .env
Edit
.envand add your credentials:PLAID_CLIENT_ID=your_client_id_here PLAID_SECRET=your_sandbox_secret_here -
Build the Server
npm run build
npm startCreate a Link token for initializing Plaid Link.
Parameters:
user_id(required): Unique ID for the userclient_name(required): Name of your applicationproducts(optional): Array of products (default: ["transactions"])country_codes(optional): Array of country codes (default: ["US"])language(optional): Language code (default: "en")
Exchange a public token for an access token.
Parameters:
public_token(required): Public token from Plaid Link
Retrieve account information.
Parameters:
access_token(required): Access token for the linked item
Fetch transactions within a date range.
Parameters:
access_token(required): Access token for the linked itemstart_date(required): Start date (YYYY-MM-DD)end_date(required): End date (YYYY-MM-DD)
Get real-time balance information.
Parameters:
access_token(required): Access token for the linked item
The server is configured to use Plaid's sandbox environment. Use these test credentials when testing with Plaid Link:
- Username:
user_good - Password:
pass_good
See Plaid's Sandbox Guide for more test credentials and scenarios.
Watch mode for development:
npm run devTo use this MCP server with Claude Desktop, add the following to your Claude Desktop config:
MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"plaid": {
"command": "node",
"args": ["/absolute/path/to/plaid-mcp/build/index.js"],
"env": {
"PLAID_CLIENT_ID": "your_client_id_here",
"PLAID_SECRET": "your_sandbox_secret_here"
}
}
}
}MIT