Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Monarch Money

PYPI · MONARCH-MCP · 2 COMPONENTS · SCANNED SEP 20

MCP server for Monarch Money — accounts, transactions, budgets, cashflow, investments, and more

0 this week 0 Trust /100

Recent critical change

CVE-2026-32871 affects this package (4 Aug 2026). See the changelog before you install this server.

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security24
Provenance & Transparency32
Schema Quality & AI Usability58
  • AI-judged instruction clarity (fair).Partial
  • Tool/resource definitions use about 1494 tokens (~55/item across 27 items; 27 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management83
  • Stability observed for 25 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage71
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 0% of tool parameters carry a description.Fail
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 27 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 27 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the Monarch Money MCP server?

Monarch Money runs locally as a PyPI package, launched with uvx monarch-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · monarch-mcp

# add to Claude Code
claude mcp add vargahis-monarch-money -- uvx monarch-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "vargahis-monarch-money": {
      "command": "uvx",
      "args": [
        "monarch-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "vargahis-monarch-money": {
      "command": "uvx",
      "args": [
        "monarch-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add vargahis-monarch-money -- uvx monarch-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "vargahis-monarch-money": {
      "type": "local",
      "command": [
        "uvx",
        "monarch-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add vargahis-monarch-money --command uvx --arg monarch-mcp
# ~/.hermes/config.yaml
mcp_servers:
  vargahis-monarch-money:
    command: "uvx"
    args: ["monarch-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "vargahis-monarch-money": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "monarch-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add vargahis-monarch-money -t stdio -c uvx -a monarch-mcp
// mcp.json
{
  "mcpServers": {
    "vargahis-monarch-money": {
      "command": "uvx",
      "args": [
        "monarch-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 0
    • Stability: pass → 0.80 functional
  • 18 Sept 26 0
    • Stability: 0.97 → pass security
  • 17 Sept 26 0
    • Malware scan: pass → unverified security
  • 16 Sept 26 0
    • Malware scan: unverified → pass security
  • 14 Sept 26 0
    • Malware scan: pass → unverified security
  • 12 Sept 26 0
    • Malware scan: unverified → pass security
    • Stability: pass → 0.80 functional
  • 11 Sept 26 0
    • Malware scan: pass → unverified security
    • Stability: 0.97 → pass security
  • 6 Sept 26 0
    • Security disclosure: unverified → fail functional
    • Dependency health: partial → 0.95 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed pypi/monarch-mcp@0.1.4

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem pypi

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted setuptools.build_meta

Background: Why install scripts are a supply-chain risk →

Vulnerabilities 6 findings
ID CVE Severity Vector Fix available
GHSA-m8x7-r2rg-vh5g CVE-2025-64340 medium CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H yes
GHSA-rww4-4w9c-7733 CVE-2026-27124 high yes
GHSA-vv7q-7jx5-f767 CVE-2026-32871 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H yes
PYSEC-2026-2475 CVE-2025-64340 medium CVSS:3.1/AV:L/AC:H/PR:L/UI:R/S:U/C:H/I:H/A:H yes
PYSEC-2026-2476 CVE-2026-27124 none yes
PYSEC-2026-338 CVE-2026-32871 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 103 packages
Packages resolved 103
Stale 10
No linked repository 3
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 27 exposed · ~1,494 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
check_auth_status ~17

Check if already authenticated with Monarch Money.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

debug_session_loading ~16

Debug keyring session loading issues.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

find_merchant_id_by_name ~114

Find merchant IDs by (partial) name. Searches recent transactions matching ``name`` and returns the distinct merchants seen, with their IDs. Useful before calling ``update_recurring_merchant``: Monarch's mutation operates on a merchant, not a name, so you need the ID. Args: name: Free-text search query (matched against merchant + description). limit: Maximum number of distinct merchants to return.

NameTypeReqDescription
limitinteger
namestringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_account_history ~37

Get historical balance snapshots for an account. Args: account_id: The ID of the account

NameTypeReqDescription
account_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_account_holdings ~39

Get investment holdings for a specific account. Args: account_id: The ID of the investment account

NameTypeReqDescription
account_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_account_snapshots_by_type ~64

Get net value snapshots grouped by account type. Args: start_date: Start date in YYYY-MM-DD format timeframe: Aggregation period - "month" or "year"

NameTypeReqDescription
start_datestringyes
timeframestringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_account_type_options ~22

Get available account types and sub-types for creating manual accounts.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_accounts ~16

Get all financial accounts from Monarch Money.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_aggregate_snapshots ~75

Get daily aggregate net value of all accounts. Args: start_date: Start date in YYYY-MM-DD format end_date: End date in YYYY-MM-DD format account_type: Filter by account type (optional)

NameTypeReqDescription
account_type
end_date
start_date
NameTypeReqDescription
resultstringyes

No examples provided.

get_budgets ~95

Get budget information from Monarch Money. Args: start_date: Start date in YYYY-MM-DD format (default: last month) end_date: End date in YYYY-MM-DD format (default: next month) use_v2_goals: Whether to use v2 goals format (default: True)

NameTypeReqDescription
end_date
start_date
use_v2_goalsboolean
NameTypeReqDescription
resultstringyes

No examples provided.

get_cashflow ~73

Get cashflow analysis from Monarch Money. Args: start_date: Start date in YYYY-MM-DD format (requires end_date; defaults to current month) end_date: End date in YYYY-MM-DD format (requires start_date; defaults to current month)

NameTypeReqDescription
end_date
start_date
NameTypeReqDescription
resultstringyes

No examples provided.

get_cashflow_summary ~91

Get cashflow summary (income, expenses, savings, savings rate). Args: limit: Number of records to retrieve (default: 100) start_date: Start date in YYYY-MM-DD format (requires end_date) end_date: End date in YYYY-MM-DD format (requires start_date)

NameTypeReqDescription
end_date
limitinteger
start_date
NameTypeReqDescription
resultstringyes

No examples provided.

get_credit_history ~17

Get credit score history and related details.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_institutions ~20

Get all connected financial institutions and their connection status.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_recent_account_balances ~44

Get daily balance for all accounts from a start date. Args: start_date: Start date in YYYY-MM-DD format (optional)

NameTypeReqDescription
start_date
NameTypeReqDescription
resultstringyes

No examples provided.

get_recurring_transactions ~63

Get recurring transactions from Monarch Money. Args: start_date: Start date in YYYY-MM-DD format (requires end_date) end_date: End date in YYYY-MM-DD format (requires start_date)

NameTypeReqDescription
end_date
start_date
NameTypeReqDescription
resultstringyes

No examples provided.

get_subscription_details ~17

Get Monarch Money subscription status and details.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_transaction_categories ~17

Get all transaction categories from Monarch Money.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_transaction_category_groups ~19

Get all transaction category groups from Monarch Money.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_transaction_details ~62

Get detailed information about a specific transaction. Args: transaction_id: The ID of the transaction redirect_posted: Whether to redirect to posted transaction (default: True)

NameTypeReqDescription
redirect_postedboolean
transaction_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_transaction_rules ~132

List every transaction rule on the household. Returns each rule flattened to a clean shape: its ``id``, the category it sets, all match criteria (merchant name / original statement / merchant / amount), the actions it applies (tags, merchant rename, goals, splits, review status), and application stats (``recent_application_count``, ``last_applied_at``). Use the ``id`` values with ``update_transaction_rule`` or ``delete_transaction_rule``. Note: Monarch lowercases criteria values, so a rule created to match "Amazon" is stored and returned as "amazon".

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_transaction_splits ~37

Get split information for a transaction. Args: transaction_id: The ID of the transaction

NameTypeReqDescription
transaction_idstringyes
NameTypeReqDescription
resultstringyes

No examples provided.

get_transaction_tags ~17

Get all transaction tags from Monarch Money.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

get_transactions ~328

Get transactions from Monarch Money. Args: limit: Number of transactions to retrieve (default: 100) offset: Number of transactions to skip (default: 0) start_date: Start date in YYYY-MM-DD format (requires end_date) end_date: End date in YYYY-MM-DD format (requires start_date) account_id: Specific account ID to filter by (shorthand for account_ids with one ID) search: Free text search query category_ids: List of category IDs to filter by account_ids: List of account IDs to filter by (cannot use with account_id) tag_ids: List of tag IDs to filter by has_attachments: Filter transactions with/without attachments has_notes: Filter transactions with/without notes hidden_from_reports: Filter transactions hidden/visible in reports is_split: Filter split/unsplit transactions is_recurring: Filter recurring/non-recurring transactions synced_from_institution: Filter synced/manual transactions needs_review: Filter transactions that need review

NameTypeReqDescription
account_id
account_ids
category_ids
end_date
has_attachments
has_notes
hidden_from_reports
is_recurring
is_split
limitinteger
needs_review
offsetinteger
search
start_date
synced_from_institution
tag_ids
NameTypeReqDescription
resultstringyes

No examples provided.

get_transactions_summary ~26

Get aggregate transaction summary (count, sum, avg, max, income, expenses).

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

refresh_accounts ~16

Request account data refresh from financial institutions.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

setup_authentication ~20

Get instructions for setting up secure authentication with Monarch Money.

Input schema present but exposes no named parameters.

NameTypeReqDescription
resultstringyes

No examples provided.

Common questions

What is the Monarch Money MCP server?

Monarch Money is an MCP server listed in the public MCP registry as io.github.vargahis/monarch-money. MCP server for Monarch Money, accounts, transactions, budgets, cashflow, investments, and more. This page covers its PyPI package (monarch-mcp).

What tools does the Monarch Money MCP server expose?

Monarch Money exposes 27 tools: setup_authentication, check_auth_status, debug_session_loading, get_accounts, get_transactions, and 22 more. Their descriptions and schemas cost roughly 1,494 tokens of context every time the server is loaded.

Is the Monarch Money MCP server still maintained?

Monarch Money is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.