Skip to main content

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

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".

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
  • Try running the server directly to see detailed error messages:
    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

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

Metadata

Release files for iflow-mcp_colvint-monarch-money-mcp 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_colvint-monarch-money-mcp 0.1.0
File Size Uploaded
iflow_mcp_colvint_monarch_money_mcp-0.1.0.tar.gz 6.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_colvint-monarch-money-mcp 0.1.0
File Interpreter ABI Platform
iflow_mcp_colvint_monarch_money_mcp-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 12.8 kB

Release files / iflow_mcp_colvint_monarch_money_mcp-0.1.0.tar.gz

Download URL iflow_mcp_colvint_monarch_money_mcp-0.1.0.tar.gz
Size 6.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f020987546790d17e88f0988799bbcd40ccaa03ec41ec266d53c3f53c4485844
BLAKE2b-256 checksum
How to use checksums
7294391f15ce852e16097e4c8b6b706b5a3356b22b141c840bbfef6361e00029
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_colvint_monarch_money_mcp-0.1.0-py3-none-any.whl

Download URL iflow_mcp_colvint_monarch_money_mcp-0.1.0-py3-none-any.whl
Size 6.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b7ba50946d953e6fe57b6a8c006552076600f218c88be9d027a9822f7fe879ce
BLAKE2b-256 checksum
How to use checksums
9f37c93508dfcc69986b15401ff1b17829c1d6afa8f26a1b15bed835744ab446
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.28 {"installer":{"name":"uv","version":"0.9.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page