npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@tankatronic/ynab-mcp-server

v1.1.1

Published

MCP server for AI-powered YNAB budget management

Downloads

650

Readme

ynab-mcp-server

An MCP server that lets you manage your YNAB budget through natural language — import bank files, categorize transactions, and ask questions about your spending.

Built for YNAB users who don't link their bank accounts. If you prefer to manually import transactions instead of connecting your financial accounts to third-party services, this tool removes the tedious parts. Export a file from your bank, tell your AI assistant to import it, and you're done.

Unlike YNAB's built-in file import — which requires CSVs to be reformatted to a specific layout — this server works with your bank's CSV exports directly. It auto-detects formats from major US banks and handles column mapping, date parsing, and amount sign conventions automatically.

Your financial data stays on your machine. The only external call is to the official YNAB API using your personal access token — no data aggregators, no third-party services.

Installation

npm install -g @tankatronic/ynab-mcp-server

Quick Start

1. Get a YNAB token

Go to YNAB Developer Settings and create a personal access token.

2. Configure your MCP client

Add the server to your MCP client config. Here's an example for Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "ynab": {
      "command": "npx",
      "args": ["-y", "@tankatronic/ynab-mcp-server"],
      "env": {
        "YNAB_API_TOKEN": "your-token-here"
      }
    }
  }
}

This works with any MCP-compatible client — see the MCP client directory for other options.

3. Restart your client and try it

"Import my Chase transactions from ~/Downloads/chase-feb-2026.csv into my checking account"

The server will parse the file, suggest categories based on your recent transaction history, and let you review before importing anything into YNAB.

What You Can Do

Import bank files

Drop a CSV, OFX, or QFX export and let the server handle parsing and categorization. Auto-detects formats from Chase, Bank of America, Wells Fargo, American Express, and Citi. Any other bank works with explicit column mapping.

"Import ~/Downloads/amex-statement.csv into my Amex account"

Importing the same file twice is safe — each transaction gets a deterministic ID, and YNAB skips anything already imported.

Get category suggestions

When previewing an import, the server looks up your recent YNAB history and suggests categories by matching payee names to how you've categorized them before. You review and adjust before anything is committed.

Split transactions

A single transaction can be split across categories — groceries and household supplies on the same Costco receipt, for example.

Ask about your budget

"How does my grocery spending compare to the last 3 months?"
"Which categories are consistently underspent?"
"Show me all Amazon transactions over $50 this year"

Use guided workflows

The server ships with step-by-step workflow configs that walk your AI assistant through multi-step processes like importing and reconciling:

"List available workflows"
"Run the import-categorize workflow"

You can add your own by setting YNAB_MCP_WORKFLOWS_DIR to a directory of markdown workflow files.

Tools

| Tool | What it does | |------|-------------| | parse_bank_export | Parse a CSV, OFX, or QFX file | | preview_import | Dry-run an import with category suggestions | | import_transactions | Bulk-import with automatic deduplication | | reconcile_import | Verify imported totals match the source file | | get_budget_overview | Show accounts, balances, and category group totals | | get_spending_by_category | Budgeted vs. actual for a given month | | get_monthly_trends | Compare spending across months (up to 12) | | search_transactions | Filter by account, category, payee, date, or amount | | create_transaction | Create a transaction, optionally with splits | | update_transaction | Edit an existing transaction | | update_category_budget | Change the budgeted amount for a category | | list_workflow_configs | List available workflow configs | | read_workflow_config | Load a workflow config |

Supported Bank Formats

Auto-detected CSV layouts:

  • Chase (credit card and checking)
  • Bank of America
  • Wells Fargo
  • American Express
  • Citi

Also supported:

  • OFX and QFX files (most banks offer this export)
  • Any CSV with a custom column_mapping parameter

Don't see your bank? The parse_bank_export tool accepts explicit column mapping.

Prerequisites

Development

git clone https://github.com/Tankatronic/ynab-mcp-server.git
cd ynab-mcp-server
npm install
npm test          # run tests
npm run build     # compile TypeScript
npm run lint      # type-check

To use a local build with your MCP client, point it at the built entry point:

{
  "mcpServers": {
    "ynab": {
      "command": "node",
      "args": ["/absolute/path/to/ynab-mcp-server/dist/index.js"],
      "env": {
        "YNAB_API_TOKEN": "your-token-here"
      }
    }
  }
}

Contributing

Issues and PRs welcome — especially:

  • Bank CSV format profiles for new banks
  • Workflow config files for common use cases
  • Bug reports with anonymized sample bank files

License

MIT