Skip to main content
Glama
Maronato

YNAB MCP Server

by Maronato

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
YNAB_API_URLNoOverride the YNAB API base URL
YNAB_API_TOKENYesYNAB personal access token
YNAB_READ_ONLYNoDisable all write operations (true/false/1/0)false
YNAB_MCP_DATA_DIRNoDirectory for undo history storage~/.ynab-mcp

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_budgetsB

List available YNAB budgets with key metadata.

sync_budget_dataA

Force a fresh sync of all cached budget data (accounts, categories, payees, transactions, scheduled transactions) from the YNAB API. Use this when you suspect external changes (e.g., bank imports, mobile app edits) that may not be reflected yet. Costs up to 6 API requests against the 200/hour rate limit.

get_accountsA

Get accounts with optional filtering by type, on-budget flag, and closed state.

search_transactionsA

Run one or more transaction searches in a single call with rich filters and sorted results.

create_transactionsA

Create one or more transactions in a single call. Each successful creation is undoable.

update_transactionsA

Update one or more existing transactions in a single call. Each successful update is undoable.

delete_transactionsA

Delete one or more transactions. Each deletion is undoable by re-creating the transaction. Costs one YNAB API call per transaction against the 200/hour rate limit.

list_categoriesA

Get all categories with their group hierarchy, IDs, and names. No budget figures or target data — lightweight and fast. Use this to resolve category names to IDs before write operations.

get_targetsA

Get categories with target progress details only: target type, amount, date, underfunded amount, months remaining, and percentage complete. Use this when you need target-specific guidance rather than monthly budget balances. Categories without targets return null target fields rather than being omitted.

get_monthly_budgetA

Get a month overview with income/budgeted/activity totals and per-category budget figures (budgeted, activity, balance) with overspending flags. Returns all visible categories by default — set include_hidden=true to include hidden ones. Categories with no activity show zeroes. No target data.

set_category_budgetsA

Set budgeted amounts for one or more category/month pairs in a single request. Costs up to two YNAB API calls per pair against the 200/hour rate limit (the prior amount is read before it is written, and the read may be served from cache) — keep batches small.

get_spending_analysisB

Aggregate spending over a date range and rank by category/payee for quick insights. Optionally set time_granularity to also bucket the same spending over time (daily, weekly, day-of-week, week-of-month) to see when money is spent.

get_scheduled_transactionsB

Get scheduled transactions with optional account/category filtering.

create_scheduled_transactionsA

Create one or more scheduled transactions. Each successful creation is undoable and costs one YNAB API call (no bulk endpoint exists).

update_scheduled_transactionsA

Update one or more scheduled transactions. Each successful update is undoable and costs one YNAB API call (no bulk endpoint exists).

delete_scheduled_transactionsA

Delete one or more scheduled transactions. Each deletion is undoable and costs one YNAB API call (no bulk endpoint exists).

suggest_transaction_categoriesA

Analyze uncategorized (and optionally unapproved) transactions using payee history, amount patterns, and scheduled transaction matching. Returns categorization suggestions with confidence levels — does NOT apply changes. update_actions (for update_transactions) contains only suggestions at or above action_confidence (default high); review lower-confidence suggestions manually before applying them.

set_category_targetsA

Create or update targets on one or more categories. Returns previous state for each category.

list_undo_historyB

List undoable operations for a budget.

undo_operationsA

Undo one or more prior operations with conflict detection. Use force=true to override conflicts.

get_budget_healthA

Single-call budget snapshot and diagnostic. Surfaces net worth, account totals by type, month totals, overspent categories, underfunded targets, credit card payment gaps, uncategorized/unapproved transaction counts, and Ready to Assign status with severity-rated issues. Note: the YNAB API does not expose whether overspending happened on cash or credit; judge that from the credit card payment gaps and the transactions themselves.

get_spending_trendsA

Multi-month spending time series with trend detection. Groups spending by category, payee, or category group and identifies increasing/decreasing patterns. The in-progress current month is included in the series marked partial, but excluded from trend labels, monthly averages, and moving averages. Trend fields are null when fewer than two complete months are available rather than reporting a fabricated flat trend.

get_income_expense_summaryA

Monthly income vs expense breakdown with savings rate calculation and trend detection across months. The in-progress current month is listed marked partial, and months predating the budget are listed marked no_data; both are excluded from averages and the trend. trend is null when fewer than two complete months are available (e.g. months=2 mid-month, or a budget younger than the window) rather than reporting a fabricated flat rate.

get_money_movementsA

Audit feed of money moved between categories or to/from Ready to Assign, including moves made in the YNAB apps — the only place the history behind each category's budgeted amount is visible. Use it to explain why a budgeted amount changed, or to see which moves were already made this month before proposing new ones. Movements performed together as one action share a group with its own note.

detect_recurring_chargesA

Identify subscriptions and recurring charges from transaction patterns. Analyzes transaction history to detect regular outflows, estimates frequency, flags price changes, and cross-references with scheduled transactions. Returns create_scheduled_actions for unmatched recurring charges (suggestions only).

detect_anomaliesA

Find unusual transactions: abnormal amounts for known payees, large charges from new payees, and potential duplicates. Compares each transaction against a baseline built from that payee's other transactions (the transaction itself is excluded). For payees whose history is near-constant the comparison scale is floored, in which case scale_basis is "floor" and scale_multiple is a multiple of that floor rather than a standard deviation.

Prompts

Interactive templates invoked by user choice

NameDescription
monthly-reviewRun a structured monthly YNAB review workflow.
spending-reportGenerate a spending report for a date range.
triage-unapprovedReview and batch-handle unapproved transactions efficiently.
budget-optimizationAnalyze your budget for optimization opportunities.
subscription-auditReview recurring charges and manage subscriptions.

Resources

Contextual data attached and managed by the client

NameDescription
knowledge-terminologyThe Four Rules, milliunits, Ready to Assign, on-budget vs off-budget, Age of Money, transaction states, and budget months.
knowledge-credit-cardsHow YNAB models credit card spending vs payments, the payment category, returns, pre-YNAB debt, and credit vs cash overspending on cards.
knowledge-targetsTarget types (Target Category Balance, Monthly Savings Builder, Needed for Spending), underfunded calculations, and target interactions with budgeting.
knowledge-overspendingCash vs credit overspending, month rollover behavior, hidden credit card debt, and how to cover overspending.
knowledge-reconciliationTransaction status lifecycle (uncleared/cleared/reconciled), the reconciliation process, frequency recommendations, and API relevance.
knowledge-api-quirksKnown YNAB API limitations: scheduled transaction frequencies, split transaction handling and ID changes, scheduled-transaction date and split constraints.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Maronato/ynab-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server