zenfinance
Household finance memory, budgets, transactions, and monthly reviews for AI assistants.
От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноТолько чтение
Что умеет
- Get User Context: Start here for Zen requests. Returns saved household context (org IDs, categories, accounts, budgets, currencies, invites) plus the advisor skill — your operating guide for Zen's fam
- Create Org: Create a Zen household/personal org when none exists or the user explicitly needs another one. Caller is owner; returns refreshed workspace context.
- Invite Member: Invite a user by email to an org. Caller must be an owner; DB enforces this. Ask invitee to call get_user_context.
Какие данные видит
Нужен ли аккаунт
Не нужен: сервер работает без входа
Household finance memory, budgets, transactions, and monthly reviews for AI assistants. Give your LLM a financial advisory brain.
Список инструментов сервера (16)
Технические названия из tools/list. Нужны только разработчикам.
| get_user_context | Start here for Zen requests. Returns saved household context (org IDs, categories, accounts, budgets, currencies, invites) plus the advisor skill — your operating guide for Zen's family-office mission and how to advise well. |
| create_org | Create a Zen household/personal org when none exists or the user explicitly needs another one. Caller is owner; returns refreshed workspace context. |
| invite_member | Invite a user by email to an org. Caller must be an owner; DB enforces this. Ask invitee to call get_user_context. |
| respond_invitation | Accept or deny a pending invitation from get_user_context.invites. Accept creates a named member with role member. |
| save_transaction | Persist income/expense lines as saved Zen data. Use after reading a user-provided statement, PDF, or described transactions — not to correct existing rows (use edit_transaction for that, or delete + recreate for direction flips). Groups lines under one operation; cashflow is attributed to operation_date month, not today. Send whole statements in one call with expected_count set; the response lists saved and not_saved rows — if ok is false, check not_saved, fix ONLY those rows, and resend ONLY them. Rows in saved are already persisted: never resend them. |
| get_transactions | Read saved Zen transaction lines for one org/date range. Use before analysis and before fixing user-reported wrong data, and to verify an import right after save_transaction (compare the saved month against the source document); results are mapped so far, not complete financial truth. |
| edit_transaction | Edit one or more saved Zen transactions in a single call. Accepts a list of up to 500 edits — each item targets one transaction by ID and specifies date, amount, category (slug or UUID), description, counterparty, and/or tags. Useful after bad imports where many rows need the same correction. Each edit is committed independently (partial success is possible) — the results array states the outcome per item; retry only items with ok=false. For income<->expense direction flip, delete the wrong row and save a new one. tags: null=no change, []=clear all tags, [name,...]=replace all tags. |
| delete_transaction | Delete one or more saved Zen transactions in a single call. Accepts up to 500 transaction IDs. Useful for removing an entire duplicated statement import. Each deletion is committed independently (partial success is possible). Use before recreating when expense/income direction is wrong. |
| create_transaction_category | Create a household-specific transaction category. Check list_transaction_categories first — avoid creating duplicates of existing ones. The slug is normalized to lowercase and permanent; only display metadata can be edited later. Use archive_transaction_category to retire a category, which frees the slug for reuse. |
| edit_transaction_category | Update a category's display label, description, examples, or aliases. Use to localize category names to the household's language or to improve classification guidance. Does not change the stable slug or kind — use create + archive to replace a category with a different kind. |
| archive_transaction_category | Retire a category so it no longer appears in active lists. Use when a category is no longer relevant; existing transactions keep their category link. Prefer over deletion — archiving is reversible at the DB level and preserves history. Do not archive if you intend to reclassify its transactions first. |
| list_transaction_categories | List org-level transaction categories. Use before creating a category to check for duplicates, or when inspecting archived categories before migrating their transactions. Read-only. Prefer get_user_context for active categories during normal workflows — use this tool when you need archived or full category detail. |
| set_budget | Set saved Zen monthly budgets for one or more categories (referenced by slug, e.g. 'groceries'). History is captured automatically; explain the effective month to the user. |
| get_budget_status | MANDATORY for any budget-vs-actual question ('are we over budget', 'how are the budgets doing'). ALWAYS call this tool before discussing budget performance — never answer from chat memory; saved data may have changed. NOT for full month reviews: use get_monthly_summary for those. Use 'mapped so far' language if account/category coverage may be incomplete. |
| report_feedback | File a concise, non-sensitive product observation from this session — bugs, gaps, praise, or feature ideas. Use proactively when you notice a product limitation, tool mismatch, or missing capability; do not wait for the user to ask. Write-only surface: inserts into feedback_reports; no read tool exists today. |
| get_monthly_summary | MANDATORY for any monthly review or summary request ('how did we do', 'monthly review', 'show me May', 'made/spent/saved'). ALWAYS call this tool — NEVER answer monthly-review questions from chat memory or earlier tool results: the family dashboard UI renders ONLY when this tool is actually invoked, and saved data may have changed since the last call. Returns curated Made/Spent/Saved, prior-month comparison, category/budget drivers, bursts, and transactions. Say mapped so far unless coverage is complete. |