Obsidian MCP logo

Obsidian MCP

Query and manage an Obsidian vault through 12 MCP tools for notes, links, graph analysis, and tags.

Install Obsidian MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "obsidian-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "obsidian-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command installed and started the server, which then stopped for configuration (such as an API key) that our sandbox does not have — expected for servers that connect to your account.

npx -y obsidian-mcp

Process exited before answering initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked Today.

Overview

Obsidian MCP MCP server connects an AI client to an Obsidian vault by scanning Markdown files and building an in-memory link graph. It provides 12 tools for searching and reading notes, traversing wikilinks, analyzing graph structure, and changing vault content. The file watcher refreshes the graph when files change, while write operations update the filesystem and graph together. Reach for it when an agent needs local, graph-aware access to an existing Obsidian vault without a database, running Obsidian application, or API key.

Use cases

  • Search notes by keywords, tags, folders, or frontmatter
  • Traverse related notes through wikilinks and backlinks
  • Analyze orphaned notes, hubs, bridges, and disconnected components
  • Create, patch, move, or delete vault notes
  • Rename tags across an entire vault

Key features

  • In-memory graph built from Obsidian wikilinks
  • Combined note search filters
  • BFS and DFS graph traversal
  • Shortest-path and graph-structure analysis
  • Backlink-aware note moves
  • Vault-wide tag management

Tools12

What Obsidian MCP lets your agent do. Expand a tool for its parameters.

Self-reported~181 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

7/7 checks healthy over the last 52d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 17d ago via OSV.dev · obsidian-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars1Stargazers on the source repository.
npm downloads17kPackage downloads in the last 30 days.
Last commit7mo agoMost recent push to the default branch.
Install checkRunsOur sandbox started it; it then asked for an API key or config.
Tools exposed12Callable tools this server registers over MCP.

How Obsidian MCP works

What the Obsidian MCP MCP server does

Obsidian MCP MCP server exposes an Obsidian vault to MCP-compatible AI clients as a searchable knowledge graph. It reads .md files, parses note content and frontmatter, and follows Obsidian [[wikilinks]] to represent relationships between notes. The vault does not need a particular folder layout or metadata scheme.

Its 12 tools cover discovery, graph analysis, and file manipulation. Agents can inspect vault-wide statistics, retrieve a note with its links and backlinks, search using combined filters, and examine graph structure such as connected components, orphans, bridges, hubs, and dead links. They can also create, edit, move, delete, and tag notes.

How it works

At startup, the process scans the vault’s Markdown files and constructs the graph in memory. The README reports an approximate startup time of one to three seconds for a vault containing 1,000 notes. A file watcher then applies changes incrementally, with an expected update time of about five milliseconds per change.

Graph tools support direct-neighbor queries, breadth-first or depth-first traversal with a configurable hop limit, and shortest-path searches between notes. Traversal can also filter by tags. When a write tool changes the vault, the filesystem and in-memory graph are updated atomically. Moving a note also updates references to it throughout the vault, while deleting a note reports links that may now be broken.

The process excludes .obsidian/, .trash/, and node_modules/ by default. Additional paths can be ignored through a configuration file in the vault root.

Setup and configuration

Run the server with Node’s package runner and provide the vault path:

Terminal
npx obsidian-mcp --vault ~/my-obsidian-vault

The --vault argument is required. Optional command-line settings enable verbose output and select an error, warning, information, or debug log level.

Claude Desktop can launch it through an MCP configuration entry using npx -y obsidian-mcp --vault /path/to/vault. Claude Code can register the same command with claude mcp add.

An optional .obsidian-mcp.json file can set ignored paths, the file-watch debounce interval, maximum graph traversal depth, and maximum search results. The documented defaults are 100 for watchDebounce, 10 for maxTraversalDepth, and 500 for maxSearchResults.

Tools and capabilities

Reading and discovery tools provide vault statistics, complete note data, and combined searches across keywords, folders, tags, and frontmatter. Graph tools expose backlinks and outgoing links, multi-hop traversal, shortest link chains, and structural analysis.

Writing tools create notes with content and frontmatter, patch note sections or frontmatter, move and rename files, remove notes, and add, remove, or rename tags. Tag renaming can apply across the vault. The Obsidian MCP MCP server therefore fits workflows that need both knowledge retrieval and controlled vault maintenance.

Limitations and notes

The vault must be supplied as a local path, and the server relies on Markdown files and Obsidian-style wikilinks for its graph. No database, running Obsidian instance, or API key is required according to the project documentation. The graph is held in memory and is initially built by scanning the vault, so large vaults may have a startup delay.

It does not describe authentication, remote vault access, or client-specific configuration for other applications. Built-in exclusions and configured ignore paths prevent selected files and directories from entering normal processing.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Obsidian MCP

Obsidian MCP is an MCP server that connects AI clients to a local Obsidian vault. Its main tools search and read notes, inspect backlinks and wikilinks, traverse and analyze the note graph, and create, patch, move, delete, or retag notes. It works from Markdown files without a database, running Obsidian application, or API key.

Run `npx obsidian-mcp --vault /path/to/vault` and replace the path with your Obsidian vault. The `--vault` option is required. Claude Desktop and Claude Code can register this command using the configuration and CLI examples documented by the project.

Yes, Obsidian MCP works with Claude Desktop through an MCP configuration entry. Add a server named `obsidian` with `npx -y obsidian-mcp --vault /path/to/vault` as the command and arguments, then provide the actual vault path.

A file watcher updates the in-memory graph incrementally after vault changes. The server first scans Markdown files at startup, then processes detected changes instead of rescanning the entire vault. Write operations update the filesystem and graph atomically.

Yes, the `move_note` tool renames or moves a note and automatically updates backlinks across the vault. The `delete_note` tool removes a note and reports links that may have become broken.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewObsidian MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/obsidian-mcp?style=directory)](https://allmcps.com/mcp/obsidian-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/obsidian-mcp"><img src="https://allmcps.com/api/badge/obsidian-mcp?style=directory" alt="Obsidian MCP on AllMCPs" /></a>