Monarch Money Skill
Query Monarch Money for financial data via CLI wrapper scripts.
Prerequisites
-
Install the library:
pip install monarchmoney -
First-time authentication (interactive, run once):
python3 scripts/login_setup.pyPrompts for email, password, and MFA code if enabled. Saves session to
~/.monarchmoney/mm_session.pickle. Sessions last months.
Commands
All commands output JSON. Pipe through jq for filtering.
Accounts
python3 scripts/monarch.py accounts
Returns: id, displayName, type, subtype, currentBalance, institution, isHidden, includeInNetWorth.
Transactions
# Last 30 days (default)
python3 scripts/monarch.py transactions
# Custom date range
python3 scripts/monarch.py transactions --start 2026-01-01 --end 2026-01-31
# Limit results
python3 scripts/monarch.py transactions --limit 50
Returns: id, date, amount, merchant, category, account, notes, isPending, isRecurring.
Budgets
python3 scripts/monarch.py budgets
Returns: monthlyBudget, totalSpent, per-category breakdown (budgetAmount, spentAmount, remainingAmount).
Cashflow
# Current month
python3 scripts/monarch.py cashflow
# Specific month
python3 scripts/monarch.py cashflow --month 2026-01
Returns: income, expenses, savings, savingsRate for the specified month.
Refresh Accounts
python3 scripts/monarch.py refresh
Triggers a sync with all linked financial institutions.
Troubleshooting
- "Not authenticated" or "Session expired": Delete
~/.monarchmoney/mm_session.pickleand re-runscripts/login_setup.py. - Rate limiting: Monarch Money may throttle rapid requests. Space out queries.
- Import errors: Ensure
monarchmoneyis installed in the Python environment being used.