Obsidian MCP

io.github.seynurmammad0vPublished by GitHub account seynurmammad0vv1.0.3Updated Oct 25, 2026

Turns Obsidian vaults into AI-queryable knowledge graphs with 12 tools

VerifiedSTDIODesktop onlyFiles & StorageKnowledge & Memory

Overview

AI-generated overview

A local MCP server that indexes an Obsidian vault as a link graph, letting an assistant read, search, traverse and edit notes and their wikilinks.

What you can do
Read and discover notes: vault statistics, full note content with frontmatter, links, backlinks and sections, and combined tag, folder, frontmatter and keyword search. Traverse the link graph: direct neighbors, BFS/DFS to a chosen depth, shortest link path between notes, and analysis of components, orphans, bridges, hubs and dead links. Write and reorganize: create notes, append, prepend or replace sections, update frontmatter, move or rename notes with automatic backlink updates, delete notes, and add, remove or rename tags vault-wide.
When to use it
Useful when you keep notes in an Obsidian vault and want an assistant to answer questions across linked notes, trace how notes connect, or make bulk edits such as moving a note and fixing its references. It suits graph-style exploration of a personal knowledge base rather than general file management.
Requirements
Runs locally over stdio via npx, so Node.js is needed. The vault path must be passed with the --vault flag. No database, running Obsidian instance, API keys or environment variables are required; optional settings live in a .obsidian-mcp.json file in the vault root.
Before you install
Write tools change files on disk: create, patch, move and delete notes, and rename tags vault-wide. Moving a note rewrites references across the vault, and deleting reports broken links rather than fixing them. Point it only at a vault you are willing to have modified, and keep backups or version control.

Installation

In SourceWeft

  1. Open Obsidian MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

obsidian-mcp

MCP server that turns any Obsidian vault into an AI-queryable knowledge graph.

What makes this different from the 24+ existing Obsidian MCP servers:

  • Graph-first — BFS, shortest path, connected components, bridge detection via [[wikilinks]]
  • Zero infrastructure — No database, no Obsidian running, no API keys
  • Vault-agnostic — Works with any existing vault, no required structure
  • Backlink-aware writes — move_note auto-updates all references across the vault
  • Tiny — 4 runtime dependencies, ~42KB bundle

Quick Start

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

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

json
{  "mcpServers": {    "obsidian": {      "command": "npx",      "args": ["-y", "obsidian-mcp", "--vault", "/path/to/vault"]    }  }}

Claude Code

bash
claude mcp add obsidian -- npx -y obsidian-mcp --vault /path/to/vault

Tools (12)

Reading & Discovery

ToolDescription
vault_statsOverview: total notes, tags, links, orphans, components, top tags/hubs
read_noteFull content + frontmatter + links + backlinks + sections
search_notesFilter by tags, folder, frontmatter, keyword. All combinable

Graph Traversal

ToolDescription
graph_neighborsDirect links + backlinks for a note
graph_traverseBFS/DFS from a note, N hops deep with tag filtering
graph_shortest_pathShortest link chain between two notes
graph_analyzeComponents, orphans, bridges, hubs, dead links

Writing & Manipulation

ToolDescription
create_noteCreate with content + frontmatter
patch_noteAppend, prepend, or replace a section. Update frontmatter
move_noteRename/move + auto-update all backlinks across vault
delete_noteDelete + report broken links
manage_tagsAdd/remove/rename tags (vault-wide rename supported)

Configuration

Zero-config by default. Optional .obsidian-mcp.json in vault root:

json
{  "ignore": ["templates/", "daily-notes/", ".trash/"],  "watchDebounce": 100,  "maxTraversalDepth": 10,  "maxSearchResults": 500}

CLI Flags

--vault <path>       Path to Obsidian vault (required)--verbose            Enable debug logging--log-level <level>  error | warn | info | debug (default: info)

How It Works

  1. On startup, scans all .md files and builds an in-memory graph (~1-3s for 1k notes)
  2. File watcher detects changes and updates the graph incrementally (~5ms per change)
  3. Claude queries the graph via MCP tools — no re-scanning needed
  4. Write operations update both the filesystem and the graph atomically

Hardcoded exclusions: .obsidian/, .trash/, node_modules/

Development

bash
npm installnpm test              # Run 66 testsnpm run build         # Build to dist/npm run dev -- --vault test/fixtures/vault  # Dev mode

License

MIT

Source: README.md at commit 8008844

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.3LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts