The Monarch Money MCP Server integrates with the Monarch Money personal finance platform via Claude Desktop to provide comprehensive financial management capabilities:
- Account Management: View linked financial accounts with balances, access investment holdings, and refresh account data from institutions.
- Transaction Management: Fetch transactions with filtering by date and account, create new transactions, and update existing ones.
- Financial Analysis: Access budget information, track spending vs budgets, and perform cashflow analysis over specified date ranges.
- Secure Authentication: One-time setup with MFA support, secure session persistence, and encrypted session files.
Monarch Money MCP Server
A Model Context Protocol (MCP) server for integrating with the Monarch Money personal finance platform. This server provides seamless access to your financial accounts, transactions, budgets, and analytics through Claude Desktop.
My MonarchMoney referral: https://www.monarchmoney.com/referral/ufmn0r83yf?r_source=share
Built with the MonarchMoney Python library by @hammem - A fantastic unofficial API for Monarch Money with full MFA support.
🚀 Quick Start
1. Installation
- Clone this repository:
- Install dependencies:
- Configure Claude Desktop:
Add this to your Claude Desktop configuration file:macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows:%APPDATA%\Claude\claude_desktop_config.json
Important: Replace/path/to/your/monarch-mcp-server
with your actual path! - Restart Claude Desktop
2. One-Time Authentication Setup
Important: For security and MFA support, authentication is done outside of Claude Desktop.
Open Terminal and run:
Follow the prompts:
- Enter your Monarch Money email and password
- Provide 2FA code if you have MFA enabled
- Session will be saved automatically
3. Start Using in Claude Desktop
Once authenticated, use these tools directly in Claude Desktop:
get_accounts
- View all your financial accountsget_transactions
- Recent transactions with filteringget_budgets
- Budget information and spendingget_cashflow
- Income/expense analysis
✨ Features
📊 Account Management
- Get Accounts: View all linked financial accounts with balances and institution info
- Get Account Holdings: See securities and investments in investment accounts
- Refresh Accounts: Request real-time data updates from financial institutions
💰 Transaction Access
- Get Transactions: Fetch transaction data with filtering by date, account, and pagination
- Create Transaction: Add new transactions to accounts
- Update Transaction: Modify existing transactions (amount, description, category, date)
📈 Financial Analysis
- Get Budgets: Access budget information including spent amounts and remaining balances
- Get Cashflow: Analyze financial cashflow over specified date ranges with income/expense breakdowns
🔐 Secure Authentication
- One-Time Setup: Authenticate once, use for weeks/months
- MFA Support: Full support for two-factor authentication
- Session Persistence: No need to re-authenticate frequently
- Secure: Credentials never pass through Claude Desktop
🛠️ Available Tools
Tool | Description | Parameters |
---|---|---|
setup_authentication | Get setup instructions | None |
check_auth_status | Check authentication status | None |
get_accounts | Get all financial accounts | None |
get_transactions | Get transactions with filtering | limit , offset , start_date , end_date , account_id |
get_budgets | Get budget information | None |
get_cashflow | Get cashflow analysis | start_date , end_date |
get_account_holdings | Get investment holdings | account_id |
create_transaction | Create new transaction | account_id , amount , description , date , category_id , merchant_name |
update_transaction | Update existing transaction | transaction_id , amount , description , category_id , date |
refresh_accounts | Request account data refresh | None |
📝 Usage Examples
View Your Accounts
Get Recent Transactions
Check Spending vs Budget
Analyze Cash Flow
📅 Date Formats
- All dates should be in
YYYY-MM-DD
format (e.g., "2024-01-15") - Transaction amounts: positive for income, negative for expenses
🔧 Troubleshooting
Authentication Issues
If you see "Authentication needed" errors:
- Run the setup command:
cd /path/to/your/monarch-mcp-server && python login_setup.py
- Restart Claude Desktop
- Try using a tool like
get_accounts
Session Expired
Sessions last for weeks, but if expired:
- Run the same setup command again
- Enter your credentials and 2FA code
- Session will be refreshed automatically
Common Error Messages
- "No valid session found": Run
login_setup.py
- "Invalid account ID": Use
get_accounts
to see valid account IDs - "Date format error": Use YYYY-MM-DD format for dates
🏗️ Technical Details
Project Structure
Session Management
- Sessions are stored securely in
.mm/mm_session.pickle
- Automatic session discovery and loading
- Sessions persist across Claude Desktop restarts
- No need for frequent re-authentication
Security Features
- Credentials never transmitted through Claude Desktop
- MFA/2FA fully supported
- Session files are encrypted
- Authentication handled in secure terminal environment
🙏 Acknowledgments
This MCP server is built on top of the excellent MonarchMoney Python library created by @hammem. Their library provides the robust foundation that makes this integration possible, including:
- Secure authentication with MFA support
- Comprehensive API coverage for Monarch Money
- Session management and persistence
- Well-documented and maintained codebase
Thank you to @hammem for creating and maintaining this essential library!
📄 License
MIT License
🆘 Support
For issues:
- Check authentication with
check_auth_status
- Run the setup command again:
cd /path/to/your/monarch-mcp-server && python login_setup.py
- Check error logs for detailed messages
- Ensure Monarch Money service is accessible
🔄 Updates
To update the server:
- Pull latest changes from repository
- Restart Claude Desktop
- Re-run authentication if needed:
python login_setup.py
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
MCP Server for Monarch Money, utilizing an unofficial api.
Related MCP Servers
- TypeScriptMIT License
- -securityAlicense-qualityMCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.Last updated -43TypeScriptMIT License
- AsecurityFlicenseAqualityA MCP Server used to collect MCP Servers over the internet.Last updated -318Python
- -securityAlicense-qualityMCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.Last updated -132TypeScriptMIT License