← ClaudeAtlas

ynab-reviewlisted

Review, categorize, and approve unapproved YNAB transactions via DuckDB staging + YNAB MCP
luutuankiet/bank-statement-wrangler · ★ 0 · Code & Development · score 57
Install: claude install-skill luutuankiet/bank-statement-wrangler
# YNAB Transaction Review Skill ## Purpose Batch-review unapproved YNAB transactions: auto-approve matched, detect cross-account duplicates, classify by memo patterns, and present ambiguous items for user decision. Designed for Vietnamese bank statements (TCB, SCB, MoMo) imported via bank-statement-wrangler pipeline. ## Architecture ``` ynab-dump CLI → staging/transactions.json → DuckDB queries (READ) ↓ classify + present ↓ YNAB MCP (WRITE only) ``` **DuckDB for reads** — query `staging/transactions.json` via `fs:query_duckdb` tool. Full SQL: JOINs, GROUP BY, window functions, CTEs. No 80KB truncation, no narrow date windows. **YNAB MCP for writes** — `utils:ynab__updateTransactions` via `call_tool_destructive` for approvals, categorization, memo updates, transfer conversion. ## Prerequisites - Staging data: user runs `ynab-dump --since <window>` before invoking this skill - YNAB MCP tools on `utils` server, prefix `ynab__`, use `call_tool_destructive` - DuckDB query tool on `fs` server: `fs:query_duckdb` via `call_tool_read` - Discover tools with: `retrieve_tools("ynab budget transactions")` and `retrieve_tools("duckdb query")` ## Staging JSON Path ``` scripts/bank-statement-wrangler/staging/transactions.json ``` All DuckDB queries use this path. Shorthand in examples below: `TXN_