monarch-money — Claude Code MCP server: what it does, how to install
Links Monarch Money personal finances to your coding agent. Reads accounts, updates budgets, and tracks cashflow through the service's GraphQL endpoint.
claude mcp add monarch-money -e MONARCH_SESSION_TOKEN=<MONARCH_SESSION_TOKEN> -e MONARCH_PASSWORD=<MONARCH_PASSWORD> -e MONARCH_TOTP=<MONARCH_TOTP> -e MONARCH_EMAIL_OTP=<MONARCH_EMAIL_OTP> -e MONARCH_SESSION_PASSPHRASE=<MONARCH_SESSION_PASSPHRASE> -- npx -y monarch-money-mcp-serverWhat monarch-money does
The server exposes 23 tools split between readonly and manage tiers. It interfaces directly with api.monarch.com/graphql using a minimal internal transport rather than an external library. Through these endpoints, an assistant inspects balances, pulls cashflow details, and reorganizes spending categories or tags.
Session data stays stored locally in ~/.monarch-money-mcp/session.enc under AES-256-GCM encryption. The utility does not take user passwords via prompt arguments. Because Monarch's initial sign-in enforces an email OTP challenge, grabbing MONARCH_SESSION_TOKEN from web DevTools avoids headless startup failures.
Supplying MONARCH_ENABLED_TOOL_GROUPS=readonly locks the assistant out of all mutation tools. You can also specify exact functions with MONARCH_ENABLED_TOOLS or block individual operations via MONARCH_DISABLED_TOOLS.
What it helps with
- inspect account balances alongside investment holdings
- review recent cashflow and categorize transactions
- adjust monthly budget limits and automated rules
- restrict the agent to read-only financial queries
Example prompts for the agent
- Check my current account balances including investment holdings.
- Verify my Monarch Money authentication status.
- List expenses from the past week and update the category on the last grocery run.
How to install monarch-money
Platform CLI
claude mcp add monarch-money -e MONARCH_SESSION_TOKEN=<MONARCH_SESSION_TOKEN> -e MONARCH_PASSWORD=<MONARCH_PASSWORD> -e MONARCH_TOTP=<MONARCH_TOTP> -e MONARCH_EMAIL_OTP=<MONARCH_EMAIL_OTP> -e MONARCH_SESSION_PASSPHRASE=<MONARCH_SESSION_PASSPHRASE> -- npx -y monarch-money-mcp-serverReplace <…> with your own values. 5 more environment variables are in the server README
Platform CLI
codex mcp add monarch-money --env MONARCH_SESSION_TOKEN=<MONARCH_SESSION_TOKEN> --env MONARCH_EMAIL=<MONARCH_EMAIL> --env MONARCH_PASSWORD=<MONARCH_PASSWORD> --env MONARCH_TOTP=<MONARCH_TOTP> --env MONARCH_EMAIL_OTP=<MONARCH_EMAIL_OTP> -- npx -y monarch-money-mcp-serverReplace <…> with your own values. 5 more environment variables are in the server README
Config file
{
"mcpServers": {
"monarch-money": {
"command": "npx",
"args": [
"-y",
"monarch-money-mcp-server"
],
"env": {
"MONARCH_SESSION_TOKEN": "<MONARCH_SESSION_TOKEN>",
"MONARCH_EMAIL": "<MONARCH_EMAIL>",
"MONARCH_PASSWORD": "<MONARCH_PASSWORD>",
"MONARCH_TOTP": "<MONARCH_TOTP>",
"MONARCH_EMAIL_OTP": "<MONARCH_EMAIL_OTP>"
}
}
}
}Replace <…> with your own values. 5 more environment variables are in the server README
Config file
{
"servers": {
"monarch-money": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"monarch-money-mcp-server"
],
"env": {
"MONARCH_SESSION_TOKEN": "<MONARCH_SESSION_TOKEN>",
"MONARCH_EMAIL": "<MONARCH_EMAIL>",
"MONARCH_PASSWORD": "<MONARCH_PASSWORD>",
"MONARCH_TOTP": "<MONARCH_TOTP>",
"MONARCH_EMAIL_OTP": "<MONARCH_EMAIL_OTP>"
}
}
}
}Replace <…> with your own values. 5 more environment variables are in the server README
Platform CLI
gemini mcp add -e MONARCH_SESSION_TOKEN=<MONARCH_SESSION_TOKEN> -e MONARCH_EMAIL=<MONARCH_EMAIL> -e MONARCH_PASSWORD=<MONARCH_PASSWORD> -e MONARCH_TOTP=<MONARCH_TOTP> -e MONARCH_EMAIL_OTP=<MONARCH_EMAIL_OTP> monarch-money npx -y monarch-money-mcp-serverReplace <…> with your own values. 5 more environment variables are in the server README
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about monarch-money
How to install monarch-money in Claude Code?
Run the following command with your environment configuration: `claude mcp add monarch-money -e MONARCH_SESSION_TOKEN=<MONARCH_SESSION_TOKEN> -e MONARCH_PASSWORD=<MONARCH_PASSWORD> -e MONARCH_TOTP=<MONARCH_TOTP> -e MONARCH_EMAIL_OTP=<MONARCH_EMAIL_OTP> -e MONARCH_SESSION_PASSPHRASE=<MONARCH_SESSION_PASSPHRASE> -- npx -y monarch-money-mcp-server`.
What does monarch-money do?
It connects AI assistants to the Monarch Money personal finance platform. The server lets your agent query account balances, net worth, and budgets, or manage transaction metadata.
How do I prevent the model from modifying my financial data?
Set the environment variable MONARCH_ENABLED_TOOL_GROUPS=readonly when configuring the server. This restricts exposure strictly to lookup operations.