Obsidian Hybrid Search MCP Server

Search Obsidian vaults with hybrid full-text, fuzzy, semantic, and graph retrieval.

Local serverstdio

What is the Obsidian Hybrid Search MCP server?

Obsidian Hybrid Search MCP server exists for a simple reason — assistants are far more useful when they can act on Obsidian Hybrid Search directly instead of describing what you should do. Search Obsidian vaults with hybrid full-text, fuzzy, semantic, and graph retrieval.

What you get

Your Obsidian vault already contains your best thinking. Obsidian Hybrid Search makes that thinking easier to find, reuse, and bring into AI-assisted work.

  • Hybrid search —
  • BM25 + fuzzy title + semantic embeddings, fused with RRF
  • Alias search —
  • notes with aliases: in frontmatter are indexed and searchable by any alias; alias matches are boosted in BM25 (weight 5×) and fuzzy title scoring
  • Four search modes —
  • hybrid, semantic, fulltext, title (for text queries)

Setting it up

The server ships on npm as obsidian-hybrid-search, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.

What the assistant can call

Once Obsidian Hybrid Search is connected, these are the calls the assistant has available:

  • search — Search the vault. Use query for text search (mode: hybrid/semantic/fulltext/title) or path for semantic similarity. Combine path with related: true
  • read — Fetch one or more notes by vault-relative path. Returns full content, title, aliases, tags, links, and backlinks. On path miss: returns found: false
  • reindex — Reindex the vault or a specific file
  • status — Show total notes, indexed count, last indexed time

Configuration and credentials

You will need 8 environment variables: OBSIDIAN_VAULT_PATH, OBSIDIAN_PREFIX, OBSIDIAN_RESPECT_GITIGNORE, OBSIDIAN_IGNORE_PATTERNS, OBSIDIAN_INCLUDE_PATTERNS, OPENAI_API_KEY, OPENAI_BASE_URL, OPENAI_EMBEDDING_MODEL. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

Before you rely on it

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the obsidian hybrid search mcp server does with a few real requests.

Choosing this one

This sits in the planning and project tracking group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Obsidian Hybrid Search's toolset — search, read, reindex and 1 more — is a fair guide to whether it matches your workflow. It is maintained by flowing-abyss; worth a glance at recent repository activity before you build anything load-bearing on it.

This entry was verified against Obsidian Hybrid Search's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.

Available tools

ToolWhat it does
searchSearch the vault. Use query for text search (mode: hybrid/semantic/fulltext/title) or path for semantic similarity. Combine path with related: true for graph traversal. Pass queries[] for multi-query fan-out (parallel se
readFetch one or more notes by vault-relative path. Returns full content, title, aliases, tags, links, and backlinks. On path miss: returns found: false with top-3 fuzzy suggestions. Accepts a single path or an array. Use sn
reindexReindex the vault or a specific file
statusShow total notes, indexed count, last indexed time

How to install the Obsidian Hybrid Search MCP server

### Full config (OpenRouter)

```json
{
  "mcpServers": {
    "obsidian-hybrid-search": {
      "command": "npx",
      "args": ["-y", "-p", "obsidian-hybrid-search@latest", "obsidian-hybrid-search-mcp"],
      "env": {
        "OBSIDIAN_VAULT_PATH": "/path/to/your/vault",
        "OBSIDIAN_PREFIX": "myvault_",
        "OBSIDIAN_RESPECT_GITIGNORE": "true",
        "OBSIDIAN_IGNORE_PATTERNS": ".obsidian/**,templates/**,*.canvas",
        "OBSIDIAN_INCLUDE_PATTERNS": "private/notes/**",
        "OPENAI_API_KEY": "sk-or-v1-...",
        "OPENAI_BASE_URL": "https://openrouter.ai/api/v1",
        "OPENAI_EMBEDDING_MODEL": "openai/text-embedding-3-small"
      }
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

VariableDescriptionRequired
OBSIDIAN_VAULT_PATHFilesystem location the server is allowed to use.Optional
OBSIDIAN_PREFIXConfiguration value read at startup.Optional
OBSIDIAN_RESPECT_GITIGNOREConfiguration value read at startup.Optional
OBSIDIAN_IGNORE_PATTERNSConfiguration value read at startup.Optional
OBSIDIAN_INCLUDE_PATTERNSConfiguration value read at startup.Optional
OPENAI_API_KEYCredential the server authenticates with.Yes
OPENAI_BASE_URLEndpoint or connection string the server talks to.Yes
OPENAI_EMBEDDING_MODELConfiguration value read at startup.Optional

Example prompts to try

  • Use Obsidian Hybrid Search to search.
  • Use Obsidian Hybrid Search to read.
  • Use Obsidian Hybrid Search to reindex.

Frequently asked questions

It connects Obsidian Hybrid Search to MCP-compatible AI assistants such as Claude and Cursor, exposing 4 tools (search, read, reindex, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Obsidian Hybrid Search directly.