← All projects

Personal knowledge graph

My notes, people, places, projects and tasks as a typed graph with semantic search, and an MCP server so an AI assistant can file things for me.

Status
Active · 2026–
Stack
  • Python
  • FastAPI
  • PostgreSQL
  • pgvector
  • SvelteKit
  • MCP

This replaced my Obsidian vault. Everything I want to remember goes in one place: notes, people, places, projects, tasks, web clippings, even my D&D campaigns.

It's a graph. Each note has a type (a person, a place, a project, and so on) with its own fields and a Markdown body, and notes connect to each other with typed links. I can add new types and fields while it runs, without touching the code.

Search works on words and on meaning, so a description like "the guy who fixed the furnace" finds the right person. Under the hood, that's embeddings (a numeric fingerprint of what each note means) stored in PostgreSQL with pgvector.

There are three ways in: a web app I can install on my phone, a REST API for my other tools, and an MCP server (MCP is the protocol AI assistants use to call outside tools). The MCP part is what I use most. I tell an AI assistant something in my own words, and it finds what already exists, creates what's missing and links it all. Anything risky, like deleting or merging notes, stays a proposal until I approve it in the web app.

I also wrote a small browser extension that saves web pages into it as Markdown, and warns me when I've already saved something similar.