Obsidian Librarian
<p align="center"> <img src="docs/cover.png" alt="Obsidian Librarian" width="100%"> </p>Semantic search for your Obsidian vault, straight from Claude.
Obsidian Librarian is an MCP server that gives Claude semantic search over your Obsidian notes. It indexes your vault's Markdown files and exposes search and reindex tools, so Claude can find the right notes mid-conversation.
It turns your vault into a true second brain: ask a question in plain language and get back the notes that actually answer it, ranked by what they mean rather than the exact words you typed. A search for "volatility regime change" will surface a note about "GARCH structural breaks" even if your wording never appears in it.
The goal is a self-growing knowledge base. Because Claude can both search the vault and write to it, your notes stop being a static archive: Claude finds what you already know, fills the gaps, and links new notes back in, so the vault keeps getting richer the more you use it.
Features

- Meaning Based Search: Ask in plain language, get notes ranked by what they mean.
- Indexing .md Notes: Builds searchable index of vault notes.
- Auto Reindexing: Reindex notes that changed.
Prerequisites
- Claude Code: runs the MCP server.
- Obsidian vault: Markdown notes you want to search.
- uv and Python 3.13: run the project.
- Voyage API key: powers meaning-based search.
Setup
Register Obsidian Librarian with Claude as a user-scope MCP server (available in every session):
claude mcp add obsidian-librarian --scope user \
-e VOYAGE_API_KEY=your-voyage-key \
-e VAULT_PATH=/path/to/your/vault \
-- uv run --directory /path/to/obsidian-librarian obsidian-librarian