loading…
Search for a command to run...
loading…
A production-ready TypeScript starter for building read-only YNAB MCP servers. It provides secure, validated access to YNAB financial data including budgets, ac
A production-ready TypeScript starter for building read-only YNAB MCP servers. It provides secure, validated access to YNAB financial data including budgets, accounts, categories, and transactions through structured tools.
Production-style TypeScript starter repo for a read-only YNAB MCP server.
This starter is intentionally small and explicit:
src/
clients/ YNAB API client, environment config, and error types
schemas/ strict Zod schemas for tool contracts
server/ MCP server composition and transport TODO placeholders
tools/ read-only business logic for each YNAB capability
types/ shared API and service types
tests/ unit tests with mocked API responses
Implemented read-only capabilities:
Write access is intentionally not implemented.
npm install
cp .env.example .env
.env:YNAB_TOKEN=your-token-here
npm run dev
npm run build compiles TypeScript into dist/npm run dev runs the starter entrypoint with file watchingnpm run lint runs ESLintnpm run test runs unit tests with Vitestnpm run typecheck runs TypeScript in no-emit modeThe repo includes the server composition layer, but it does not lock you into one transport yet.
Look for TODO comments in:
That is where you should:
YNAB_TOKEN personal access token in environment variables.GET requests to the YNAB API. No write endpoints are implemented.budget-id-123."budget-id-123."budget-id-123."budget-id-123 since 2026-04-01."budget-id-123 in 2026-04."The tests mock YNAB API responses so you can validate behavior without a live token:
npm run test
.env files for deploymentДобавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"ynab-mcp-starter": {
"command": "npx",
"args": []
}
}
}PRs, issues, code search, CI status
Database, auth and storage
Reference / test server with prompts, resources, and tools.
Secure file operations with configurable access controls.