YNAB MCP Server
The YNAB MCP Server connects AI assistants to your YNAB budgeting data, enabling conversational access to financial information through natural language queries.
Core Capabilities:
Budget Management: Retrieve all budgets with IDs and last modification dates, access detailed budget information including accounts, categories, and settings
Account Operations: List all accounts showing names, types, balances, and status; get specific account details
Category Analysis: View categories organized by groups with budgeted amounts and activity; get detailed information for specific categories including current month data
Transaction Queries: Search and filter transactions by date range, type (uncategorized/unapproved), category, payee, or account; retrieve specific transaction details
Scheduled Transactions: View all recurring and scheduled transactions to understand future financial commitments
Payee Information: Access complete list of payees associated with your budget
Monthly Reports: Get month-by-month summaries showing income, budgeted amounts, and activity totals; access detailed month information including all category balances
Key Features:
Read-only access to all YNAB data (no modifications)
Support for multiple budgets with 'last-used' convenience shortcut
Comprehensive filtering and date-based analysis for historical data
Ability to analyze spending patterns and monitor budget health across time periods
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@YNAB MCP Server show me my recent transactions from last week"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
YNAB MCP Server
Talk to your finances.
What is this?
YNAB (You Need A Budget) is a popular budgeting app that helps you gain control of your money. This MCP server connects AI assistants to your YNAB data, giving you conversational access to:
Your budgets and accounts
Transaction history and patterns
Category balances and spending insights
Scheduled and recurring transactions
Creating and managing transactions
Updating category budgets
Creating accounts
Related MCP server: YNAB Assistant
Installation
Via npx (recommended)
No installation required. Configure your Claude client to use npx directly (see below).
Via npm (global)
npm install -g ynab-mcp-serverFrom source
git clone https://github.com/jeangnc/ynab-mcp-server.git
cd ynab-mcp-server
make install
make buildConfiguration
First, set your YNAB API token in your shell profile (~/.zshrc or ~/.bashrc):
export YNAB_API_TOKEN="your-token-here"Claude Code
claude mcp add ynab --scope user --env YNAB_API_TOKEN='${YNAB_API_TOKEN}' -- npx -y ynab-mcp-serverClaude Desktop
Add to ~/.config/claude/claude_desktop_config.json (Linux) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"ynab": {
"command": "npx",
"args": ["-y", "ynab-mcp-server"],
"env": {
"YNAB_API_TOKEN": "${YNAB_API_TOKEN}"
}
}
}
}Manual usage
YNAB_API_TOKEN=$YNAB_API_TOKEN npx ynab-mcp-serverAvailable Tools
Read Tools
Tool | Description |
| Get all budgets for the authenticated user. Returns budget names, IDs, and last modified dates. |
| Get detailed information about a specific budget including accounts, categories, and settings. |
| Get all accounts for a budget. Returns account names, types, balances, and status. |
| Get detailed information about a specific account. |
| Get all categories for a budget, grouped by category group. Includes budgeted amounts and activity. |
| Get detailed information about a specific category including current month data. |
| Get transactions for a budget. Supports filtering by date, type, category, payee, and account. |
| Get detailed information about a specific transaction. |
| Get all payees for a budget. |
| Get all scheduled/recurring transactions for a budget. |
| Get all budget months. Returns month summaries with income, budgeted, and activity totals. |
| Get detailed budget information for a specific month including all category balances. |
Write Tools
Tool | Description |
| Create a new transaction. Amount should be negative for expenses and positive for income. |
| Update an existing transaction. Only provide the fields you want to change. |
| Delete an existing transaction. |
| Update the budgeted amount for a category in a specific month. |
| Create a new account in the budget. |
| Get detailed information about a specific scheduled transaction. |
| Create a new scheduled/recurring transaction. Date must be in the future (max 5 years). |
| Update an existing scheduled transaction. Only provide fields you want to change. |
| Delete an existing scheduled transaction. |
| Update a payee's name. The name must be a maximum of 500 characters. |
History Tools
Tool | Description |
| List recent write operations with their IDs for undo. Operations are listed in reverse chronological order (newest first). |
| Get detailed information about a specific history entry including before/after state. |
| Revert a previous write operation by its history entry ID. |
History & Undo
The server tracks all write operations (transactions, scheduled transactions, category budgets, payees, and accounts) and allows you to undo them.
How it works
All write operations are automatically recorded to
~/.ynab-mcp-history.jsonHistory persists across server restarts
Up to 100 operations are retained (oldest are automatically removed)
Use
list_historyto see recent operations and their IDsUse
undo_operationwith an entry ID to revert a change
Supported undo operations
Operation | Undo Action |
Create transaction | Deletes the created transaction |
Update transaction | Restores to previous state |
Delete transaction | Recreates the transaction (new ID) |
Create scheduled transaction | Deletes the created scheduled transaction |
Update scheduled transaction | Restores to previous state |
Delete scheduled transaction | Recreates the scheduled transaction (new ID) |
Update category budget | Restores previous budgeted amount |
Update payee | Restores previous name |
Create account | Cannot be undone (YNAB API limitation) |
Limitations
Account creation cannot be undone: The YNAB API does not support deleting accounts
Recreated transactions get new IDs: When undoing a delete, the transaction is recreated with a new ID
External changes: If data is modified outside the MCP server, undo may fail or produce unexpected results
Old history entries: Very old entries may reference entities that no longer exist
Makefile Commands
make install # Install dependencies
make build # Compile TypeScript
make run # Run compiled server
make dev # Run TypeScript directly
make clean # Remove build artifactsAvailable Tools
12 toolsget_accountC
Get detailed information about a specific account.
Inputs: budget_id (required), account_id (required).
get_budgetB
Get detailed information about a specific budget including accounts, categories, and settings.
Inputs: budget_id (required).
get_categoryC
Get detailed information about a specific category including current month data.
Inputs: budget_id (required), category_id (required).
get_monthC
Get detailed budget information for a specific month including all category balances.
Inputs: budget_id (required), month (required).
get_transactionC
Get detailed information about a specific transaction.
Inputs: budget_id (required), transaction_id (required).
list_accountsB
Get all accounts for a budget. Returns account names, types, balances, and status.
Inputs: budget_id (required).
list_budgetsA
Get all budgets for the authenticated user. Returns budget names, IDs, and last modified dates.
Inputs: no named parameters.
list_categoriesB
Get all categories for a budget, grouped by category group. Includes budgeted amounts and activity.
Inputs: budget_id (required).
list_monthsC
Get all budget months. Returns month summaries with income, budgeted, and activity totals.
Inputs: budget_id (required).
list_payeesC
Get all payees for a budget.
Inputs: budget_id (required).
list_scheduled_transactionsC
Get all scheduled/recurring transactions for a budget.
Inputs: budget_id (required).
list_transactionsC
Get transactions for a budget. Supports filtering by date, type, category, payee, and account.
Inputs: budget_id (required), since_date, type, category_id, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose targeting specific resources (e.g., accounts, budgets, categories, months, transactions, payees, scheduled transactions) with no overlap in functionality. The 'get_' tools retrieve detailed information for single items, while 'list_' tools return collections, making them easily distinguishable.
All tool names follow a consistent verb_noun pattern with 'get_' for retrieving single items and 'list_' for retrieving collections, using snake_case throughout. This predictable naming scheme enhances readability and usability for agents.
With 12 tools, the server is well-scoped for a budgeting application, covering key entities like budgets, accounts, categories, months, transactions, and payees. Each tool serves a clear purpose without redundancy, making the count appropriate for the domain.
The tool set provides comprehensive read operations (get and list) for all major resources in YNAB, supporting core budgeting workflows. However, it lacks write operations (e.g., create, update, delete) for transactions, categories, or budgets, which could limit agent functionality for full lifecycle management.
Maintenance
Related MCP Connectors
The budget app your AI agent can use. Check budgets and log spending, with no bank logins.
Log, query, and edit expenses, budgets, and accounts in Manilo (formerly Ledgy) from any MCP-compatible AI assistant.
Log, query, and edit expenses, budgets, and accounts in Manilo from any MCP-compatible AI assistant.
Log, query, and edit expenses, budgets, and accounts in Ledgy from any MCP-compatible AI assistant.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI assistants to help manage your You Need A Budget (YNAB) finances through comprehensive budget operations. Supports account management, transaction handling, category budgeting, split transactions, scheduled payments, and spending analytics with robust error handling and automatic retry logic.214MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with YNAB budgets through natural language. Supports managing accounts, categories, transactions, and budget months with 21 tools for comprehensive budget operations.-
- FlicenseAqualityCmaintenanceEnables users to manage budgets, accounts, categories, and transactions on You Need A Budget (YNAB) through Claude. It supports both core daily budget management and extended operations like bulk transaction creation and historical trend analysis.152-
- AlicenseBqualityBmaintenanceEnables AI assistants to interact with YNAB budgets, performing read-only queries by default and optional write operations like creating transactions and managing categories through natural language.45527 npm46MIT