Finance Tracker MCP Server
AI-powered personal finance analysis through Claude AI using Plaid integration, enabling natural language queries about transactions, subscriptions, budgets, and spending trends.
README
Finance Tracker MCP Server
AI-powered personal finance analysis through Claude AI using the Model Context Protocol (MCP).

What This Does
This MCP server connects Claude AI to financial transaction data, enabling natural language queries about your finances:
- "Show me my spending this month"
- "Find all my subscriptions"
- "What were my top 10 expenses?"
- "Show spending trends for the last 3 months"
- "Search for all Starbucks transactions"
- "Check my budget: Dining $500, Shopping $300"
Features
-
6 Financial Analysis Tools
- Monthly spending summaries
- Subscription detection (recurring charges)
- Budget tracking & alerts
- Spending trend analysis
- Top expenses ranking
- Transaction search
-
Plaid Integration
- Connect to 10,000+ banks (sandbox mode for testing)
- Real-time transaction data (when connected to real accounts)
- Secure API access
-
Privacy First
- All data stays local on your machine
- No external data storage
- Encrypted API connections
Quick Start
Prerequisites
- Python 3.9 or higher
- Claude Desktop app
- Plaid account (free at https://dashboard.plaid.com)
Installation
- Clone the repository
git clone https://github.com/yourusername/finance-plaid-mcp.git
cd finance-plaid-mcp
- Create virtual environment
python -m venv venv
# Activate it:
# Windows:
venv\Scripts\activate
# Mac/Linux:
source venv/bin/activate
- Install dependencies
pip install -r requirements.txt
-
Set up Plaid API keys
Copy
.env.exampleto.envand add your Plaid keys from https://dashboard.plaid.com
PLAID_CLIENT_ID=your_client_id_here
PLAID_SECRET=your_sandbox_secret_here
PLAID_ENV=sandbox
DATA_DIR=./data
- Generate sample data (for testing)
python generate_sample_data.py
-
Configure Claude Desktop
Add this to your Claude Desktop config file:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonMac:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"finance-tracker": {
"command": "python",
"args": [
"/FULL/PATH/TO/finance-plaid-mcp/src/server.py"
]
}
}
}
Important: Use the full absolute path to your project!
-
Restart Claude Desktop
-
Test it!
In Claude, ask: "Find all my subscriptions"
š Project Structure
finance-plaid-mcp/ āāā src/ ā āāā server.py # MCP server (main entry point) ā āāā plaid_client.py # Plaid API integration ā āāā analyzer.py # Transaction analysis logic ā āāā config.py # Configuration & environment variables āāā data/ ā āāā sample_transactions.json # Generated test data āāā screenshot.png # Demo screenshot āāā .env # Your API keys (NOT committed to git) āāā .env.example # Template for API keys āāā .gitignore # Prevents committing secrets āāā requirements.txt # Python dependencies āāā README.md # This file
š§ Available Tools
Claude can call these tools when analyzing your finances:
| Tool | Description |
|---|---|
monthly_summary |
Get spending/income summary for any month |
find_subscriptions |
Detect recurring charges (Netflix, Spotify, etc.) |
spending_trends |
Analyze spending patterns over time |
budget_check |
Compare actual spending vs budget limits |
top_expenses |
Get largest expenses ranked |
search_transactions |
Search by merchant or category |
š¦ Connecting Real Bank Accounts
Currently in Sandbox Mode (test data only)
To connect real banks:
- Switch to Development mode in Plaid dashboard
- Update
.env:PLAID_ENV=development - Implement Plaid Link UI (web interface for bank login)
For portfolio/demo purposes, sandbox mode is recommended to avoid exposing real financial data.
š Sample Output
Finding Subscriptions: 19 subscriptions found totaling $18,123/year Top subscriptions:
Comcast Internet: $130.71/mo ($915 total) Apple Store: $180.05/mo ($900 total) Verizon Phone Bill: $110.75/mo ($886 total) Electric Bill: $119.86/mo ($839 total) Zara: $151.91/mo ($760 total)
Monthly Summary: Monthly total: $1,510 Income: $5,000 Expenses: $3,490 Net: $1,510 Spending by category:
Groceries: $644 Shopping: $900 Utilities: $886 Dining: $450 Transportation: $380
š ļø Tech Stack
- Python 3.14
- MCP SDK - Model Context Protocol
- Plaid API - Bank connection & transaction data
- Pandas - Data analysis
- Claude AI - Natural language interface
š Security & Privacy
- ā
API keys stored in
.env(never committed) - ā All data processed locally
- ā No external logging or analytics
- ā Plaid provides bank-level encryption
ā ļø Important: Never commit your .env file or API keys to GitHub!
š¤ Contributing
Contributions welcome! Feel free to:
- Report bugs
- Suggest features
- Submit pull requests
š License
MIT License
š Acknowledgments
- Built with Anthropic's MCP
- Powered by Plaid
ā If you found this helpful, please star the repo!
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.