home / mcp / ynab mcp server

YNAB MCP Server

MCP server for interacting with YNAB.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "ntdef-ynab-mcp": {
      "url": "https://mcp.example.com/mcp",
      "headers": {
        "YNAB_API_TOKEN": "YOUR_YNAB_API_TOKEN"
      }
    }
  }
}

This MCP server lets you interact with YNAB (You Need A Budget) programmatically. You can fetch budgets, accounts, and categories, and you can get, create, and update transactions and categories as well as view budget summaries. It’s designed for use with an MCP client to streamline budget data workflows and automation.

How to use

You connect to the YNAB MCP Server from your MCP client and issue the available actions to manage your budgets. The server exposes functions for budgets, accounts, categories, transactions, and budget summaries. Use the appropriate function to retrieve data (for example, budgets and accounts) or to modify data (such as creating a category or a transaction). Each action requires you to specify the budget you’re working with and, when relevant, the target month or category.

How to install

Prerequisites you need before installation are Python 3.13 or higher and the UV package manager. You also need a YNAB account with an API token to authorize requests.

Concrete steps to install and run the MCP server:

# Step 1: Clone the MCP server repository
git clone https://github.com/ntdef/ynab-mcp.git
cd ynab-mcp

# Step 2: Create and activate a virtual environment (UV handles venv for you)
uv venv

# Step 3: Activate the virtual environment
# Windows
venv\Scripts\activate
# Unix/MacOS
source venv/bin/activate

# Step 4: Install dependencies and sync MCP (UV is the package manager)
# If UV is not installed yet, install it first via Python's package manager
python -m pip install uv
uv sync

# Step 5: Configure environment with your YNAB API token
# Copy the example environment file and edit it with your token
cp .env.example .env
# Edit .env to set YOUR_YNAB_API_TOKEN

# Step 6: Start the MCP server
uv run ynab-mcp
```} ,{

Available tools

get_budgets

Retrieve all budgets for the authenticated user.

get_budget_summary

Get a summary of a budget, optionally for a specific month.

get_accounts

Retrieve all accounts for a specific budget.

get_categories

Retrieve all categories for a specific budget.

create_category

Create a new category within the specified budget grouping.

update_category_budgeted

Update the budgeted amount for a category in a specific month.

get_transactions

Retrieve transactions for a specific budget, with optional filters by date, account, or category.

create_transaction

Create a new transaction in the specified budget.

update_transaction

Update one or more fields of a specific transaction.