Obsidian Index Service MCP Server

A service that monitors an Obsidian vault for file changes (new, modified, or deleted Markdown files) and indexes each note’s metadata and content

Local serverstdioPython

What is the Obsidian Index Service MCP Server?

A service that monitors an Obsidian vault for file changes (new, modified, or deleted Markdown files) and indexes each note’s metadata and content into an SQLite

What the server does

This service monitors an Obsidian vault directory and indexes Markdown files—metadata and full content—into an SQLite database. I built it to work with my mcp-server project, but switched to an implementation that uses the Obsidian plugin API instead. I still see use for this as an agnostic note indexer or sync tool (see note under "Future Steps"), so I'm putting it up here.

Credentials and setup notes

  • Python 3.12 or later - Docker and Docker Compose (for containerized use) - uv (optional, but recommended)

More MCP options

Compare MCP servers by category, or browse hosted MCP servers if you prefer an endpoint over a local process.

How to install the Obsidian Index Service MCP Server

{
  "mcpServers": {
    "obsidian-index-service": {
      "command": "uvx",
      "args": ["pytest"],
      "env": {
        "OBSIDIAN_VAULT_PATH": "your-value",
        "DB_PATH": "your-value",
        "DB_VOLUME_PATH": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

  • Python 3.12 or later - Docker and Docker Compose (for containerized use) - uv (optional, but recommended)
VariableDescriptionRequired
OBSIDIAN_VAULT_PATHFilesystem location the server is allowed to use.Optional
DB_PATHFilesystem location the server is allowed to use.Optional
DB_VOLUME_PATHFilesystem location the server is allowed to use.Optional

Example prompts to try

  • “Use Obsidian Index Service to Prerequisites.”
  • “Use Obsidian Index Service to Installation.”

Frequently asked questions

Python 3.12 or later, Docker and Docker Compose (for containerized use), and optionally `uv`.