MCP server that gives AI models read/write access to Obsidian vaults with semantic search, link graph analysis, canvas manipulation, and incremental indexing.
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.EMBEDDING_PROVIDER— fastembed fastembed, ollama, openai, or mockOLLAMA_URL— To use Ollama instead: docker run ... -e EMBEDDING_PROVIDER=ollama -e =http://ollama:11434 some-vault-some-mcpVAULT_MCP_OVERRIDESsome_vault_some_mcp_OVERRIDES— Path to YAML override fileVAULT_SOFT_DELETE_IS_PERMANENT— false true makes delete_note do hard deletesMCP_PORT— 3789 SSE portVAULT_BLOCKED_PATH_SUFFIXESVAULT_PATH— "": "/path/to/your/obsidian/vault"LANCE_DB_PATH— ./data/vault.lance Where the vector index livesMCP_TRANSPORT— sse sse or stdioMCP_HOST— 127.0.0.1 SSE bind address. Defaults to loopback — set 0.0.0.0 to expose on the network (the Docker image does this explicitly). Binding non-loopback without VAULT_API_KEY logs a warning.VAULT_API_KEY— MCP_HOST 127.0.0.1 SSE bind address. Defaults to loopback — set 0.0.0.0 to expose on the network (the Docker image does this explicitly). Binding non-loopback without logs a warning.VAULT_ALLOW_UNAUTH_SSE— false true exempts the /sse GET from auth — only for clients that cannot send an Authorization header on the SSE stream (Cursor/Claude Code/Claude Desktop all can, so leave false)OPENAI_API_KEY— Required if provider is openai (requires --extra openai)FASTEMBED_MODELFASTEMBED_DIMENSIONS— (auto-detected) Override dimension auto-detection[](https://m8ven.ai/mcp/russellsch-some-vault-some-mcp-1rnhy0)