Skip to main content
Glama
Quicken Mac MCP

Quicken Mac MCP

by dweekly

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
QUICKEN_DB_PATHNoPath to the Quicken database file (usually the 'data' file inside a .quicken bundle). If not provided, the server auto-detects the most recently modified .quicken bundle in ~/Documents.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

You have read-only access to the user's Quicken For Mac financial data. This server only works on macOS — Quicken For Mac stores data in a Core Data SQLite database inside a .quicken bundle (the data file).

Tool selection guide

  • Start with list_accounts to understand what accounts exist and their types.

  • Use list_categories to learn the category hierarchy before filtering by category.

  • For specific transactions, use query_transactions with date/amount/payee/category filters.

  • For spending analysis, prefer spending_by_category or spending_over_time over raw queries — they handle the category joins and date bucketing correctly.

  • Use search_payees to find the exact payee name before filtering transactions (payee names in Quicken are often different from what users expect).

  • Use list_portfolio for investment holdings (uses stored Quicken quotes for prices).

  • Use raw_query only when the other tools can't answer the question. The database uses Core Data schema — tables are prefixed with Z and columns with Z.

Important conventions

  • All dates are ISO 8601 (YYYY-MM-DD). The server handles Core Data epoch conversion.

  • Amounts are signed: negative = expense/debit, positive = income/credit.

  • Account types are case-insensitive. Common types: checking, creditcard, savings, mortgage, retirementira, asset, liability, loan.

  • spending_by_category and spending_over_time default to checking + creditcard accounts only. Include other types explicitly if the user asks about all spending.

  • Those spending tools include negative splits only, exclude transfers and report-excluded transactions, and preserve uncategorized spending as (Uncategorized). State that scope when reporting results.

  • query_transactions returns one row per split entry — a single transaction may produce multiple rows if split across categories.

Prerequisites

  • Quicken For Mac should be open. Depending on the install, Quicken may swap the database for an encrypted stub when the app is closed; other installs leave the file readable. The ZACCOUNT table check is the test.

  • If a tool returns 'no such table' and Quicken is not running, offer to launch it for the user with: open -a 'Quicken'

  • After launching Quicken, wait a few seconds for it to open the database, then retry the tool call.

Database auto-detection

  • If QUICKEN_DB_PATH is not set, the server auto-detects only when exactly one .quicken bundle exists across ~/Documents, ~/Library/Application Support/Quicken*/Documents (the retail default) and the Mac App Store container.

  • If the user has multiple Quicken files, the server refuses to guess and reports how many it found in each location. Instruct them to set QUICKEN_DB_PATH explicitly: claude mcp add quicken -e QUICKEN_DB_PATH=/path/to/YourFile.quicken/data -- npx -y quicken-mac-mcp

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_accountsA

List all Quicken accounts with name, type, and active/closed status. Optionally filter by account type (case-insensitive).

list_categoriesB

List all Quicken category tags with their parent category hierarchy. Categories classify transactions (e.g., Food & Dining > Groceries).

query_transactionsB

Query Quicken transactions with flexible filters. Returns one row per split entry — a single transaction may appear multiple times if it has multiple category splits.

spending_by_categoryA

Aggregate consumer spending (negative splits) by category for an inclusive date range. Excludes transfers and report-excluded transactions, preserves an (Uncategorized) bucket, and defaults to checking + credit-card accounts.

spending_over_timeA

Monthly consumer-spending totals (negative splits) for an inclusive date range, optionally by parent category. Excludes transfers and report-excluded transactions, labels uncategorized rows when grouped, and defaults to checking + credit-card accounts.

search_payeesB

Search payees by name (case-insensitive LIKE match). Returns payee name and total transaction count, sorted by frequency.

list_portfolioA

List current investment holdings across all brokerage/retirement accounts. Shows shares, cost basis, and enriches with stored Quicken quotes to compute market value and gain/loss. Positions with a negative share count are included: a short position, or shares removed with no recorded purchase. Includes the security's currency when the Quicken file records one.

raw_queryA

Execute an arbitrary read-only SQL query against the Quicken database. Only SELECT statements are allowed. Results limited to 500 rows. Use this for custom analysis not covered by other tools.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 8 tools

Disambiguation5/5

Each tool targets a distinct resource or analysis mode: account listing, category listing, raw transaction rows, two non-overlapping spending aggregations (by category vs. over time), payee search, and portfolio holdings. raw_query overlaps with everything but is explicitly framed as the escape hatch for custom analysis, which is clear rather than confusing.

Naming Consistency4/5

Most tools follow a verb_noun pattern (list_accounts, list_categories, query_transactions, search_payees, list_portfolio), but the two spending_* tools start with a gerund/noun phrase and raw_query is adjective_noun, breaking the pattern. Still readable and semantically predictable.

Tool Count5/5

Eight tools is well-scoped for a read-only personal-finance analysis server; each tool covers a distinct layer (accounts, categories, transactions, aggregation, payees, investments, escape hatch) with no filler.

Completeness4/5

Core read-only workflows (accounts, categories, transactions, spending aggregates, payees, holdings) are covered, but account balances/net-worth summaries and budget or scheduled-transaction views are absent. raw_query lets agents work around these gaps, so it is not a dead end.

Maintenance

ActivityMaintained
ResponsivenessMostly unanswered