Monarch Money MCP Server
Enables integration with Monarch Money to query financial data, analyze spending patterns, track budgets, and get personalized financial insights through conversational AI with Claude Desktop.
README
Monarch Money MCP Server
A Model Context Protocol (MCP) server that provides seamless integration between Monarch Money and Claude Desktop. This server enables you to query your financial data, analyze spending patterns, and get personalized financial insights directly through conversational AI.
🚀 Features
- 🏦 Account Management: View all accounts with real-time balances and details
- 💳 Transaction Analysis: Search and filter transactions with advanced criteria
- 📊 Spending Insights: Analyze spending patterns by category, merchant, and time period
- 💰 Budget Tracking: Monitor budget performance with planned vs. actual spending
- 📈 Net Worth Calculation: Track your total net worth and asset allocation
- 📅 Monthly Reports: Generate comprehensive monthly financial summaries
- 🏷️ Category Management: Explore and analyze transaction categories
- 📉 Balance History: View account balance trends over time
- 🔐 Secure Authentication: Token-based authentication with MFA support
🛡️ Security & Privacy
- Token-based authentication - No need to store credentials long-term
- Environment variable protection - Credentials never hardcoded
- Multi-factor authentication support - Enhanced security for your financial data
- GraphQL API integration - Secure communication with Monarch Money
- Local processing - All analysis happens on your machine
📋 Prerequisites
Before you begin, ensure you have:
- Node.js 18+ installed on your system
- Claude Desktop application installed
- Monarch Money account with valid credentials
- npm or yarn package manager
🔧 Installation
1. Clone the Repository
git clone https://github.com/whitebirchio/monarch-mcp.git
cd monarch-mcp
2. Install Dependencies
npm install
3. Authentication Setup
🔑 Option A: Token Authentication (Recommended)
-
Get your authentication token:
npm run login -
Follow the prompts to enter your Monarch Money credentials and MFA code (if required)
-
Copy the generated token for use in Claude Desktop configuration
📧 Option B: Direct Credentials
Create a .env file with your credentials:
MONARCH_TOKEN=your-auth-token-here
4. Build the Project
npm run build
⚙️ Claude Desktop Configuration
macOS Configuration
Edit your Claude Desktop config file:
~/Library/Application Support/Claude/claude_desktop_config.json
Add this configuration:
{
"mcpServers": {
"monarch-money": {
"command": "node",
"args": ["/absolute/path/to/monarch-mcp/dist/index.js"],
"env": {
"MONARCH_TOKEN": "your-auth-token-here"
}
}
}
}
Windows Configuration
Edit your Claude Desktop config file:
%APPDATA%/Claude/claude_desktop_config.json
Use the same JSON structure with Windows-style paths:
{
"mcpServers": {
"monarch-money": {
"command": "node",
"args": ["C:\\path\\to\\monarch-mcp\\dist\\index.js"],
"env": {
"MONARCH_TOKEN": "your-auth-token-here"
}
}
}
}
💡 Important: Use the absolute path to your installation directory.
🎯 Usage Examples
After configuring Claude Desktop and restarting the application, you can ask questions like:
💰 Financial Overview
- "What's my current net worth?"
- "Show me all my account balances"
- "What's my checking account balance?"
📊 Spending Analysis
- "How much did I spend on groceries last month?"
- "Show me my largest expenses from the past week"
- "Break down my spending by category for Q3"
- "Find all transactions over $500 this year"
📈 Budget Insights
- "How am I doing against my budget this month?"
- "Which budget categories am I overspending in?"
- "Show me my budget vs actual for each category"
🔍 Transaction Search
- "Find all Amazon purchases from last month"
- "Show me restaurant transactions over $50"
- "What did I spend at Costco this year?"
📅 Historical Analysis
- "Compare my spending this month vs last month"
- "Show my account balance trends for the past 6 months"
- "What was my net income last month?"
🛠️ Available Tools
| Tool | Description | Parameters |
|---|---|---|
get_accounts |
List all financial accounts | None |
get_account_balance |
Get specific account balance | accountId |
get_transactions |
Retrieve transactions with filters | limit, accountId, startDate, endDate |
get_spending_by_category |
Spending breakdown by category | startDate, endDate |
get_budget_summary |
Current budget status | None |
search_transactions |
Search transactions by criteria | query, minAmount, maxAmount, limit |
get_net_worth |
Calculate total net worth | None |
get_monthly_summary |
Monthly financial summary | year, month |
get_categories |
List all transaction categories | None |
get_account_snapshots |
Account balance history | accountId, startDate, endDate |
🔧 Development
Development Commands
# Run in development mode
npm run dev
# Build for production
npm run build
# Start production server
npm start
# Get authentication token
npm run login
Project Structure
monarch-mcp/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── login.ts # Authentication helper
│ ├── monarch-api.ts # Monarch Money API client
│ └── tools.ts # MCP tool implementations
├── dist/ # Compiled JavaScript output
├── package.json # Project dependencies
├── tsconfig.json # TypeScript configuration
└── README.md # This file
API Architecture
The server implements a three-layer architecture:
- MCP Layer (
index.ts) - Handles Model Context Protocol communication - Tools Layer (
tools.ts) - Implements financial analysis tools - API Layer (
monarch-api.ts) - Manages Monarch Money GraphQL API integration
🐛 Troubleshooting
Authentication Issues
| Problem | Solution |
|---|---|
| Invalid credentials | Verify your email/password in the login command |
| MFA required | Use the npm run login command which handles MFA |
| Token expired | Re-run npm run login to get a fresh token |
Integration Issues
| Problem | Solution |
|---|---|
| Tools not appearing | Restart Claude Desktop completely |
| Server not starting | Verify the absolute path in config file |
| Permission errors | Check file permissions on dist/index.js |
Common Error Messages
- "MONARCH_TOKEN environment variable is required" - Add your token to the Claude Desktop config
- "Authentication failed" - Check your token validity and regenerate if needed
- "GraphQL Error (Code: 400)" - API request format issue (usually handled automatically)
🤝 Contributing
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Test thoroughly with your own Monarch Money account
- Commit your changes (
git commit -m 'Add amazing feature') - Push to your branch (
git push origin feature/amazing-feature) - Open a Pull Request
Development Guidelines
- Follow TypeScript best practices
- Add proper error handling
- Update documentation for new features
- Test with real Monarch Money data
- Maintain backwards compatibility
📄 License
This project is licensed under the ISC License - see the LICENSE file for details.
⚠️ Disclaimer
This project is an independent integration and is not affiliated with, endorsed by, or sponsored by Monarch Money.
Important Notes:
- Use this software at your own risk
- Always verify financial data independently
- Never make financial decisions based solely on automated tools
- Keep your authentication credentials secure
- Review all transactions and calculations manually
🙋♂️ Support
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Documentation: This README and inline code comments
Made with ❤️ for the Claude Desktop community
推荐服务器
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 模型以安全和受控的方式获取实时的网络信息。