Project Zurvan
Project Zurvan is a local-first LLM knowledge engine that turns raw documents into a linked, searchable, git-friendly wiki, then exposes that wiki to AI agents via a Model Context Protocol (MCP) server. Inspired by Andrej Karpathy's personal knowledge management gist, Zurvan is designed for researchers, engineers, and agents that need structured long-term memory without cloud lock-in.
01. Problem
LLM agents lack persistent, structured memory that survives between sessions. Existing RAG pipelines either require cloud infrastructure or lose the relational structure of knowledge, which claim supports which decision, which concept contradicts another. A local-first solution needs to ingest arbitrary documents, preserve knowledge relationships as a graph, and present the result to agents in a queryable, privacy-preserving format.
02. Solution Overview
- Built a local document ingestion pipeline (MD, PDF, TXT, images) feeding a SQLite-backed knowledge store
- LLM extraction layer produces typed nodes — claims, concepts, entities, decisions — compounded additively across sources as the corpus grows
- Hybrid FTS5 + semantic search with graph-neighbour expansion surfaces deep context bundles for agent prompts
- MCP stdio server exposes zurvan_search, zurvan_context, zurvan_remember, zurvan_decision_add, and graph tools to Claude Code and Cursor
- Multi-project federation manages independent vaults with cross-vault search, contradiction detection, and policy drift radar
Build
Tech Stack
- • Ingests Markdown, PDF, TXT, and images into a linked, searchable, git-friendly wiki
- • LLM extraction layer produces typed knowledge nodes: claims, concepts, entities, and decisions — compounded additively across sources
- • Hybrid FTS5 + semantic search with graph-neighbour expansion surfaces dense context bundles for agent prompts
- • MCP stdio server exposes zurvan_search, zurvan_context, zurvan_remember, zurvan_decision_add, and graph tools to Claude Code and Cursor
- • Multi-project federation — cross-vault search, contradiction detection, and policy radar across independent vaults
- • 218 tests passing across 18 completed phases
Secure
- Local-first by design — no cloud storage or external transmission of document content
- MCP server is read-only by default; write mode requires explicit opt-in flag
- Project paths stored in ~/.zurvan/projects.json — never committed to version control
- Mock LLM provider available for safe dev/test without API key exposure
- Agent memory isolated per vault; cross-vault federation requires explicit registration
03. Proof & Verification
Verified Claims
- >218 tests passing across 18 completed development phases
- >MCP server verified with Claude Code and Cursor client setup guides
- >Obsidian vault integration with colour-coded 7-type knowledge graph (claims, concepts, entities, decisions, sessions, contradictions, syntheses)
- >Evidence pack → report → review → publish pipeline runs fully offline
- >Agent workflow orchestration (preflight / postedit / session close) documented for Claude Code and Codex