ZenMoney
NPM · MCP-SERVER-ZENMONEY
ZenMoney (Дзен-мани) finance for AI agents: transactions, reports, budgets, debts
Available components
Last scanned (2 hours ago)
Scores higher than 59% of npm servers
Category Finance and Payments
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 0 of 6 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency48
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 15 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability84
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2762 tokens (~125/item across 22 items; 22 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management53
- Stability observed for 16 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage90
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 70% of tool parameters carry a description.Partial
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 23 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 15 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.
- 13 Oct 26 +6
- Stability: unverified → 0.40 ▲ functional
- 2 Oct 26 +15
- Malware scan: unverified → pass ▲ security
- 1 Oct 26 57
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 17 Oct 2026 · Analysed npm/mcp-server-zenmoney@1.0.0
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 6 packages
| Packages resolved | 6 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
adjust_account_balance Reconcile account balance ~94
Make an account balance match reality by recording the difference as an income or expense correction transaction (computed against freshly synced data).
| Name | Type | Req | Description |
|---|---|---|---|
| account | string | yes | Account name, id or card last digits |
| actual_balance | number | yes | The real current balance in the account's currency |
| category | string | – | Optional category for the correction |
| comment | string | – | – |
| date | string | – | Defaults to today |
No output schema declared.
No examples provided.
create_account Create account ~111
Create a cash, card, checking or e-money account. Bank-synced accounts are created by ZenMoney itself.
| Name | Type | Req | Description |
|---|---|---|---|
| balance | number | – | Opening balance |
| credit_limit | number | – | – |
| currency | string | – | ISO code; defaults to the main currency |
| in_balance | boolean | – | Count in the total balance and reports |
| savings | boolean | – | – |
| title | string | yes | – |
| type | string | – | cash, ccard (card), checking, emoney |
No output schema declared.
No examples provided.
create_category Create category ~85
Create a category, optionally as a subcategory of a top-level category (ZenMoney allows one nesting level).
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | – | Defaults to the parent's kind, else expense |
| parent | string | – | Top-level parent category (name or id) |
| required | boolean | – | Mark as a mandatory (non-discretionary) expense |
| title | string | yes | – |
No output schema declared.
No examples provided.
create_transactions Add transactions ~121
Record one or more transactions (expense, income, transfer between own accounts, debt_out / debt_in with a person). Amounts are positive in the account currency. Without a category, one is picked from this payee's history or ZenMoney suggestions (auto_categorize). Returns the created transactions, updated balances and possible-duplicate warnings.
| Name | Type | Req | Description |
|---|---|---|---|
| auto_categorize | boolean | – | Fill a missing expense/income category from history or ZenMoney suggestions |
| dry_run | boolean | – | Preview the outcome without saving anything |
| transactions | array | yes | – |
No output schema declared.
No examples provided.
delete_category Delete category ~114
Delete a category. Its transactions and planned operations are moved to move_to (merge categories) or, with uncategorize=true, left without this category. Subcategories must be moved or deleted first.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | yes | Category name, path or id |
| dry_run | boolean | – | Preview the outcome without saving anything |
| move_to | string | – | Category that takes over its transactions |
| uncategorize | boolean | – | Confirm removing the category from its transactions and planned operations when move_to is not given |
No output schema declared.
No examples provided.
delete_transactions Delete transactions ~43
Delete transactions by id (soft delete; restore_transactions brings them back).
| Name | Type | Req | Description |
|---|---|---|---|
| dry_run | boolean | – | Preview the outcome without saving anything |
| ids | array | yes | – |
No output schema declared.
No examples provided.
get_budget Monthly budget status ~82
ZenMoney budget for a month: per category budget, actual, remaining, % used and still-planned operations, with subcategories and totals, in the main currency. Uses the profile's month start day. Rollover between months is not modelled.
| Name | Type | Req | Description |
|---|---|---|---|
| month | string | – | YYYY-MM; defaults to the current month |
| side | string | – | – |
No output schema declared.
No examples provided.
get_overview Financial overview ~44
Start here. Returns today's date, the user's main currency, net worth, active account balances, this month's income/expenses with top categories, upcoming planned operations and data freshness.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_accounts List accounts ~100
Accounts with balances, currency, credit limit, bank and flags. balance_main is the balance converted to the main currency. Totals cover in-balance accounts. Debt bookkeeping is in list_debts.
| Name | Type | Req | Description |
|---|---|---|---|
| include_archived | boolean | – | Also return archived accounts |
| search | string | – | Substring of the account name or card number |
| types | array | – | cash, ccard (card), checking, loan, deposit, emoney |
No output schema declared.
No examples provided.
list_categories List categories ~92
Category tree (ZenMoney "tags"; one nesting level) with ids, kind (expense/income/both) and number of uses in the last 12 months. Use names, "Parent / Child" paths or ids elsewhere.
| Name | Type | Req | Description |
|---|---|---|---|
| include_archived | boolean | – | – |
| kind | string | – | Only categories usable for this kind of transaction |
| search | string | – | Substring of the category name |
No output schema declared.
No examples provided.
list_debts Debts by person ~81
Who owes whom: per-person debt balances from debt operations (positive = they owe you, negative = you owe them), per currency and in the main currency. Pass person to also get their debt transactions.
| Name | Type | Req | Description |
|---|---|---|---|
| include_settled | boolean | – | Include people whose debts net to zero |
| person | string | – | Substring of the person name |
No output schema declared.
No examples provided.
list_payees List payees ~63
Known payees/merchants ranked by number of transactions, with last date and the category usually used for them. Useful for consistent categorization and payee spelling.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| search | string | – | Substring of the payee name |
No output schema declared.
No examples provided.
list_planned Planned operations ~92
Scheduled / recurring operations (ZenMoney reminders) that are still planned in a date range, with recurrence, overdue and forecast flags, plus expected expense/income totals.
| Name | Type | Req | Description |
|---|---|---|---|
| date_from | string | – | Defaults to 7 days ago (to surface overdue items) |
| date_to | string | – | Defaults to 30 days ahead |
| include_forecast | boolean | – | Include ZenMoney's auto-generated forecast entries |
No output schema declared.
No examples provided.
list_transactions Search transactions ~393
Find transactions with filters (dates/period, type, accounts, categories incl. subcategories, payee, free text, amount, currency). Newest first by default, paginated. Also returns income/expense totals of all matches in the main currency (in-balance accounts only, like ZenMoney reports), so "how much did I spend on X" needs only this call (or summarize_transactions for breakdowns).
| Name | Type | Req | Description |
|---|---|---|---|
| accounts | array | – | Account names, ids or card last digits; matches money leaving or arriving |
| categories | array | – | Category names, "Parent / Child" paths or ids; subcategories are included |
| currency | string | – | Only transactions in this currency (ISO code) |
| date_from | string | – | Inclusive start date, YYYY-MM-DD |
| date_to | string | – | Inclusive end date, YYYY-MM-DD |
| ids | array | – | Fetch specific transactions by id |
| include_deleted | boolean | – | Include deleted transactions (they can be restored) |
| limit | integer | – | – |
| max_amount | number | – | Maximum amount in the account's currency |
| min_amount | number | – | Minimum amount in the account's currency |
| offset | integer | – | – |
| payee | string | – | Substring of the payee / merchant name |
| period | string | – | Date range relative to today (weeks start on Monday). date_from/date_to override either end. |
| search | string | – | Free text matched against payee, merchant, comment and category names |
| sort | string | – | – |
| types | array | – | Transaction types to include: expense | income | transfer (between own accounts) | debt_out (money given to a person: lending, or repaying them) | debt_in (money received from a person: borrowing, or… |
| uncategorized | boolean | – | Only transactions without a category |
No output schema declared.
No examples provided.
restore_transactions Restore deleted transactions ~56
Bring back deleted transactions (find them with list_transactions include_deleted=true). ZenMoney cannot undelete in place, so each comes back as a copy with a new id; already-restored ones are skipped.
| Name | Type | Req | Description |
|---|---|---|---|
| ids | array | yes | – |
No output schema declared.
No examples provided.
set_budgets Set monthly budgets ~78
Set exact monthly budget amounts (main currency) per category, for "total" (overall monthly budget) or "uncategorized". 0 removes that budget. Batch-friendly: e.g. copy last month's budgets to next month.
| Name | Type | Req | Description |
|---|---|---|---|
| budgets | array | yes | – |
| dry_run | boolean | – | Preview the outcome without saving anything |
No output schema declared.
No examples provided.
suggest_category Suggest category for payees ~49
Category and merchant suggestions for payee names, from ZenMoney's suggestion service and from this user's own history.
| Name | Type | Req | Description |
|---|---|---|---|
| payees | array | yes | Payee names as they appear on a receipt or statement |
No output schema declared.
No examples provided.
summarize_transactions Spending / income report ~401
Aggregate expenses and/or income by category, parent category, payee, account or time (day/week/month/year) with totals, counts and shares. measure=both gives income, expense and net per group (cash flow). Transfers and debts are excluded; amounts are converted with current rates. By default only in-balance accounts count, like ZenMoney reports.
| Name | Type | Req | Description |
|---|---|---|---|
| accounts | array | – | Account names, ids or card last digits; matches money leaving or arriving |
| categories | array | – | Category names, "Parent / Child" paths or ids; subcategories are included |
| currency | string | – | Only transactions in this currency (ISO code) |
| date_from | string | – | Inclusive start date, YYYY-MM-DD |
| date_to | string | – | Inclusive end date, YYYY-MM-DD |
| group_by | string | – | – |
| include_off_balance | boolean | – | Also count accounts excluded from the balance |
| max_amount | number | – | Maximum amount in the account's currency |
| measure | string | – | – |
| min_amount | number | – | Minimum amount in the account's currency |
| payee | string | – | Substring of the payee / merchant name |
| period | string | – | Date range relative to today (weeks start on Monday). date_from/date_to override either end. |
| report_currency | string | – | ISO code to report in; defaults to the main currency |
| search | string | – | Free text matched against payee, merchant, comment and category names |
| top | integer | – | Max groups for non-time groupings; the rest is rolled up |
| types | array | – | Transaction types to include: expense | income | transfer (between own accounts) | debt_out (money given to a person: lending, or repaying them) | debt_in (money received from a person: borrowing, or… |
| uncategorized | boolean | – | Only transactions without a category |
No output schema declared.
No examples provided.
sync Sync with ZenMoney ~43
Pull the latest changes from ZenMoney now (tools already auto-sync when data is older than the configured TTL). full=true re-downloads everything.
| Name | Type | Req | Description |
|---|---|---|---|
| full | boolean | – | – |
No output schema declared.
No examples provided.
update_account Edit account ~92
Rename, archive/unarchive, include in or exclude from balance, mark as savings, or change the credit limit. To fix a balance use adjust_account_balance.
| Name | Type | Req | Description |
|---|---|---|---|
| account | string | yes | Account name, id or card last digits |
| archived | boolean | – | – |
| credit_limit | number | – | – |
| in_balance | boolean | – | – |
| savings | boolean | – | – |
| title | string | – | – |
No output schema declared.
No examples provided.
update_category Edit category ~106
Rename, move (parent null = top level), change kind, budget inclusion, mandatory flag or archive a category.
| Name | Type | Req | Description |
|---|---|---|---|
| archived | boolean | – | – |
| category | string | yes | Category name, path or id |
| include_in_budget | boolean | – | Whether the category counts in budget calculations |
| kind | string | – | – |
| parent | string|null | – | New top-level parent; null makes it top-level |
| required | boolean | – | – |
| title | string | – | – |
No output schema declared.
No examples provided.
update_transactions Edit transactions ~86
Change one or more existing transactions: amount, account, main category (null = uncategorized), payee, comment, date, original currency amount; transfers also to_account / to_amount. The type cannot change (delete and re-create instead). Use list_transactions to find ids.
| Name | Type | Req | Description |
|---|---|---|---|
| dry_run | boolean | – | Preview the outcome without saving anything |
| updates | array | yes | – |
No output schema declared.
No examples provided.
How do I install the ZenMoney MCP server?
ZenMoney runs locally as an npm package, launched with npx -y mcp-server-zenmoney. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · mcp-server-zenmoney
claude mcp add krax1337-mcp-server-zenmoney -- npx -y mcp-server-zenmoney
What is the ZenMoney MCP server?
ZenMoney is an MCP server listed in the public MCP registry as io.github.krax1337/mcp-server-zenmoney. ZenMoney (Дзен-мани) finance for AI agents: transactions, reports, budgets, debts. This page covers its npm package (mcp-server-zenmoney).
Is the ZenMoney MCP server safe to use?
ZenMoney scores 79 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 17 October 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the ZenMoney MCP server expose?
ZenMoney exposes 22 tools: get_overview, list_accounts, list_categories, list_payees, list_transactions, and 17 more. Their descriptions and schemas cost roughly 2,426 tokens of context every time the server is loaded.
Is the ZenMoney MCP server still maintained?
ZenMoney is still listed as active in the MCP registry. We last reached this channel on 17 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the ZenMoney MCP server under?
ZenMoney declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.