🏦 Monarch Money MCP Server Enhanced
🎉 Claude Desktop Extension - One-Click Installation!
A dynamic MCP (Model Context Protocol) server that automatically exposes all methods from the monarchmoney-enhanced library as MCP tools. Now available as a Claude Desktop Extension for seamless one-click installation!
✨ NEW in v0.11.0: 2-5x performance improvements with intelligent caching, query variants, and request deduplication!
🚀 Performance Optimized: 40-60% reduction in API calls, 60-70% data transfer reduction, 80%+ cache hit rates, and comprehensive real-time monitoring.
Key Features
🎯 One-Click Installation: Install as a Claude Desktop Extension - no configuration files needed!
🔄 Fully Dynamic: Automatically discovers and exposes all MonarchMoney methods as tools
🚀 Auto-Updating: GitHub Actions automatically release new versions with MCPB bundles
📊 Complete API Access: Every method in the library becomes an MCP tool automatically
🛠️ Smart Schema Generation: Automatically generates parameter schemas from method signatures
⚡ Performance Optimized: 2-5x improvements, intelligent caching, query variants, request deduplication, real-time monitoring
💫 User-Friendly Setup: Configure credentials through Claude Desktop's intuitive interface
Automatically Available Features
Since this server dynamically exposes all monarchmoney-enhanced methods, you get access to everything:
- Account Management: Create, update, delete accounts, get balances, history
- Transaction Operations: CRUD operations, categorization, tagging, rules, splits
- Budget Management: Set budgets, analyze spending, track goals
- Category & Tag Management: Create, modify, delete categories and tags
- Institution Management: Manage connected financial institutions
- Recurring Transactions: Track and manage recurring payments
- Investment Tracking: Portfolio holdings, performance data
- Subscription Management: Account details and billing info
- And more...: Any new features added to
monarchmoney-enhancedare instantly available!
Installation
Option 1: 🚀 Claude Desktop Extension (Recommended)
⚡ FASTEST & EASIEST INSTALLATION ⚡
Transform your installation experience from complex manual setup to Chrome extension-style simplicity:
-
Download the Extension: Get the latest
monarch-money-enhanced-0.11.0.mcpbfile from the Releases page -
Install in Claude Desktop: Double-click the
.mcpbfile to automatically install in Claude Desktop -
Configure: Enter your Monarch Money credentials in Claude Desktop settings:
- Email: Your Monarch Money account email
- Password: Your Monarch Money account password
- MFA Secret (optional): Your 2FA secret key if enabled
- Force Login (optional): Force fresh login instead of cached session
-
Enable: Enable the extension in Claude Desktop settings
That's it! 🎉 No manual configuration files, no path setup, no terminal commands required!
Option 2: 🛠️ Manual Installation (Advanced Users)
-
Clone or download this MCP server
-
Install dependencies:
cd /path/to/monarch-money-mcp uv sync
-
Add the server to your
.mcp.jsonconfiguration file:
{
"mcpServers": {
"monarch-money-enhanced": {
"command": "/path/to/uv",
"args": [
"--directory",
"/path/to/monarch-money-mcp-enhanced",
"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/uvwith the full path to youruvexecutable (find it withwhich uv) - Replace
/path/to/monarch-money-mcp-enhancedwith the absolute path to this server directory - Use absolute paths, not relative paths
Getting Your MFA Secret
- Go to Monarch Money settings and enable 2FA
- When shown the QR code, look for the "Can't scan?" or "Enter manually" option
- Copy the secret key (it will be a string like
T5SPVJIBRNPNNINFSH5W7RFVF2XYADYX) - Use this as your
MONARCH_MFA_SECRET
🚀 Performance Optimizations (v0.11.0)
2-5x Performance Improvements
Our latest release delivers significant performance enhancements:
- 40-60% API Call Reduction: Intelligent caching with TTL strategies
- 60-70% Data Transfer Reduction: Query variants (basic/balance/full)
- 80%+ Cache Hit Rates: For static data (categories, account types)
- Request Deduplication: 80% efficiency preventing duplicate calls
- Real-time Monitoring: Performance metrics and cache optimization
Key Optimizations
-
🎯 Query Variants: Choose data detail level to reduce overfetching
basic: Minimal fields for lightweight operationsbalance: Includes balance informationfull: Complete account data (default)
-
📊 Intelligent Caching: Multi-tier TTL strategies
- 2 minutes: Dynamic data (transactions, balances)
- 4 hours: Semi-static data (merchants, institutions)
- 7 days: Static data (categories, account types)
-
⚡ Performance Tools: Built-in monitoring and optimization
get_cache_metrics: Real-time performance insightspreload_cache: Context-aware preloading (dashboard/investments/transactions)
Benchmarks
- Before: 50-100 API calls per session, 100-200KB data transfer
- After: 10-20 API calls per session, 20-40KB data transfer
- Improvement: 2-5x faster typical workflows
How It Works
The server automatically discovers all public methods from the monarchmoney-enhanced library and creates MCP tools for them. This means:
- No Manual Tool Definitions: Methods are discovered at runtime
- Automatic Schema Generation: Parameter types and requirements are inferred from method signatures
- Instant Updates: When
monarchmoney-enhancedadds new methods, they become available immediately - Complete Coverage: Every public method becomes an MCP tool
- Performance Optimized: Automatic caching and optimization without code changes
Available Tools (Dynamic)
Instead of listing specific tools, here's how to see what's available:
- Runtime Discovery: The server lists all available tools when it starts
- Method Coverage: All public methods from
MonarchMoneyclass become tools - Automatic Documentation: Tool descriptions are generated from method docstrings
Example Tools (Auto-Generated)
Some examples of tools that are automatically created:
get_accounts- Retrieve all linked financial accountscreate_transaction- Creates a transaction with the given parameterscreate_transaction_category- Creates a new transaction categoryget_transaction_tags- Get all transaction tagsset_budget_amount- Set budget amount for a categoryget_merchants- Get all merchantsdelete_transaction- Deletes the given transactionget_recurring_transactions- Get all recurring transactionscreate_manual_account- Creates a new manual account- And 90+ more... (automatically updated as the library grows)
New Performance Tools (v0.11.0):
get_cache_metrics- Real-time cache performance insightspreload_cache- Context-aware cache preloading for improved performance
Usage Examples
Creating Transaction Categories
Use create_transaction_category with name "Shared - Telco" to create a new category for shared telecom expenses.
Applying Transaction Rules
Use the transaction management tools to automatically categorize transactions. For example:
- Find transactions containing "Sentris Network LLC"
- Update them to use the "Shared - Telco" category
Performance Monitoring (NEW in v0.11.0)
Monitor and optimize performance with new tools:
- Check cache performance: get_cache_metrics
- Preload cache for dashboard: preload_cache with context "dashboard"
- Use query variants: get_accounts with detail_level "basic" for faster responses
- Monitor API efficiency: Track cache hit rates and API calls saved
Query Optimization Examples (NEW in v0.11.0)
Optimize data fetching with query variants:
- Quick account list: get_accounts with detail_level "basic"
- Account balances: get_accounts with detail_level "balance"
- Full account data: get_accounts with detail_level "full" (default)
- Dashboard view: preload_cache with context "dashboard" for faster loading
Complete Financial Management
Since all MonarchMoney methods are available:
- Create and manage accounts with create_manual_account
- Set up budgets with set_budget_amount
- Tag transactions with set_transaction_tags
- Analyze spending patterns with get_cashflow_summary
- Track investments with get_account_holdings
- Monitor performance with get_cache_metrics
Session Management
The server automatically manages authentication sessions:
- Sessions are cached in a
.mmdirectory for faster subsequent logins - The session cache is automatically created and managed
- Use
MONARCH_FORCE_LOGIN=truein 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=truein your.mcp.jsonenv 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
.mmdirectory to clear cached sessions - Set
MONARCH_FORCE_LOGIN=truein your.mcp.jsonenv section temporarily
Performance Issues (NEW in v0.11.0)
- Check cache performance: Use
get_cache_metricsto see hit rates - If cache hit rate is low, try:
preload_cachewith appropriate context - For faster responses: Use
get_accountswithdetail_level: "basic" - Monitor API usage: Track
api_calls_savedin cache metrics
Auto-Updates
This repository includes GitHub Actions that automatically:
- Monitor Updates: Checks every 6 hours for new
monarchmoney-enhancedreleases - Auto-Release: Creates new releases when the library updates
- Zero Maintenance: No manual intervention needed to get new features
- Dependency Management: Dependabot keeps other dependencies secure
- MCPB Generation: Automatically creates
.mcpbextension bundles for every release - Extension Distribution: Ready-to-install bundles available in GitHub Releases
- Performance Testing: Automated testing validates optimizations and performance improvements
Building MCPB Extensions (For Developers)
If you want to create your own MCPB bundle:
-
Install MCPB CLI:
npm install -g @anthropic-ai/mcpb
-
Generate Bundle:
mcpb pack -
Output: The CLI generates
monarch-money-enhanced-VERSION.mcpbready for distribution
The manifest.json file defines the extension configuration and is automatically used by the MCPB CLI.
Credits
Original MCP Server
- Author: Taurus Colvin (@colvint)
- Repository: https://github.com/colvint/monarch-money-mcp
Enhanced MCP Server
- Enhanced By: Keith Herrington (@keithah)
- Repository: https://github.com/keithah/monarch-money-mcp-enhanced
- Name:
monarch-money-mcp-enhanced - Version: Synchronized with
monarchmoney-enhancedlibrary - Features: Dynamic tool generation, 2-5x performance improvements, auto-updates, complete API coverage, intelligent caching, query variants
MonarchMoney Enhanced Library
- Enhanced By: Keith Herrington (@keithah)
- Repository: https://github.com/keithah/monarchmoney-enhanced
- Description: Enhanced version of the MonarchMoney Python library with additional features
Original MonarchMoney Python Library
- Author: hammem (@hammem)
- Repository: https://github.com/hammem/monarchmoney
- License: MIT License
This dynamic MCP server automatically adapts to library changes, providing seamless integration with AI assistants through the Model Context Protocol.
Security Notes
- Keep your credentials secure in your
.mcp.jsonfile - The MFA secret provides full access to your account - treat it like a password
- Session files in
.mmdirectory contain authentication tokens - keep them secure - Consider restricting access to your
.mcp.jsonfile since it contains sensitive credentials
Metadata
Release files for monarch-money-mcp-enhanced 0.11.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| monarch_money_mcp_enhanced-0.11.6.tar.gz | 13.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| monarch_money_mcp_enhanced-0.11.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.1 kB
Release files / monarch_money_mcp_enhanced-0.11.6.tar.gz
| Download URL | monarch_money_mcp_enhanced-0.11.6.tar.gz |
|---|---|
| Size | 13.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0e347bc68eeed11bc89d99be9ed31ad91d7eaba1791957c5039c11213b32b561
|
|
BLAKE2b-256 checksum How to use checksums |
81423922a632a282455f32c76d0de849b9bd89a8c64bc04de5bf96b90f23bd98
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|
Release files / monarch_money_mcp_enhanced-0.11.6-py3-none-any.whl
| Download URL | monarch_money_mcp_enhanced-0.11.6-py3-none-any.whl |
|---|---|
| Size | 11.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a2457e4ad041c116c9c8cfd1f37387dcaa4c2408699c04fde6cd04abb7559426
|
|
BLAKE2b-256 checksum How to use checksums |
3c6a5677946309ca45e3c69cbfb91d00de322a066cbc872e15f43cb2d3f7630e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.8.22
|