by robcerda
MCP Server for use with Monarch Money
# Add to your Claude Code skills
git clone https://github.com/robcerda/monarch-mcp-serverGuides for using mcp servers skills like monarch-mcp-server.
Last scanned: 5/30/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-30T15:28:11.960Z",
"npmAuditRan": true,
"pipAuditRan": false
}No comments yet. Be the first to share your thoughts!
30 days in the Featured rail · terms & refunds
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 and Claude Code.
My MonarchMoney referral: https://www.monarchmoney.com/referral/ufmn0r83yf?r_source=share
Built with the MonarchMoneyCommunity Python library - An actively maintained community fork of the Monarch Money API with full MFA support.
Clone this repository:
git clone https://github.com/robcerda/monarch-mcp-server.git
cd monarch-mcp-server
Install dependencies:
Using pip:
pip install -r requirements.txt
pip install -e .
Using uv (alternative):
uv sync
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
{
"mcpServers": {
"Monarch Money": {
"command": "/opt/homebrew/bin/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"/path/to/your/monarch-mcp-server",
"mcp",
"run",
"/path/to/your/monarch-mcp-server/src/monarch_mcp_server/server.py"
]
}
}
}
Important: Replace /path/to/your/monarch-mcp-server with your actual path!
Restart Claude Desktop
OR
Configure Claude Code (CLI): Add this to your Claude Code configuration file:
Global (all projects):
macOS/Linux: ~/.claude.json
Windows: %USERPROFILE%\.claude.json
{
"mcpServers": {
"Monarch Money": {
"command": "/opt/homebrew/bin/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"/path/to/your/monarch-mcp-server",
"mcp",
"run",
"/path/to/your/monarch-mcp-server/src/monarch_mcp_server/server.py"
]
}
}
}
Project-level (specific directory):
Create .mcp.json in your project directory:
{
"Monarch Money": {
"command": "/opt/homebrew/bin/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"/path/to/your/monarch-mcp-server",
"mcp",
"run",
"/path/to/your/monarch-mcp-server/src/monarch_mcp_server/server.py"
]
}
}
If installed via pip instead of uv, use:
{
"command": "python",
"args": ["/path/to/your/monarch-mcp-server/src/monarch_mcp_server/server.py"]
}
Important: Replace /path/to/your/monarch-mcp-server with your actual path!
Restart Claude Code
Important: For security and MFA support, authentication is done outside of Claude.
Open Terminal and run:
Using python:
cd /path/to/your/monarch-mcp-server
python login_setup.py
Using uv:
cd /path/to/your/monarch-mcp-server
uv run python login_setup.py
Follow the prompts:
Once authenticated, use these tools directly in Claude Desktop or Claude Code:
get_accounts - View all your financial accountsget_transactions - Recent transactions with filteringget_budgets - Budget information and spendingget_cashflow - Income/expense analysismonarch_login_with_token to paste a session token from your browser| 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 and reconciliation fields | limit, offset, start_date, end_date, account_id, account_ids, category_ids, category_group_ids, tag_ids, search, wide_search, search_scan_limit, has_notes, is_split, is_recurring |
get_budgets |
Get budget information | start_date, end_date |
set_budget_amount |
Set budget for a category | amount, category_id, category_group_id, start_date, apply_to_future |
get_cashflow |
Get cashflow analysis | start_date, end_date |
get_net_worth |
Get net worth history | start_date, end_date, account_type |
get_account_balance_history |
Get account balance history | account_id |
get_net_worth_by_account_type |
Get net worth by account type | start_date, timeframe |
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 | account_ids (optional — defaults to all active, visible accounts) |
get_categories |
List all transaction categories | None |
get_category_groups |
List category groups with categories | None |
get_transactions_needing_review |
Get transactions needing review | needs_review, days, uncategorized, no_notes |
| `set_t |