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!
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。