Monarch Money MCP Server

Monarch Money MCP Server

An MCP server that integrates with Monarch Money to provide financial data access and operations, including account management, transaction filtering, budget analysis, and goal tracking through natural language.

Category
访问服务器

README

Monarch Money MCP Server

An MCP (Model Context Protocol) server that provides access to Monarch Money financial data and operations.

Features

  • Account Management: List and retrieve account information
  • Transaction Operations: Get transactions with filtering by date range, accounts, and categories
  • Budget Analysis: Access budget data and spending insights
  • Category Management: List and manage transaction categories
  • Goal Tracking: Access financial goals and progress
  • Net Worth Tracking: Retrieve net worth snapshots over time

Installation

  1. Clone or download this MCP server
  2. Install dependencies:
    cd /path/to/monarch-money-mcp
    uv sync
    

Configuration

Add the server to your .mcp.json configuration file:

{
  "mcpServers": {
    "monarch-money": {
      "command": "/path/to/uv",
      "args": [
        "--directory", 
        "/path/to/monarch-money-mcp",
        "run",
        "python",
        "server.py"
      ],
      "env": {
        "MONARCH_EMAIL": "your-email@example.com",
        "MONARCH_PASSWORD": "your-password",
        "MONARCH_MFA_SECRET": "your-mfa-secret-key"
      }
    }
  }
}

Important Notes:

  • Replace /path/to/uv with the full path to your uv executable (find it with which uv)
  • Replace /path/to/monarch-money-mcp with the absolute path to this server directory
  • Use absolute paths, not relative paths
  • Do not keep server.py running manually in an interactive terminal. This MCP server is stdio-only and should be spawned by your MCP client over pipes.
  • Interactive launches now refuse to start by default to avoid duplicate long-lived Python processes and EDR false positives.
  • If you intentionally need a one-off manual launch for debugging, set MONARCH_ALLOW_INTERACTIVE_SERVER=1.

Getting Your MFA Secret

  1. Go to Monarch Money settings and enable 2FA
  2. When shown the QR code, look for the "Can't scan?" or "Enter manually" option
  3. Copy the secret key (it will be a string like T5SPVJIBRNPNNINFSH5W7RFVF2XYADYX)
  4. Use this as your MONARCH_MFA_SECRET

Available Tools

get_accounts

List all accounts with their balances and details.

get_transactions

Get transactions with optional filtering:

  • start_date: Filter transactions from this date (YYYY-MM-DD)
  • end_date: Filter transactions to this date (YYYY-MM-DD)
  • account_ids: List of account IDs to filter by
  • category_ids: List of category IDs to filter by
  • limit: Maximum number of transactions to return

get_categories

List all transaction categories.

get_budgets

Get budget information and spending analysis.

get_goals

List financial goals and their progress.

get_cashflow

Get cashflow data for income and expense analysis.

get_investments

Get investment account details and performance.

get_net_worth

Get net worth snapshots over time.

Usage Examples

Basic Account Information

Use the get_accounts tool to see all my accounts and their current balances.

Transaction Analysis

Get all transactions from January 2024 using get_transactions with start_date "2024-01-01" and end_date "2024-01-31".

Rule Candidate Analysis

Use the CLI: uv run python -m monarch.sync rule-candidates --months 6

Review Resolution

Use the CLI: uv run python -m monarch.update resolve-review
Use the CLI: uv run python -m monarch.update bulk-categorize OpenAI "AI & Infra" --months 18 --exact --negative-only --yes

Daily Dashboard

Use the CLI: uv run python -m monarch.sync dashboard

Scheduled Maintenance

