# Changelog

What changed in the API and the MCP server, newest first.

- **2026-11-01** — The developer pages grow: /developers/mcp renders the live tool catalogue (also as JSON at /developers/mcp.json), /developers/errors explains every code and reason, /developers/changelog is this list on its own page, and every developer page is served as Markdown at the same path with .md. /developers/llms.txt links a single-page Markdown reference. Every write example defaults to dry_run.
- **2026-11-01** — The phone app reviews proposals: Home counts the changes to review and opens Review, where a proposal is accepted, edited or dismissed. Its API tokens screen offers the same three access levels, limits, the deletes box and the budget allowlist as the web.
- **2026-11-01** — Propose changes and Make changes can now be minted: Settings → API offers the three access levels, the four limits with their defaults, Allow deletes and merges, a budget allowlist, and a 90-day default expiry on a token that changes your budget. An assistant that signed in can be allowed to propose or make changes on the approval page, and Connected apps lists what it may do. The review inbox is live at /review. Nothing changes for an existing token.
- **2026-10-31** — The MCP server gains write tools, for a token given `propose` or `write`: each is a /api/v1 write, with the same keys, limits and review inbox. A token with `read` alone lists the same six tools. Every tool now declares an outputSchema, free text in a tool's text block is fenced, and `/api/mcp/readonly` is a read-only address.
- **2026-10-31** — Write endpoints for transactions, categories, targets, payees and the budget month, with Idempotency-Key and dry_run. They answer only a token given `propose` or `write`, so every existing token is unchanged. Every response now carries Request-Id and the RateLimit headers, error bodies gain optional fields, and /transactions can page by cursor.
- **2026-10-31** — 401 and 403 responses from /api/v1 now carry a WWW-Authenticate header, and the bodies are unchanged.
- **2026-10-28** — MCP server at /api/mcp: an assistant that speaks the Model Context Protocol can read your spaces, accounts, budget months, transactions and what needs attention, with the same token and the same limits.
- **2026-09-28** — Money fields now carry their currency's own ISO 4217 decimals: "1840" for yen, "1.234" for dinars, "-45.00" for dollars, as before. An account-currency field (nativeBalance, amountNative) uses the account's currency. Amounts are stored the same way, so a rule's amount condition compares on that grid: a 1000.50 rule in a yen budget matches ¥1,001.
- **2026-08-27** — v1 available: read budgets, accounts, transactions, categories, payees, labels and budget months with a personal access token.

`/v1` stays; additive changes never bump it. A breaking change gets six months' notice, `Deprecation` and `Sunset` headers, and an entry here first.
