Copilot Money MCP
The Copilot Money MCP server lets you query and analyze your personal finances locally using AI, reading from the Copilot Money app's cached data on your Mac. It provides read-only access across these areas:
Spending & Transactions
Query transactions with rich filters: date range, category, merchant, amount, account, location (city or lat/lon), tags, and free-text search
Filter by special types: foreign transactions, refunds, credits/cashback, duplicates, HSA-eligible expenses, or tagged transactions
Exclude transfers, deleted, or user-excluded transactions; paginate large result sets
Accounts & Balances
List all accounts (checking, savings, credit, investment) with current balances
Calculate net worth and view balance history with daily, weekly, or monthly granularity
Check bank connection health, last sync timestamps, and error states
Budgets & Categories
Retrieve budgets with spending vs. limit comparisons
Browse categories as a flat list or hierarchical tree with spending totals; search by keyword
Goals
View financial goals (savings, debt payoff, investment) with target amounts, progress, and contributions
Get monthly goal history snapshots including daily data points
Subscriptions & Recurring Charges
Identify recurring/subscription charges with estimated frequency, confidence score, and next expected date
Investments
View holdings with ticker, quantity, price, cost basis, and total return
Retrieve historical price data, stock split history, per-security performance, and time-weighted returns (TWR)
Look up security master data including ISIN/CUSIP identifiers
Cache Management
Check cache metadata (date range, transaction count, cache age)
Manually refresh the in-memory cache; auto-refresh occurs every 5 minutes
Allows querying and analyzing Amazon purchase transactions from personal finance data, including filtering by merchant and date ranges.
Enables setting up Netflix as a monthly recurring charge and managing subscription data within personal finance tracking.
Provides tools to categorize Uber transactions and analyze transportation spending patterns from personal finance data.
Copilot Money MCP Server
Query and manage your personal finances with AI using local Copilot Money data
Disclaimer
This is an independent, community-driven project and is not affiliated with, endorsed by, or associated with Copilot Money or its parent company in any way. This tool was created by an independent developer to enable AI-powered queries of locally cached data. "Copilot Money" is a trademark of its respective owner.
Overview
An MCP server that gives AI assistants access to your Copilot Money personal finance data. It reads from the locally cached Firestore database (LevelDB + Protocol Buffers) on your Mac. Reads are 100% local with zero network requests.
17 read tools across spending, investments, budgets, goals, and more — query transactions, accounts, holdings, balances, categories, recurring charges, budgets, goals, and investment performance.
Privacy First
We never collect, store, or transmit your data to any server operated by this project — we don't have any. See our Privacy Policy for details.
No analytics, telemetry, or tracking of any kind
Reads are fully local — zero network requests
Open source — verify the code yourself
Heads up about AI providers. While this server itself runs locally and never sends your data to any server operated by this project, the AI assistant you connect it to (Claude, ChatGPT, Gemini, etc.) will see your Copilot Money data as part of answering your questions. That means your financial data will be transmitted to and processed by the provider of whichever model you choose — Anthropic, OpenAI, Google, or another third party — subject to that provider's own privacy policy and data retention terms.
By using this MCP server with a hosted AI model, you are knowingly sharing your financial data with that AI provider. Only use this tool if you are comfortable with that trade-off. If you are not, consider waiting for an official Copilot Money integration or using a fully local model.
Quick Start
Prerequisites
Node.js 18+ (comes bundled with Claude Desktop)
Copilot Money (macOS App Store version)
Claude Desktop, Cursor, or any MCP-compatible client
Installation via Claude Desktop
Download the latest
.mcpbbundle from ReleasesDouble-click the
.mcpbfile to install in Claude DesktopRestart Claude Desktop
Start asking questions about your finances!
Installation via npm
npm install -g copilot-money-mcpThen add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"copilot-money": {
"command": "copilot-money-mcp"
}
}
}Installation for Cursor
Install the package globally:
npm install -g copilot-money-mcpOpen Cursor Settings (
Cmd + ,) > Features > MCP ServersAdd the server configuration:
{ "mcpServers": { "copilot-money": { "command": "copilot-money-mcp" } } }
What You Can Do
Spending Analysis
"How much did I spend on dining out last month?"
"Show me all my Amazon purchases in the last 30 days"
"What are my top 5 spending categories this year?"
Uses get_transactions, get_categories with date ranges, text search, and category filters.
Account Overview
"What's my net worth across all accounts?"
"Show me my checking account balance over the past 6 months, monthly"
"Which bank connections need attention?"
Uses get_accounts, get_balance_history, get_connection_status.
Investment Portfolio
"What are my current holdings and total returns?"
"Show me AAPL price history for the past year"
"What's my time-weighted return this quarter?"
Uses get_holdings, get_investment_prices, get_securities, get_investment_performance, get_twr_returns.
Budgets & Goals
"Am I on track with my budgets this month?"
"How is my emergency fund progressing?"
"Show me my goal history over the past 6 months"
Uses get_budgets, get_goals, get_goal_history.
Subscriptions & Recurring
"What subscriptions am I paying for?"
"How much do I spend on recurring charges per month?"
Uses get_recurring_transactions.
Available Tools
Read Tools (17)
Tool | Description |
| Query transactions with filters — date range, category, merchant, amount, account, location, text search, and special types (foreign, refunds, duplicates, HSA-eligible). |
| List all accounts with balances, filter by type (checking, savings, credit, investment). Includes net worth calculation. |
| List categories with transaction counts and spending totals. Supports list, tree, and search views. |
| Identify subscriptions and recurring charges with frequency, cost, and next expected date. |
| Get budgets with spending vs. limit comparisons. |
| Get financial goals with target amounts, progress, and monthly contributions. |
| Monthly progress snapshots for goals with daily data and contribution records. |
| Daily balance snapshots for accounts over time. Supports daily, weekly, or monthly granularity. |
| Current investment holdings with ticker, quantity, price, cost basis, and total return. |
| Historical price data (daily + high-frequency) for stocks, ETFs, mutual funds, and crypto. |
| Stock split history with ratios, dates, and multipliers. |
| Per-security investment performance data. |
| Time-weighted return (TWR) monthly data for investment holdings. |
| Security master data — ticker, name, type, price, and identifiers (ISIN/CUSIP). |
| Bank sync health for linked institutions, including last sync timestamps and errors. |
| Local cache metadata — date range, transaction count, cache age. |
| Reload data from disk. Cache auto-refreshes every 5 minutes. |
Configuration
Cache TTL
The server caches data in memory for 5 minutes. Configure via environment variable:
# Set cache TTL to 10 minutes
COPILOT_CACHE_TTL_MINUTES=10 copilot-money-mcp
# Disable caching (always reload from disk)
COPILOT_CACHE_TTL_MINUTES=0 copilot-money-mcpYou can also refresh manually using the refresh_database tool.
Decode Timeout
For large databases (500MB+), increase the decode timeout (default: 90 seconds):
# Via environment variable
DECODE_TIMEOUT_MS=600000 copilot-money-mcp
# Via CLI flag
copilot-money-mcp --timeout 600000For databases over 1GB, also increase Node.js memory:
{
"mcpServers": {
"copilot-money": {
"command": "node",
"args": [
"--max-old-space-size=4096",
"/path/to/copilot-money-mcp/dist/cli.js",
"--timeout", "600000"
]
}
}
}Supported Date Periods
The period parameter supports these shortcuts:
this_month last_month last_7_days last_30_days last_90_days ytd this_year last_year
Known Limitations
Local Cache Dependency
This server reads from Copilot Money's local Firestore cache, not the cloud. Firestore's offline persistence caches every document the app has ever fetched, so the local database generally contains all transactions, accounts, budgets, goals, and other data you've viewed in the app. The default Firestore cache size is 100 MB (enough for tens of thousands of transactions), and older documents are only evicted via LRU garbage collection if that limit is exceeded.
To maximize cached data: Open the Copilot Money app and browse through your data (transaction history, accounts, budgets) to ensure it has been fetched and cached locally.
Troubleshooting
Database Not Found
If you see "Database not available":
Ensure Copilot Money is installed and has synced data
Check the database location:
~/Library/Containers/com.copilot.production/Data/Library/Application Support/firestore/__FIRAPP_DEFAULT/copilot-production-22904/mainVerify
.ldbfiles exist in the directoryProvide a custom path:
copilot-money-mcp --db-path /path/to/database
Decode Worker Timed Out
If you see "Decode worker timed out":
Increase the timeout:
copilot-money-mcp --timeout 300000(5 minutes)For 1GB+ databases, also increase Node.js memory:
node --max-old-space-size=4096 dist/cli.js --timeout 300000
No Transactions Found
Open the Copilot Money app and wait for sync
The database structure may have changed — open an issue
Contributing
See CONTRIBUTING.md for development setup, architecture, and how to add new tools.
License
MIT License - See LICENSE for details.
Acknowledgments
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ignaciohermosillacornejo/copilot-money-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server