Samen Steeve
MY SERVICES.
Back to case studies
AI AutomationCloud Architecture

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

n8nMCPRAGQdrantOllamaDeepSeekDockerGitHub
7

Production n8n Workflows

Ingestion, Ask, KB Query, Add Note, MCP Server, Housekeeping, Project Details

0

Extra API Cost

100% local embeddings (Ollama) + existing opencode key

3

MCP Tools

second_brain_ask (read) + second_brain_add (write) + second_brain_project_details (read the source) behind a single URL

75%

Duplicate Gate

Redundant writes refused, warning from 55% similarity

Executive Summary

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.

Start a project