Get the FREE Ultimate OpenClaw Setup Guide →

ynab

YNAB MCP server with custom skills

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio rgarcia-ynab-mcp-server /absolute/path/to/this/project/.venv/bin/ynab-mcp-server \
  --env YNAB_API_TOKEN="your-token-here"

How to use

This MCP server exposes YNAB's API endpoints as MCP tools, allowing an AI like Claude to interact with your YNAB data such as budgets, accounts, transactions, categories, and more. The server automatically generates tools from YNAB's OpenAPI specification, so once connected you can query or modify data using natural-language prompts that map to YNAB API calls (e.g., retrieving budgets, listing transactions, creating accounts, or updating categories). The generated tools handle authentication with your YNAB API token, so you can focus on the task without managing each endpoint manually. To use it, run the server locally through your preferred MCP client configuration (Claude Desktop, Cursor, or OpenCode) and supply your YNAB API token via the environment variable YNAB_API_TOKEN. Then issue requests through your AI assistant like “Show me my budgets” or “Create a transaction for $50 at the grocery store.”

How to install

Prerequisites:

  • Python 3.11 or higher
  • uv package manager installed
  • A YNAB API token with access rights

Setup steps:

  1. Clone the repository: git clone https://github.com/rgarcia/ynab-mcp-server.git cd ynab-mcp-server

  2. Create and activate a Python virtual environment (recommended): python3 -m venv .venv source .venv/bin/activate # on macOS/Linux ..venv\Scripts\activate # on Windows

  3. Install dependencies via uv (as per project guidance): uv sync

  4. Place your YNAB API token in your environment when running the server, e.g.: export YNAB_API_TOKEN=your-token-here

  5. Run the server locally using the virtual environment's entry point (example): python -m ynab_mcp_server.server

    or use the project-specific startup script if provided (ynab-mcp-server in .venv/bin)

  6. Connect your MCP client (Claude Desktop, Cursor, or OpenCode) with the configured local command and environment as shown in the usage section of the repository.

Notes:

  • Ensure the YNAB API token is kept secret and not committed to any repository.
  • The server uses OpenAPI resolution to generate tools automatically; an active network connection is required to fetch the OpenAPI spec from YNAB.

Additional notes

Tips and considerations:

  • Environment variable: YNAB_API_TOKEN must be set in the environment of the MCP client configuration (Claude Desktop, Cursor, OpenCode).
  • If you regenerate tokens, update the environment variable accordingly.
  • The server exposes all endpoints defined in YNAB's OpenAPI spec; if you encounter missing tooling, ensure you are using the latest server code and that the OpenAPI spec endpoint is reachable.
  • When testing, start with read-only operations (e.g., getBudgets, getAccounts) before attempting mutating actions like createTransaction or updateCategory.
  • For debugging, check the server logs for OpenAPI parsing or authentication errors and verify network access to https://api.ynab.com.
  • If deploying, consider securing the environment and token handling in your MCP client configuration.

Related MCP Servers

Sponsor this space

Reach thousands of developers