Show HN: A local-first financial auditor using IBM Granite, MCP, and SQLite
3 months ago
- #local-llm
- #privacy-first
- #financial-analysis
- Intelligent, privacy-first financial analysis platform using Local LLMs and Model Context Protocol (MCP).
- Agentic architecture with LLM acting as Senior Auditor for accurate financial summaries.
- Local & Private: Runs entirely on your machine via Ollama; no data leaves your environment.
- Agentic Reasoning: Uses granite3.3:8b to interpret natural language and map to SQL-backed tools.
- Accurate Arithmetic: Offloads summations and aggregations to SQLite engine for 100% accuracy.
- Smart Filtering: Automatically distinguishes real spending from internal transfers.
- Vendor Name Normalization: Uses granite3.3:2b to normalize vendor names into readable merchants.
- Persistent Context: Maintains chat history across dashboard views using React state lifting.
- Modular, multi-tier architecture for extensibility and local-first execution.
- UI (React): Dashboard for visualizing transactions, uploading statements, and interacting with AI.
- Application API (Python/FastAPI): Backend for PDF parsing, transaction categorization, and summaries.
- MCP Server (Python/FastMCP): Exposes SQLite-backed financial data to LLM via deterministic tools.
- Local LLM Runtime (Ollama): Processes user intent and orchestrates tool calls.
- Setup requires Ollama, Node.js, Python, SQLite, and uv for dependency management.
- Workflow: Upload PDF statements → parsing → normalization → storage → manual categorization.
- Manual Transactions: Log expenses not on statements, fixed costs, utilities, and cash expenses.
- Dashboard Features: Aggregated totals, trends, fixed vs. variable spending analysis.
- Senior Auditor Chat: LLM uses MCP Tools for verified financial analysis queries.
- Future Features: Auto-categorization, machine-learning vendor normalization, AI-generated charts.
- Licensed under MIT License.