YNAB_READ_ONLY set to true disables every tool that changes YNAB data, which is a sensible first setting while you see how it behaves. YNAB_DEFAULT_BUDGET_ID pins the server to a single budget and hides list-budgets, so a client that only ever touches one budget cannot wander into another.
An MCP server for You Need A Budget. It exposes budgets, accounts, categories, transactions and payees, with tool descriptions written to guide the order you use them in.
- A high-level overview with balances, goals and context notes — manage-financial-overview, the intended starting point
- Accounts, categories and month-level budget status — list-accounts, list-categories, get-month-info
- Transactions by account or by month, plus upcoming scheduled ones — list-transactions, list-scheduled-transactions
- Assign money to a category or move it between categories — manage-budgeted-amount
- Create, update or delete many transactions in one call — bulk-manage-transactions
- Payee cleanup by merging names — list-payees, manage-payees
- Utilities: lookup-entity-by-id, lookup-payee-locations, list-budgets
A YNAB Personal Access Token in YNAB_PAT, created from YNAB's developer settings. Run it with uvx ynab-mcp-server; version 0.2.1. YNAB_DEFAULT_BUDGET_ID and YNAB_READ_ONLY are optional.
One command plus a key — uvx ynab-mcp-server, then supply credentials