Use the CLI: uv run python -m monarch.maintain --dry-run
Use the CLI: uv run python -m monarch.maintain --refresh
Use the CLI: uv run python -m monarch.maintain --json
Use the CLI: uv run python -m monarch.scheduler install-launchd --hour 9 --minute 0
Use the CLI: uv run python -m monarch.scheduler status
Use the CLI: uv run python -m monarch.scheduler run-job --dry-run
Use the CLI: uv run python -m monarch.scheduler uninstall-launchd
Use the CLI: uv run python -m monarch.codex_audit run-agent
Use the CLI: uv run python -m monarch.codex_audit install-launchd --weekday 1 --hour 12 --minute 0
Use the CLI: uv run python -m monarch.codex_audit status
Use the CLI: uv run python -m monarch.codex_audit uninstall-launchd

Repo Policy Overrides

Edit monarch-policies.json to encode merchant exceptions that should not become broad Monarch rules.
Example: a one-off merchant gift purchase can map to Gifts in the scheduler without creating a permanent in-app merchant rule.

Rule Management

Use the CLI: uv run python -m monarch.rules list
Use the CLI: uv run python -m monarch.rules preview --merchant "Target" --category Shopping
Use the CLI: uv run python -m monarch.rules update RULE_ID --category Shopping --dry-run

Category Management

Use the CLI: uv run python -m monarch.categories list --group Business
Use the CLI: uv run python -m monarch.categories create --group Business --name "AI & Infra" --icon "🤖" --budget 250 --future

Budget Tracking

Show me my current budget status using the get_budgets tool.

Session Management

The server automatically manages authentication sessions:

  • Sessions are cached in a .mm directory for faster subsequent logins
  • The session cache is automatically created and managed
  • Use MONARCH_FORCE_LOGIN=true in the env section to force a fresh login if needed

Troubleshooting

MFA Issues

  • Ensure your MFA secret is correct and properly formatted
  • Try setting MONARCH_FORCE_LOGIN=true in your .mcp.json env section
  • Check that your system time is accurate (required for TOTP)

Connection Issues

  • Verify your email and password are correct in .mcp.json
  • Check your internet connection
  • If you need a one-off manual debug launch, explicitly allow it:
    MONARCH_ALLOW_INTERACTIVE_SERVER=1 uv run server.py
    

Session Problems

  • Delete the .mm directory to clear cached sessions
  • Set MONARCH_FORCE_LOGIN=true in your .mcp.json env section temporarily

launchd Automation

  • The local scheduler writes summaries to ~/Library/Application Support/monarch-money-mcp/maintain/
  • The latest human-readable successful summary is ~/Library/Application Support/monarch-money-mcp/maintain/latest-summary.txt
  • The latest machine-readable successful summary is ~/Library/Application Support/monarch-money-mcp/maintain/latest-summary.json
  • The latest failure artifacts are ~/Library/Application Support/monarch-money-mcp/maintain/latest-error.txt and latest-error.json
  • stdout and stderr logs live in ~/Library/Logs/monarch-money-mcp/
  • Both automation surfaces prune old run artifacts and trim logs so they do not grow without bound
  • Install the LaunchAgent with:
    uv run python -m monarch.scheduler install-launchd --hour 9 --minute 0
    

Codex Audit Automation

  • The weekly engineering agent writes artifacts to ~/Library/Application Support/monarch-money-mcp/codex-audit/
  • It is allowed to improve repo code, but not to mutate live Monarch data
  • Its structured prompt lives in automation/codex-audit-prompt.md
  • Its output contract lives in automation/codex-audit-output.schema.json
  • Install it for Monday noon with:
    uv run python -m monarch.codex_audit install-launchd --weekday 1 --hour 12 --minute 0
    
  • status now reports an explicit health line so stale or failing automation is easier to spot

Credits

MCP Server

  • Author: Taurus Colvin (@colvint)
  • Description: MCP (Model Context Protocol) server wrapper for Monarch Money

MonarchMoney Python Library

This MCP server wraps the monarchmoney Python library to provide seamless integration with AI assistants through the Model Context Protocol.

Security Notes

  • Keep your credentials secure in your .mcp.json file
  • The MFA secret provides full access to your account - treat it like a password
  • Session files in .mm directory contain authentication tokens - keep them secure
  • Consider restricting access to your .mcp.json file since it contains sensitive credentials

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选