Ynab MCP Server
YNAB budget data access for your AI agent with transaction management capabilities.
Data last scanned today · Reviewed today
Overview
This TypeScript-based MCP server enables direct interaction with YNAB budgets. Users can list available budgets, summarize spending categories, identify underfunded areas, and retrieve or approve pending transactions directly through conversational AI prompts.
Our verdict
This server carries a high-risk rating with a security score of 39/100. The primary concern is that it lacks a read-only mode, meaning every installation is granted full write access to your YNAB account. Due to the lack of an official maintainer and the absence of an editorial review, it is best suited for experienced users who understand the implications of providing broad write permissions to an external tool.
- Supports direct creation and approval of budget transactions.
- Small attack surface with only 6 direct dependencies.
- Built with TypeScript and released under the MIT license.
- Includes documented workflows for managing overspent categories.
- No read-only mode restricts user control over write permissions.
- Community-maintained project with no official YNAB affiliation.
- Inactivity indicated by no commits in over 200 days.
- No OAuth support detected for token management.
Setup
{
"mcpServers": {
"ynab-mcp-server": {
"args": [
"-y",
"ynab-mcp-server"
],
"command": "npx"
}
}
}Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop. Some servers require API keys or tokens as environment variables — check the project's README and add an "env" object if needed.
- No read-only mode — running this grants full read/write access.
- No built-in authentication — anyone with access to this config can invoke every tool it exposes.
Tools
| Tool | Description | Risk |
|---|---|---|
| ListBudgets | lists available budgets on your account | low |
| BudgetSummary | provides a summary of categories that are underfunded and accounts that are low | low |
| GetUnapprovedTransactions | retrieve all unapproved transactions | low |
| CreateTransaction | creates a transaction for a specified budget and account. | medium |
| ApproveTransaction | approves an existing transaction in your YNAB budget | medium |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›What credentials are required to use this MCP server?
You must provide a YNAB Personal Access Token as the YNAB_API_TOKEN environment variable. This token is stored privately and is never sent directly to the LLM.
›Can I specify a default budget for the server?
Yes, you can optionally set a YNAB_BUDGET_ID environment variable. If one is not set, the server will prompt you to select a budget from your available accounts upon initial use.
›How are transactions managed through the server?
The server provides tools to list budgets, retrieve unapproved transactions, create new transactions, and approve existing ones using their transaction ID.
Badge
Maintain this server? Add the live badge to your README.