![[Showcase] Local AI for documents and photos — Paperless-ngx, Immich, Ollama, ChromaDB, MCP](https://external-preview.redd.it/5RmgUF8hBz7QylwSshxs3kz52ltfT8qs-RuaeG5TWFQ.png?width=1080&crop=smart&auto=webp&s=eaa8c6a12859375e7759d497f2e2886fbe5981d8)
[Showcase] Local AI for documents and photos — Paperless-ngx, Immich, Ollama, ChromaDB, MCP
**What:** A local, self-hosted AI layer for interacting with my own documents and photos without sending anything to the cloud.
**Stack:**
- Paperless-ngx — document archive, OCR, structured metadata
- Immich — photos and video
- ChromaDB — semantic index
- Ollama — local LLM inference
- Open WebUI + MCP — unified interface
- LiteLLM — model routing
**Why I built it:** Wanted to ask questions about my own paperwork and photos without cloud AI. Paperless-ngx became the document layer at the core.
**Key learnings:**
- Deterministic MCP tools > LLM reasoning for counts, sums, filters. The model hallucinated invoice tallies; an API query tool does not.
- For structured fields (supplier, total, VAT, invoice number), strict routing in the system prompt is essential. "Query Paperless, never the semantic index."
**Context:** I'm on Paperless 3.0.3 with native AI features. This complements rather than replaces them — broader scope (photos/video), MCP-based deterministic operations, Paperless remains source of truth.
**Docs:** https://github.com/fwinchi/ia-local-casa (Spanish + English, includes failures)
Not a developer — built with AI assistance and a lot of testing. Feedback welcome, especially on security or architecture.