io.github.dweekly/quicken-mac-mcp MCP Server
io.github.dweekly/quicken-mac-mcp
Read-only access to Quicken For Mac financial data—query accounts, transactions, spending, and portfolios via Claude or MCP clients.
What is the io.github.dweekly/quicken-mac-mcp MCP server?
The quicken-mac-mcp MCP server gives Claude and other AI agents read-only access to Quicken For Mac financial data stored in a Core Data SQLite database. It exposes eight prepackaged tools to query accounts, transactions, spending by category, investment holdings, and more—with the database always opened read-only so your financial data is never modified.
quicken-mac-mcp bridges your Quicken For Mac financial records to Claude and other MCP clients. Ask Claude about your accounts, transactions, spending trends, investment portfolios, and payees. It works as both a Claude skill (recommended for Claude Code) and an MCP server (for Cursor, Cline, and other clients). Requires Quicken For Mac to be open so the encrypted database can be read.
How to install io.github.dweekly/quicken-mac-mcp
Copy-paste configuration for popular MCP clients.
QUICKEN_DB_PATHPath to Quicken database file (auto-detected if not set)
Tools & capabilities
Tools this server exposes to the agent.
list_accounts— List all accounts with name, type, and active/closed status. Optional type filter.list_categories— List all category tags with parent hierarchy. Filter by expense/income.query_transactions— Query transactions with filters: date range, account types/names, amount range, payee search, category. Returns one row per split entry, with note and split_note memos.spending_by_category— Aggregate negative consumer-spending splits by category, excluding transfers and report-excluded rows and preserving (Uncategorized).spending_over_time— Monthly negative consumer-spending totals with the same exclusions, optionally broken down by category.search_payees— Search payees by name with transaction counts.list_portfolio— List investment holdings with shares, cost basis, and stored Quicken price quotes.raw_query— Run arbitrary SELECT queries (500-row limit).
Use cases
- Ask Claude about your account balances and account types across checking, savings, credit cards, and investment accounts.
- Find and analyze transactions by date range, payee, amount, or category to understand spending patterns.
- View monthly spending trends by category to track budget and identify where your money goes.
- Query investment holdings to see your portfolio composition, shares, cost basis, and current valuations.
- Export your complete financial history to CSV and relational schema.json for analysis in DuckDB, Pandas, PostgreSQL, or other platforms.
io.github.dweekly/quicken-mac-mcp MCP server FAQ
It's an MCP server that gives Claude and other AI agents read-only access to your Quicken For Mac financial data. You can ask Claude about accounts, transactions, spending by category, investment holdings, and more. The database is always opened read-only—your data is never modified.
Yes. quicken-mac-mcp is open-source under the MIT license. You only need Quicken For Mac (a paid Intuit product) to use it.
For Claude Code (recommended): run `claude plugin install quicken-mac-mcp`. For Claude Desktop, either drag the `.mcpb` bundle from the latest GitHub release, or manually add it to `~/Library/Application Support/Claude/claude_desktop_config.json` with the npx command.
Add the MCP server to your client's configuration using `npx -y quicken-mac-mcp`. Set the `QUICKEN_DB_PATH` environment variable if your Quicken file is not in the default `~/Documents` location.
No. It reads your local Quicken For Mac database directly. Quicken For Mac must be open and logged in so the encrypted database can be decrypted and read.
macOS only (Apple Silicon and Intel). Quicken For Mac is required. The server will not work on Windows or Linux.
README (reference)
Source of truth, from the repository.
quicken-mac-mcp
A Claude Skill + MCP server that gives Claude read-only access to your Quicken For Mac financial data. Ask Claude about your accounts, transactions, spending by category, monthly trends, investment holdings, and more.
The database is always opened read-only — your Quicken data is never modified.
Skill or MCP — which do I want?
This repo ships two artifacts that share the same schema knowledge (docs/schema.md):
- Skill (
plugin/skills/quicken/SKILL.md) — teaches Claude to probe and read the Quicken SQLite database directly with Python 3's standard-library SQLite support. Its focusedreferences/cover balances, cash flow, investments, budgets, tags, and QuickFill rules. Works in Claude Code and any other Claude surface that loads skills. No native module install or MCP server process. This is the recommended path. - MCP server — wraps the same SQL recipes as eight prepackaged tools (
list_accounts,query_transactions,spending_by_category, …). Use it when you're working in a non-Claude MCP client (Cursor, Cline, mcp-remote bridges) that can't load skills, or when you'd rather call typed tools than have Claude write SQL.
The Claude Code plugin install (claude plugin install quicken-mac-mcp) bundles both, with the skill leading and the MCP tools available as shortcuts.
Requirements
Quicken For Mac must be open while using either the skill or the MCP. Quicken encrypts its database file when the app is closed — the data is only readable while Quicken is running.
How it works
Quicken For Mac stores data in a Core Data SQLite database inside a .quicken bundle in your Documents folder (e.g., ~/Documents/MyFinances.quicken/data). The skill teaches Claude how to query that database directly; the MCP server is a thin wrapper that exposes eight prepackaged queries as tools.
Install — recommended (Claude Code, plugin)
claude plugin install quicken-mac-mcp
This installs both the /quicken skill (recommended path) and the MCP server. Claude will lead with the skill and fall back to the MCP tools when convenient.
Install — MCP-only paths
Use these if you're in a non-Claude-Code client that can't load skills, or you only want the typed-tool wrapper.
Claude Code (MCP only)
claude mcp add quicken -- npx -y quicken-mac-mcp
Claude Desktop (MCPB drag-and-drop)
Download the bundle for your Mac from the latest GitHub release and drag it into Claude Desktop:
- Apple Silicon:
quicken-mac-mcp-arm64.mcpb - Intel:
quicken-mac-mcp-x64.mcpb
It will prompt you for your database path (or auto-detect it).
Claude Desktop (manual JSON)
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"quicken": {
"command": "npx",
"args": ["-y", "quicken-mac-mcp"]
}
}
}
Restart Claude Desktop and you'll see a hammer icon with 8 tools available.
Custom database path
If you have multiple Quicken files, or your .quicken bundle isn't in ~/Documents, set the QUICKEN_DB_PATH environment variable:
{
"mcpServers": {
"quicken": {
"command": "npx",
"args": ["-y", "quicken-mac-mcp"],
"env": {
"QUICKEN_DB_PATH": "/path/to/YourFile.quicken/data"
}
}
}
}
By default, the server auto-detects your Quicken database only when exactly one .quicken bundle exists in ~/Documents. If multiple bundles exist, it refuses to guess; set QUICKEN_DB_PATH explicitly.
MCP tools
These are the eight prepackaged tools the MCP server exposes. The skill covers the same ground (and more) by writing SQL directly against the database — see plugin/skills/quicken/SKILL.md.
| Tool | Description |
|---|---|
list_accounts | List all accounts with name, type, and active/closed status. Optional type filter. |
list_categories | List all category tags with parent hierarchy. Filter by expense/income. |
query_transactions | Query transactions with filters: date range, account types/names, amount range, payee search, category. Returns one row per split entry, with note (transaction-level) and split_note (per-split) memos. |
spending_by_category | Aggregate negative consumer-spending splits by category, excluding transfers and report-excluded rows and preserving (Uncategorized). |
spending_over_time | Monthly negative consumer-spending totals with the same exclusions, optionally broken down by category. |
search_payees | Search payees by name with transaction counts. |
list_portfolio | List investment holdings with shares, cost basis, and stored Quicken price quotes. |
raw_query | Run arbitrary SELECT queries (500-row limit). |
Self-Documenting Command-Line Interface (qmac)
This project includes a fully featured, self-documenting command-line interface qmac that allows you to query your Quicken SQLite database directly from the terminal without going through an MCP client.
Features:
- Centralized Schema Validation: Arguments are dynamically coerced to correct types (numbers, booleans, arrays) and validated.
- Subcommand Help (
--help/-h): Easily inspect parameter descriptions and types for any subcommand (e.g.qmac spending-by-category --help). - Syntax Error Auto-Help: Providing incorrect syntax or missing required fields outputs a precise error message along with the subcommand's help page.
- Integrated Manual (
qmac man): Renders the complete, stylized UNIX man page guide right in your shell. - Premium ASCII Table Layout: Columns are dynamically auto-sized, numbers are right-aligned, and headers are formatted for supreme clarity. Use
--jsonto get raw data for scripting.
Example Commands:
# General help
qmac --help
# Render stylized manual page
qmac man
# List checking accounts
qmac list-accounts --account-type checking
# Find Costco transactions over $100 in 2024
qmac query-transactions --start-date 2024-01-01 --end-date 2024-12-31 --payee-search costco --max-amount -100
# Get subcategory spending breakdown for Q1 2025
qmac spending-by-category --start-date 2025-01-01 --end-date 2025-03-31 --group-by category
# Display investment portfolio holding valuations
qmac list-portfolio
Example prompts
- "List my accounts"
- "What did I spend on groceries last month?"
- "Show my spending by category for 2024"
- "How has my monthly spending changed over the past year?"
- "Find all transactions from Costco over $100"
- "What are my top 10 payees by transaction count?"
- "Compare my food spending in 2024 vs 2025"
Sovereign Financial Exporter (CSV & relational schema.json)
Want to move your complete personal financial history out of Quicken to your own sovereign, self-hosted, or custom agentic analysis platform?
This project includes a high-speed, zero-dependency, pure Python utility scripts/export_sovereign_csv.py that connects to your unlocked Quicken database and extracts it into a cleanly normalized, portable package.
How to use the exporter:
- Open your Quicken For Mac application and log in so that the database is decrypted.
- In your terminal, execute the export script:
python3 scripts/export_sovereign_csv.py - A new directory
quicken_sovereign_export/will be generated, containing:accounts.csv: Beautifully normalized accounts list (checking, credit, brokerage, retirement, etc.).categories.csv: Income & expense category path structure.payees.csv: Registered merchant names list.transactions.csv: Top-level ledger with post-date, notes, and transaction-level details.transaction_splits.csv: Line-item splits showing amounts and category IDs.holdings.csv: Active investment holdings reconstructed from your individual tax lots with cost basis and unrealized returns.tags.csv: Custom user tags mapped directly to splits.schema.json: Complete relational column and foreign key reference dictionary.README.md: A detailed migration guide demonstrating how to load and query your financial history instantly in DuckDB, Pandas, PostgreSQL, or other databases.
This allows other agentic platforms (like custom GPTs, self-hosted LLMs, or sovereign database agents) to immediately parse, ingest, and analyze your entire financial history.
Database schema
Quicken For Mac uses Core Data with these key tables:
| Table | Purpose |
|---|---|
ZACCOUNT | Bank accounts, credit cards, investment accounts |
ZTRANSACTION | Individual transactions (with ZNOTE transaction-level memo) |
ZCASHFLOWTRANSACTIONENTRY | Split line items — categories AND per-split ZNOTE memos live here |
ZTAG | Category tags with parent hierarchy (Z_ENT looked up at runtime) |
ZUSERPAYEE | Payee names |
Dates use Core Data epoch (seconds since 2001-01-01). The MCP server handles all date conversion automatically — you pass ISO 8601 dates, it returns ISO 8601 dates. The skill recipes show the conversion (+ 978307200) inline so Claude can write SQL directly.
Account types are stored as uppercase strings: CHECKING, CREDITCARD, SAVINGS, MORTGAGE, RETIREMENTIRA, ASSET, LIABILITY, LOAN, etc. The tools accept any casing.
For the full schema reference (84 entities, all tables, indexes, foreign keys, and Core Data write semantics including Z_OPT optimistic locking), see docs/schema.md.
Development
git clone https://github.com/dweekly/quicken-mac-mcp.git
cd quicken-mac-mcp
npm install
npm test # run tests
npm run lint # eslint
npm run format # prettier
npm run dev # run server locally
Set QUICKEN_DB_PATH before npm test if ~/Documents holds more than one .quicken bundle; otherwise the live-schema suites skip.
Known issues and planned work live in ROADMAP.md — open bugs, developer-experience gaps, and deferred dependency upgrades (fresh as of 2026-08-14).
Docker
docker build -t quicken-mac-mcp .
docker run --rm -v ~/Documents/YourFile.quicken:/data:ro quicken-mac-mcp
Contributors
- Manish Mukherjee — fixed dynamic
Z_ENTlookup for CategoryTag (#4), addedaccount_namesfilter and date fallback for imported transactions (#5) - Als-Pal — Quicken ↔ Amazon order matcher gist surfaced that notes live at two levels (
ZTRANSACTION.ZNOTEandZCASHFLOWTRANSACTIONENTRY.ZNOTE) and documented theZ_OPTwrite-back semantics now indocs/schema.md.
Disclaimer
This project is an independent, community-developed open-source tool. It is not an official Intuit product and is not endorsed by, directly affiliated with, maintained by, or sponsored by Intuit Inc. or any of its subsidiaries. "Quicken" is a registered trademark of Intuit Inc. All product and company names are trademarks or registered trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.
This software is provided "as is," without warranty of any kind. The authors and contributors are not responsible for any damage, data loss, or other issues arising from its use. Always back up your financial data before using third-party tools.
License
MIT
Related MCP servers

Let agents drive vim, htop, lazygit: send keys, wait on screen state, read the rendered cell grid.

Tailscale Compute
Run builds, tests, and benchmarks on your own Tailscale compute node.
Search dynamical.org's open STAC catalog of weather & climate datasets (GFS, ECMWF, HRRR).

DC Member API
Read and act on your own Dynamite Circle membership data via the public DC Member API.
[DEPRECATED] AI-powered observability integration for Dynatrace—migrate to dynatrace-for-ai or Dynatrace Remote MCP Server.

