Second Brain - AI-Accessible Personal Knowledge Base over MCP
A self-hosted second brain: an Obsidian vault made readable AND writable by any AI via MCP (OAuth) - local RAG (Ollama + Qdrant), DeepSeek generation, idempotent differential indexing, human-validated AI writes.
My role
AI Architect & Software Engineer
Period
September 2026 - ongoing
Production n8n Workflows
Ingestion, Ask, KB Query, Add Note, MCP Server, Housekeeping, Project Details
Extra API Cost
100% local embeddings (Ollama) + existing opencode key
MCP Tools
second_brain_ask (read) + second_brain_add (write) + second_brain_project_details (read the source) behind a single URL
Duplicate Gate
Redundant writes refused, warning from 55% similarity
Personal AI engineering project: a second brain - an Obsidian knowledge base versioned on a private GitHub repo, indexed by n8n into Qdrant (100% local Ollama bge-m3 embeddings) and generated with DeepSeek V4 Flash Vision. Exposed to any AI through a dedicated MCP server (OAuth): reading (RAG with sources), writing (auto-classified, deduplicated notes held in quarantine until human validation) and reading a project's source (README or a specific GitHub file, on demand). Differential indexing with deterministic IDs: idempotent, duplicate-free, ~2 s in steady state.
01. Re-Explaining Context in Every Conversation
Every AI conversation started from zero. The most concrete proof was my internship applications: for every opening, I adapted my CV, and the AI helping me didn't know me, or was out of date. I re-explained my context, my experience, my projects, whatever matched the role. When I forgot a detail, I went back to another AI to find it. My profile was scattered across several AIs, each with its own version of me. I wanted a knowledge base any AI could query AND enrich, without depending on a single tool.
"An AI doesn't need to memorize everything: it should be able to read my base when needed - and only write to it with my approval."
02. Dedicated MCP Server, Local RAG & Human Validation
The architecture relies on a dedicated MCP server (MCP Server Trigger + Custom Workflow Tool) exposing only three tools, never n8n's admin surface. Reading runs through a full RAG: local Ollama bge-m3 embeddings, Qdrant semantic index, DeepSeek V4 Flash Vision generation via the OpenCode Go gateway. Writing is gated: every note proposed by an AI is auto-classified (type, tags, folder), checked against duplicates, and quarantined (status: pending) until validation. A third tool lets the AI dive into a project's source (README or a specific GitHub file) on demand.
Second brain architecture: ingestion Obsidian, Git, n8n, Qdrant and Ollama, access over MCP
Scoped MCP (3 tools)
second_brain_ask + second_brain_add + second_brain_project_details - never n8n's admin tools.
Source reading on demand
The AI goes to find the real implementation of a feature in the code (GitHub), without bloating the vault. Extensible to other tools (GitLab, issues, internal docs).
Privacy by design
100% local embeddings (Ollama) on my VPS - no third party indexes my notes.
Quarantine & human validation
No AI write enters the base without approval (anti prompt-injection).
Deduplication + classification
Semantic similarity (refuse ≥ 75%), LLM classification (type, tags, folder), weekly report.
Differential & idempotent indexing
Deterministic IDs (content hash): only new or changed chunks are recomputed (~2 s in steady state), no duplicates, no data loss.
03. Impact & Results
A single MCP URL is enough: ChatGPT, Claude, Cursor or opencode can read my base (sourced answers) and enrich it (classified, quarantined notes). Everything runs in production with zero extra API cost, and a quality pipeline (dedup on write, weekly housekeeping) keeps the base clean and well-organized. And it doesn't stop at applications: the same base helps prepare an interview, find a technical decision, or feed my articles. Time saved every time. And above all, the AI knows how I develop: on a new project, it applies my conventions and best practices, instead of producing generic code.
A similar project?
Let's discuss your needs. I will get back to you within 24 hours with a concrete analysis.
