# ynab-mcpb

Connects YNAB to an MCP client for transaction work, receipt splitting, reconciliation, and spending analysis.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 9
- Author: dizzlkheinz
- License: AGPL-3.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/dizzlkheinz/ynab-mcpb
- Updated: 2026-10-21
- HTML: https://affpapa.org/en/nevibecode/mcp/ynab-mcpb

## What it does

ynab-mcpb connects YNAB to an MCP client so an assistant can work with budgets through natural-language requests. Its 35 tools cover budgets, accounts, transactions, categories, scheduled entries, and period data. It can turn a receipt into a split transaction, compare a bank CSV with YNAB records, and inspect spending.

Write operations use a preview step with a one-time confirmation tied to the validated request. The server can run with `core`, `read-only`, or `full` tool profiles, while read responses can use Markdown or JSON. A YNAB personal access token is required through `YNAB_ACCESS_TOKEN`; without it, the server cannot connect.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `YNAB_ACCESS_TOKEN`, `YNAB_MCP_WRITE_MODE`, `YNAB_MCP_TOOL_PROFILE` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env YNAB_ACCESS_TOKEN=<YNAB_ACCESS_TOKEN> --env YNAB_MCP_WRITE_MODE=<YNAB_MCP_WRITE_MODE> --env YNAB_MCP_TOOL_PROFILE=<YNAB_MCP_TOOL_PROFILE> --transport stdio ynab-mcpb -- npx -y @dizzlkheinz/ynab-mcpb
```
Replace <…> with your own values

### Codex

**Platform CLI**
```bash
codex mcp add ynab-mcpb --env YNAB_ACCESS_TOKEN=<YNAB_ACCESS_TOKEN> --env YNAB_MCP_WRITE_MODE=<YNAB_MCP_WRITE_MODE> --env YNAB_MCP_TOOL_PROFILE=<YNAB_MCP_TOOL_PROFILE> -- npx -y @dizzlkheinz/ynab-mcpb
```
Replace <…> with your own values

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "ynab-mcpb": {
            "command": "npx",
            "args": [
                "-y",
                "@dizzlkheinz/ynab-mcpb"
            ],
            "env": {
                "YNAB_ACCESS_TOKEN": "<YNAB_ACCESS_TOKEN>",
                "YNAB_MCP_WRITE_MODE": "<YNAB_MCP_WRITE_MODE>",
                "YNAB_MCP_TOOL_PROFILE": "<YNAB_MCP_TOOL_PROFILE>"
            }
        }
    }
}
```
Replace <…> with your own values

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "ynab-mcpb": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@dizzlkheinz/ynab-mcpb"
            ],
            "env": {
                "YNAB_ACCESS_TOKEN": "<YNAB_ACCESS_TOKEN>",
                "YNAB_MCP_WRITE_MODE": "<YNAB_MCP_WRITE_MODE>",
                "YNAB_MCP_TOOL_PROFILE": "<YNAB_MCP_TOOL_PROFILE>"
            }
        }
    }
}
```
Replace <…> with your own values

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e YNAB_ACCESS_TOKEN=<YNAB_ACCESS_TOKEN> -e YNAB_MCP_WRITE_MODE=<YNAB_MCP_WRITE_MODE> -e YNAB_MCP_TOOL_PROFILE=<YNAB_MCP_TOOL_PROFILE> ynab-mcpb npx -y @dizzlkheinz/ynab-mcpb
```
Replace <…> with your own values

## When to use it
- reconcile a YNAB account against a bank CSV
- split a receipt into itemized transactions
- create a transaction from a written description
- inspect spending by category and period
- list upcoming scheduled bills and income

## Example prompts
- Reconcile my checking account with `bank.csv` and list the mismatches.
- Turn this receipt into a split transaction and allocate its tax.
- Show grocery spending from the last 30 days as JSON.

## Similar
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89609
- [CCXT](https://affpapa.org/en/nevibecode/mcp/ccxt.md) — MCP server · ★ 44591
- [Finance Toolkit](https://affpapa.org/en/nevibecode/mcp/finance-toolkit.md) — MCP server · ★ 5469
- [EdgarTools](https://affpapa.org/en/nevibecode/mcp/edgartools.md) — MCP server · ★ 2817
- [LetsFG — Flights & Hotels](https://affpapa.org/en/nevibecode/mcp/letsfg-flights-hotels.md) — MCP server · ★ 2197
- [AutoTS](https://affpapa.org/en/nevibecode/mcp/autots.md) — MCP server · ★ 1434

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
