Quicken Mac DataSAFE
MCP server providing read-only access to Quicken For Mac financial data via Claude
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
[](https://www.npmjs.com/package/quicken-mac-mcp) [](https://opensource.org/licenses/MIT) [](https://github.com/dweekly/quicken-mac-mcp/releases) [](https://github.com/dweekly/quicken-mac-mcp) [](https://registry.modelcontextprotocol.io)
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
63e32cc048e5OBSERVED · 2026-10-08Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.
claude mcp add quicken-mac-mcp -- npx -y [email protected]
Exposed tools (9)
8 read · 1 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
list_accounts | read | List all Quicken accounts with name, type, and active/closed status. Optionally filter by account type (case-insensitive). |
list_categories | read | List all Quicken category tags with their parent category hierarchy. Categories classify transactions (e.g., Food & Dining > Groceries). |
list_portfolio | read | 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. |
query_transactions | read | 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. |
raw_query | write | 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. |
search_payees | read | Search payees by name (case-insensitive LIKE match). Returns payee name and total transaction count, sorted by frequency. |
spending_by_category | read | 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_time | read | 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. |
test_tool | read | Mock tool for parsing tests |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (3 observation(s))
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (6)
.nojekyll
import { detectQuickenDb } from "../../db.js";import { isoToCoreData } from "../../db.js";const SCRIPT = resolve(__dirname, "../../scripts/report-live-test-status.mjs");
@modelcontextprotocol/sdk, better-sqlite3, @anthropic-ai/mcpb, @emnapi/core, @emnapi/runtime, @eslint/js, @types/better-sqlite3, @types/node
quicken-mac-mcp.mcpb
Gates applied: no_behavioural_pass.
63e32cc048e5full audit observations/trust-audit/mcp-server/dweekly__quicken-mac-data.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 63e32cc048e5 | SAFE | B | 89 | first audit |
Questions
What is the Quicken Mac Data MCP server?
MCP server providing read-only access to Quicken For Mac financial data via Claude
What tools does Quicken Mac Data expose?
9 in total: 8 read-only, 1 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Quicken Mac Data safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does Quicken Mac Data need?
No credential environment variables were found in its source, so it appears to need none.
How does Quicken Mac Data run?
It speaks stdio, so it runs as a local process your client starts. It is published on npm as quicken-mac-mcp at 1.6.0.
How current is this page?
The grade is for one exact copy of the source (63e32cc048e5), read on 2026-10-08. The repository is watched and re-audited when it changes.