ynab
This is an experimental mcp server I made to try to make it easier to use YNAB without linking your financial accounts. Made using the BMAD-Method.
claude mcp add --transport stdio tankatronic-ynab-mcp-server npx -y @tankatronic/ynab-mcp-server \ --env YNAB_API_TOKEN="your-token-here"
How to use
This MCP server lets you manage a YNAB budget via natural language. You can import bank CSV/OFX/QFX exports, get smart category suggestions, split transactions, and ask questions about your budget, all through MCP-compatible clients. The server reads your YNAB data via a personal access token and performs parsing, categorization, and import operations locally, with the only external call being to the YNAB API. Tools exposed include parse_bank_export to parse bank files, preview_import to dry-run imports with suggested categories, and import_transactions to perform bulk imports with deduplication. You can also query budget overviews, spending by category, monthly trends, and manage transactions or categories directly through the MCP interface. Guided workflows are available to walk your AI assistant through multi-step tasks like importing and reconciling, and you can add your own workflows by setting YNAB_MCP_WORKFLOWS_DIR to a directory of markdown files.
How to install
Prerequisites:
- Node.js >= 22 LTS
- npm (comes with Node.js)
- An MCP-compatible client
- A YNAB personal access token
Install the MCP server globally:
npm install -g @tankatronic/ynab-mcp-server
Optional: run a local build for development (if contributing):
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
Configuration (example for MCP client):
{
"mcpServers": {
"ynab": {
"command": "npx",
"args": ["-y", "@tankatronic/ynab-mcp-server"],
"env": {
"YNAB_API_TOKEN": "your-token-here"
}
}
}
}
Start using the server by configuring your MCP client with the above settings and restarting the client.
Additional notes
Tips and options:
- Set YNAB_API_TOKEN to your personal access token in your MCP client config or environment when running locally.
- You can customize workflows by setting YNAB_MCP_WORKFLOWS_DIR to a directory of markdown workflow files.
- Importing the same bank file twice is safe; each transaction gets a deterministic ID and YNAB will skip duplicates.
- Supported bank formats include auto-detected CSV layouts for Chase, Bank of America, Wells Fargo, American Express, Citi, plus OFX/QFX and any CSV with a custom column_mapping parameter.
- If you need to use a local build, point your MCP client to the compiled index.js as shown in the README example for development.
- Ensure your client has appropriate permissions to access YNAB (via the token) and that the token scopes include budget management.
Related MCP Servers
iterm
A Model Context Protocol server that executes commands in the current iTerm session - useful for REPL and CLI assistance
mcp
Octopus Deploy Official MCP Server
furi
CLI & API for MCP management
editor
MCP Server for Phaser Editor
DoorDash
MCP server from JordanDalton/DoorDash-MCP-Server
mcp
MCP сервер для автоматического создания и развертывания приложений в Timeweb Cloud