# Budgets and reserves

> Spending plans, tax and accountant costs, reserve accounts and funding gaps before filing.

MCP toolset: `budgets` (https://app.getoatmilk.com/api/mcp?toolset=budgets)

## budgets.accounts

- [`budgets.accounts.designate`](https://app.getoatmilk.com/docs/api/budgets.accounts.designate.md) — Designate a bank account for operating cash, GST/HST, income tax, accountant fees or another reserve, optionally capping the reserved amount. The account must belong to this company. Requires its purposeRevision as expectedRevision, or zero when no designation exists. Does not move funds, change a Wise account or make a payment.

- [`budgets.accounts.get`](https://app.getoatmilk.com/docs/api/budgets.accounts.get.md) — Read one bank account's saved reserve designation and revision. Returns null when no designation exists in this company.

## budgets

- [`budgets.evaluate`](https://app.getoatmilk.com/docs/api/budgets.evaluate.md) — Refresh deterministic budget and filing funding checks, adding or resolving funding warnings in the existing Checklist. Existing reminder settings control scheduled emails. Does not file returns, pay tax or move funds. Requires an idempotencyKey.

- [`budgets.get`](https://app.getoatmilk.com/docs/api/budgets.get.md) — Read one saved spending budget by ID, including an inactive plan. Returns null when unavailable in this company.

- [`budgets.overview`](https://app.getoatmilk.com/docs/api/budgets.overview.md) — Read spending budgets, reviewed actuals, upcoming tax and accountant obligations, reserve coverage, and future recurring purchase forecasts. Use sections to load only due, spending, reserves or recurring; omitted sections return empty arrays and recurringForecast null. No sections returns all. Recurring forecasts reuse reviewed charges, saved subscription status and accepted same-currency merges, with evidence, amount basis, uncertainty and per-currency totals. They are speculative future costs, kept separate from actual spend, tax liabilities and funding obligations. Reuses official compliance dates and reviewed GST/HST workpapers. Unknown tax amounts and stale or missing balances remain unknown; each reserve is counted once.

- [`budgets.save`](https://app.getoatmilk.com/docs/api/budgets.save.md) — Create or edit a monthly, quarterly or yearly spending budget, for all expenses or one category. Actuals use ledger entries and splits, with refunds deducted and transfers excluded. Requires current expectedRevision or zero for a new budget and an idempotencyKey. Does not change bookkeeping entries.

## budgets.obligations

- [`budgets.obligations.get`](https://app.getoatmilk.com/docs/api/budgets.obligations.get.md) — Read one saved payment plan by ID, including an inactive plan, or the current compliance funding plan by compliance:<item ID>. Returns null when unavailable in this company.

- [`budgets.obligations.save`](https://app.getoatmilk.com/docs/api/budgets.obligations.save.md) — Create or edit a tax, GST/HST, accountant or other payment plan, keeping filing and payment dates separate and distinguishing an estimate from a confirmed amount. A negative amount is an expected refund and never offsets another obligation. Recording paidMinor is a planning note, not a bank payment or filed return. Link a complianceItemId to replace its automatic funding plan.
