Plaid Server
FreeNot checkedA self-hosted MCP server that lets Claude query your bank accounts, balances, and transactions through Plaid.
About
A self-hosted MCP server that lets Claude query your bank accounts, balances, and transactions through Plaid.
README
A self-hosted MCP server that lets Claude query your bank accounts, balances, and transactions through Plaid.
Tools
| Tool | Description |
|---|---|
accounts |
All linked bank accounts |
balances |
Current/available balances and credit limits |
transactions |
Full transaction history for a date range |
total_spending |
Total spending broken down by category |
transactions_by_category |
Filter transactions by Plaid PFC category |
merchants |
All merchants for a date range, sorted by total spend |
transactions_by_merchant |
Filter transactions by merchant name |
How it works
- OAuth 2.1 + PKCE with Google as the identity provider
- Email allowlist is the security boundary
- Claude.ai gets a 30-day bearer token; your Plaid access token never leaves your server
- Caddy sits in front of FastAPI, terminating TLS on port 443 with auto-provisioned Let's Encrypt certs and reverse-proxying to
localhost:8080
Requirements
- A Linux server with a public IP (this guide uses an AWS EC2
t3.micro) - A domain name pointing at it (this guide uses a free DuckDNS subdomain)
- A Plaid developer account with production access
- A Google Cloud account for the OAuth client
Setup
1. Plaid
- Create a Plaid account at dashboard.plaid.com
- Request Production access in the dashboard (Plaid will review your application — this can take a few days)
- Once approved, save your
client_idandProductionsecret from Team Settings → Keys
2. Google OAuth
- console.cloud.google.com → create a project
- APIs & Services → OAuth consent screen → set up an "External" app, add yourself as a test user
- APIs & Services → Credentials → Create credentials → OAuth client ID
- Application type: Web application
- Authorized redirect URIs:
https://yourdomain.com/auth/google/callback(use your real domain from step 4 below) - Save the
Client IDandClient secret
3. Server
This guide assumes AWS EC2:
- Launch a
t3.microUbuntu 24.04 instance - Security group: inbound TCP 22 (SSH from your IP), 80, 443
- Allocate an Elastic IP and associate it with the instance
- SSH in:
ssh -i your-key.pem ubuntu@<elastic-ip>
4. Domain
Free option using DuckDNS:
- Sign in with Google/GitHub/Reddit
- Reserve a subdomain (e.g.
plaid-yourname) - Set the IP to your Elastic IP
- Your domain is now
plaid-yourname.duckdns.org
Go back to step 2.5 and set the redirect URI to https://plaid-yourname.duckdns.org/auth/google/callback.
5. Install
On the server:
git clone https://github.com/lukew0824/plaid-mcp.git
cd plaid-mcp
cp .env.example .env
nano .env # fill in everything
./install.sh
The script:
- Installs Python, Caddy, and dependencies
- Sets up and starts a systemd service (
plaid-mcp) that auto-restarts on failure and boot - Configures Caddy as a reverse proxy with auto-HTTPS via Let's Encrypt
6. Connect in Claude.ai
- Claude.ai → Settings → Connectors → Add custom connector
- URL:
https://yourdomain.com/mcp - Click Connect
- Sign in with the Google account matching
ALLOWED_EMAIL - First time only: a Plaid Link popup will appear — connect your bank
- Done. Try: "What did I spend on food last month?"
Configuration
The .env values:
| Key | Description |
|---|---|
PLAID_ENV |
production |
PLAID_CLIENT_ID |
From Plaid dashboard |
PLAID_PRODUCTION_SECRET |
From Plaid dashboard |
GOOGLE_CLIENT_ID |
From Google Cloud Console |
GOOGLE_CLIENT_SECRET |
From Google Cloud Console |
ALLOWED_EMAIL |
The single Google email allowed to authenticate |
BASE_URL |
Public HTTPS URL of this server (no trailing slash) |
DATABASE_URL |
sqlite:///./plaid_mcp.db (default works for self-hosting) |
License
MIT
Installing Plaid Server
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/lukew0824/plaid-mcp-serverFAQ
Is Plaid Server MCP free?
Yes, Plaid Server MCP is free — one-click install via Unyly at no cost.
Does Plaid Server need an API key?
No, Plaid Server runs without API keys or environment variables.
Is Plaid Server hosted or self-hosted?
A hosted option is available: Unyly runs the server in the cloud, no local setup required.
How do I install Plaid Server in Claude Desktop, Claude Code or Cursor?
Open Plaid Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzCompare Plaid Server with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
