Monarch Money for your AI assistant.
Search and bulk-edit transactions, compare spending across months, and get a financial overview in one call.
Run the PyPI release without cloning:
uvx monarch-mcp-jamiew
Uses unofficial API access with full account access, including writes. Runs locally; requested data goes to your MCP client. Protect credentials, session tokens, and logs.
28 tools in the source checkout·Structured output·Read and write access
What this fork adds
Search, bulk edits, spending analysis, splits, and recurring tools beyond the original server. Unlike the original and the enhanced Python fork, it also offers the MCP features below. Other forks overlap on financial tools.
Structured output
Typed results with outputSchema and a text fallback for older clients.
Resources & templates
Accounts, categories, and institutions as resources, with per-account holdings and history templates.
Guided prompts
Spending analysis, budget review, financial health, and categorization prompts with argument completion.
Natural-language dates
Use dates such as "last month", "30 days ago", and "this year".
Tool annotations
Read/write labels help clients distinguish queries from changes. They are not access controls.
Less data to process
Compact records and combined queries
Compact output
Compact transactions and categories by default. Set verbose=True for full details.
One-call overview
get_complete_financial_overview combines accounts, budgets, cashflow, transactions, and categories. Batch analysis reports progress.
Available tools
These tools are included in
0.5.2.
Run uvx monarch-mcp-jamiew through your MCP client.
Accounts & Transactions
- Natural language dates: "last month", "30 days ago", "this year"
- Compact records by default; verbose mode for full details
- Pagination with limit and offset
next_offset to continue or verbose=True for full details.Search & Edits
owner_user_id sets Shared; omitted/null preserves ownership.Investment & Banking
account_id).next_offset to continue.Planning & Budgets
get_transactions(is_recurring=True) for posted history. Do not count forecasts and matched transactions twice; isPast does not mean paid.stream.merchant.id and the current merchant name. Omitted settings stay unchanged; use Monarch's frequency and signed amount. This does not cancel subscriptions, move money, or create posted transactions.Spending Analysis
verbose=True for full sections. Transaction samples are capped at 500; check batch_metadata.transactions_truncated.- All accounts with current balances
- Transaction totals for the period's sample
- Budget status and performance
- Cashflow analysis (income vs expenses)
- Transaction and category details in verbose mode
batch_metadata.transactions_truncated.- Monthly spending trends by category
- Account usage patterns
- Compact budget totals; full details with
verbose=True - Average-based spending forecasts (optional)
Install the server
Run uvx monarch-mcp-jamiew through your local stdio MCP client
Install uv.
Provide your Monarch email and password, plus
MONARCH_MFA_SECRET for TOTP-based 2FA.
Add the monarch-money entry below to mcpServers in
claude_desktop_config.json (~/Library/Application Support/Claude/
on macOS, %APPDATA%\Claude\ on Windows), then restart Claude:
{
"mcpServers": {
"monarch-money": {
"command": "uvx",
"args": ["monarch-mcp-jamiew"],
"env": {
"MONARCH_EMAIL": "your-email@example.com",
"MONARCH_PASSWORD": "your-password",
"MONARCH_MFA_SECRET": "your-mfa-secret-key"
}
}
}
}
claude mcp add monarch-money \ -e MONARCH_EMAIL=your-email@example.com \ -e MONARCH_PASSWORD=your-password \ -e MONARCH_MFA_SECRET=your-mfa-secret-key \ -- uvx monarch-mcp-jamiew
codex mcp add monarch-money \ --env MONARCH_EMAIL=your-email@example.com \ --env MONARCH_PASSWORD=your-password \ --env MONARCH_MFA_SECRET=your-mfa-secret-key \ -- uvx monarch-mcp-jamiew
Use your client's local stdio setup. The CLI examples above can save credentials in shell history; edit a protected config file directly to avoid that.
.mcp.json: save the standard config in your project root for Claude Code's project scope. Do not commit credentials.- OpenClaw: add the server to
~/.openclaw/openclaw.jsonundermcpServers, then restart the gateway. - Hermes: configure
~/.hermes/config.yamlundermcp_servers:in YAML, then run/reload-mcp. See the README example. - Cursor · VS Code · Windsurf · Cline · Zed: follow the client's instructions for the command, arguments, and environment variables. Config keys and file locations differ.
"Install the Monarch Money MCP server from github.com/jamiew/monarch-mcp. The PyPI package runs via uvx monarch-mcp-jamiew and needs MONARCH_EMAIL, MONARCH_PASSWORD, and MONARCH_MFA_SECRET for TOTP-based 2FA."
🔑 Getting your MFA secret
1. Enable 2FA in Monarch Money settings
2. Click "Can't scan?" when shown the QR code
3. Copy the TOTP secret key, not the rotating six-digit code
4. Use this as your MONARCH_MFA_SECRET
Example prompts after setup:
"Show me my account balances" "Get all transactions from last month" "Analyze my spending patterns for the last 3 months" "What's my complete financial overview for this quarter?"
Credits
Built on open source tools
MCP Server
Author: Jamie Dubs · @jamiew
FastMCP rewrite of @colvint's server, with analysis tools and structured output.
View repository →MonarchMoney Library
Author: @bradleyseanf
The monarchmoneycommunity fork that provides API access to Monarch Money,
descended from @hammem's original library.
Model Context Protocol
By: Anthropic
Open protocol for connecting AI assistants to external data sources.
Learn more →Monarch Money
Service: Financial management
Platform for tracking accounts, budgets, and investments.
Visit Monarch Money →