# Obsidian Semantic Search MCP server

Read-only semantic search MCP server for Obsidian vaults using local Ollama embeddings.

## At a glance

Obsidian Semantic Search is an MCP server in the Dev Tools & Git category. It runs locally over stdio via `npx -y @dalecb/obsidian-semantic-mcp`, and needs OBSIDIAN_VAULT_ROOT. It exposes 7 tools, including index_status, index_vault and search_notes. It scores A (80/100) on the MCP Skills Hub health score as of Oct 28, 2026.

## Install

### How to install Obsidian Semantic Search in Claude Code

1. Add the server

```bash
claude mcp add obsidian-semantic-mcp -e 'OBSIDIAN_VAULT_ROOT=<OBSIDIAN_VAULT_ROOT>' -- npx -y @dalecb/obsidian-semantic-mcp
```

2. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

3. Verify it's connected

```bash
claude mcp list
```

4. Sharing it with your team?

   Add `--scope project` to write it to .mcp.json in the repository root, which you can commit (with the secrets left as environment variables).

5. Use it in a session

   Ask Claude to use the tools this server exposes (e.g. index_status, index_vault, search_notes). It discovers them automatically.

### How to install Obsidian Semantic Search in Claude Desktop

1. Open your MCP config

   macOS: ~/Library/Application Support/Claude/claude_desktop_config.json · Windows: %APPDATA%\Claude\claude_desktop_config.json

2. Add this server

```json
{
  "mcpServers": {
    "obsidian-semantic-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dalecb/obsidian-semantic-mcp"
      ],
      "env": {
        "OBSIDIAN_VAULT_ROOT": "<OBSIDIAN_VAULT_ROOT>"
      }
    }
  }
}
```

3. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

4. Restart Claude Desktop

   The tools appear under the 🔌 menu once the app reloads.

### How to install Obsidian Semantic Search in Cursor

1. Create / edit .cursor/mcp.json in your project

```json
{
  "mcpServers": {
    "obsidian-semantic-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dalecb/obsidian-semantic-mcp"
      ],
      "env": {
        "OBSIDIAN_VAULT_ROOT": "<OBSIDIAN_VAULT_ROOT>"
      }
    }
  }
}
```

2. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

3. Enable it

   Cursor Settings → MCP → toggle the server on. Tools become available to the Composer/Agent.

### How to install Obsidian Semantic Search in Codex CLI

1. Add to ~/.codex/config.toml

```toml
[mcp_servers.obsidian-semantic-mcp]
command = "npx"
args = ["-y", "@dalecb/obsidian-semantic-mcp"]
env = { OBSIDIAN_VAULT_ROOT = "<OBSIDIAN_VAULT_ROOT>" }
```

2. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

3. Run Codex

   Codex loads MCP servers from config.toml on startup and exposes their tools to the agent.

### How to install Obsidian Semantic Search in Windsurf

1. Edit ~/.codeium/windsurf/mcp_config.json

```json
{
  "mcpServers": {
    "obsidian-semantic-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dalecb/obsidian-semantic-mcp"
      ],
      "env": {
        "OBSIDIAN_VAULT_ROOT": "<OBSIDIAN_VAULT_ROOT>"
      }
    }
  }
}
```

2. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

3. Reload

   Windsurf → Cascade → refresh MCP servers. Cascade can now call the tools.

### How to install Obsidian Semantic Search in Cline

1. Open Cline → MCP Servers → Configure

   Adds to cline_mcp_settings.json.

2. Add the server

```json
{
  "mcpServers": {
    "obsidian-semantic-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@dalecb/obsidian-semantic-mcp"
      ],
      "env": {
        "OBSIDIAN_VAULT_ROOT": "<OBSIDIAN_VAULT_ROOT>"
      }
    }
  }
}
```

3. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

### How to install Obsidian Semantic Search in VS Code

1. Create .vscode/mcp.json

```json
{
  "servers": {
    "obsidian-semantic-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@dalecb/obsidian-semantic-mcp"
      ],
      "env": {
        "OBSIDIAN_VAULT_ROOT": "<OBSIDIAN_VAULT_ROOT>"
      }
    }
  }
}
```

2. Fill in your credentials

   Replace <OBSIDIAN_VAULT_ROOT> with your real value. Keep secrets out of any config file you commit.

3. Start it

   VS Code shows a ▶ Start action above the server entry. Agent mode (Copilot Chat) can then use the tools.

## Tools

- `index_status` — Returns index metadata and safety settings.
- `index_vault` — Builds or updates the external SQLite index.
- `search_notes` — Searches notes with hybrid semantic and keyword ranking.
- `hybrid` — semantic vector + SQLite FTS5 + metadata boosts
- `semantic` — vector-first search
- `keyword` — FTS5 keyword search without embedding the query
- `read_note` — Reads a note or line range by vault-relative path.

Source repository: https://github.com/DalecB/obsidian-semantic-mcp

---

Source: https://mcp-skills-hub.vercel.app/mcps/io-github-dalecb-obsidian-semantic-mcp · MCP Skills Hub · data as of 2026-10-28T12:31:05Z
