
Obsidian Semantic Search
A read-only semantic search layer for Obsidian vaults that keeps agents from mutating your notes. Uses local Ollama embeddings (default bge-m3) and stores a SQLite index outside your vault. Exposes four tools: index_status, index_vault (incremental or full rebuild), search_notes (hybrid semantic plus FTS5 keyword ranking), and read_note (by path or line range). Blocks .obsidian, personal folders, and symlink escapes by default. The index splits notes by heading and creates file-level summary chunks, then regroups search results into per-file matches with snippets and line ranges. Reach for this when your agent needs to find the right note by meaning without exposing write, rename, or delete operations.
- tools
- 4
- auth
- Required
- transport
- STDIO
- env vars
- 8
- last updated
- Jun 3, 2026
Tools
4 toolsPublic tool metadata for what this MCP can expose to an agent.
index_statusReturns index metadata and safety settings.
Returns index metadata and safety settings.
No parameter schema in public metadata yet.
index_vaultBuilds or updates the external SQLite index.
Builds or updates the external SQLite index.
No parameter schema in public metadata yet.
search_notesSearches notes with hybrid semantic and keyword ranking.
Searches notes with hybrid semantic and keyword ranking.
No parameter schema in public metadata yet.
read_noteReads a note or line range by vault-relative path.
Reads a note or line range by vault-relative path.
No parameter schema in public metadata yet.
Sponsors
Configuration
OBSIDIAN_VAULT_ROOT*Absolute path to the local Obsidian vault.
OBSIDIAN_SEMANTIC_MCP_HOMEDirectory for the external SQLite index, logs, and cache.
OBSIDIAN_EMBED_MODELOllama embedding model name. Defaults to bge-m3.
OLLAMA_BASE_URLOllama API base URL. Defaults to http://localhost:11434.
OBSIDIAN_SEMANTIC_STARTUP_INDEXSet to true to run incremental indexing when the server starts.
OBSIDIAN_SEMANTIC_ALLOW_SENSITIVESet to true to allow include_sensitive tool calls.
OBSIDIAN_SEMANTIC_EXCLUDEComma- or newline-separated folders to always exclude from indexing, search, and read.
OBSIDIAN_SEMANTIC_SENSITIVE_PATHSComma- or newline-separated folders treated as sensitive (blocked unless unlocked). Defaults to 08_PersonalInfo/.
Readme
Obsidian Semantic Search MCP
Read-only semantic retrieval for agents that need to find the right Obsidian note without write access.
한국어 · Quick Start · Why This Exists · How It Works
Your Obsidian vault is useful only if your agent can find the right note.
Details
- Repository
- github.com/dalecb/obsidian-semantic-mcp
- Categories
- AI & LLM Tools, Documents & Knowledge, Search & Web Crawling
- Package
@dalecb/obsidian-semantic-mcp- Transport
- STDIO
- Auth
- Required
- Registry
- MCP registry, active