A persistent memory layer for Claude Desktop that enables semantic search and CRUD operations on your Obsidian vault using local embeddings and PostgreSQL+pgvector.
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find.
Install from
M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.
process.env. You'll be asked to provide them before it can run.OBSIDIAN_VAULTS— To index multiple vaults, set to a comma-separated list of absolute paths:OBSIDIAN_VAULT— "/path/to/your/vault" POSTGRES_PASSWORD=obsidian docker compose up -dOSM_DATA_DIRXDG_DATA_HOMEOSM_PROJECT_ROOTProgramFilesDATABASE_URL— Full connection string (overrides POSTGRES_ vars) built from POSTGRES_ varsPOSTGRES_HOST— PostgreSQL host localhostPOSTGRES_PORT— PostgreSQL port 5432POSTGRES_DB— Database name obsidian_brainPOSTGRES_USER— Database user obsidianPOSTGRES_PASSWORD— OBSIDIAN_VAULT="/path/to/your/vault" =obsidian docker compose up -dOLLAMA_URL— Ollama API endpoint http://localhost:11434EMBEDDING_MODEL— Ollama model for embeddings nomic-embed-textDASHBOARD_PORTOBSIDIAN_IGNORE_PATHS— Comma-separated vault-relative path segments to skip during indexing and watching. Defaults to archive; set it to an empty string to index archived notes. archiveDOCKER_BINOSM_DOCKEROSM_DOCKER_WAITEMBED_TIMEOUTEMBED_WORKERS— Parallel threads for bulk indexing 4EMBED_BATCH_SIZERERANK_MODEL— Optional Ollama model for cross-encoder re-ranking (e.g. llama3.2). Disabled when empty. —RERANK_CANDIDATES— Candidate pool size fetched before re-ranking 20VAULT_WATCH_POLLINGVAULT_POLL_INTERVAL[](https://m8ven.ai/mcp/celstnblacc-obsidian-semantic-mcp-lm4rii)