MCP Servers

模型上下文协议服务器、框架、SDK 和模板的综合目录。

M
MCP Obsidian
作者 @jkang8

MCP server by jkang8

创建于 2/25/2026
更新于 about 4 hours ago
Repository documentation and setup instructions

mcp-obsidian

An MCP server that exposes your Obsidian vault to AI assistants via the Model Context Protocol.

Requirements

  • Python 3.12+
  • uv

Installation

git clone https://github.com/johnkang/mcp-obsidian
cd mcp-obsidian
uv sync

Usage

Set the OBSIDIAN_VAULT_PATH environment variable to the absolute path of your vault, then run the server:

OBSIDIAN_VAULT_PATH=/path/to/your/vault uv run mcp-obsidian

Claude Desktop Integration

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "obsidian": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-obsidian", "mcp-obsidian"],
      "env": {
        "OBSIDIAN_VAULT_PATH": "/path/to/your/vault"
      }
    }
  }
}

The config file is located at:

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

Tools

File Operations

| Tool | Description | |------|-------------| | list_files(path="") | List files and folders in the vault or a subdirectory | | read_note(path) | Read the contents of a note | | write_note(path, content) | Create or overwrite a note (parent dirs created automatically) | | append_to_note(path, content) | Append content to the end of an existing note | | delete_note(path) | Delete a note or folder | | move_note(src, dest) | Move or rename a note within the vault |

Search

| Tool | Description | |------|-------------| | search_notes(query) | Case-insensitive full-text search across all .md files | | search_by_tag(tag) | Find all notes containing a specific tag |

Frontmatter

| Tool | Description | |------|-------------| | get_frontmatter(path) | Read the YAML frontmatter of a note | | update_frontmatter(path, key, value) | Set or update a frontmatter field (creates it if absent) |

Links & Graph

| Tool | Description | |------|-------------| | get_backlinks(path) | Find all notes that link to a given note via [[wikilinks]] | | get_outlinks(path) | Extract all [[wikilinks]] from a note | | get_orphans() | Find notes with no incoming or outgoing links |

Daily Notes

| Tool | Description | |------|-------------| | get_daily_note(date_str="") | Read the daily note for a date (defaults to today, format: YYYY-MM-DD) | | create_daily_note(date_str="") | Create a daily note, using a daily template from Templates/ if available |

Utility

| Tool | Description | |------|-------------| | list_tags() | List all tags in the vault with usage counts | | get_recent_notes(n=10) | List the N most recently modified notes | | get_note_stats() | Return vault statistics (note count, word count, tags, links) | | list_templates() | List all templates in the vault's Templates/ folder |

Security

All file paths are validated to prevent path traversal attacks — no operation can escape the configured vault directory.

快速设置
此服务器的安装指南

安装包 (如果需要)

uvx mcp-obsidian

Cursor 配置 (mcp.json)

{ "mcpServers": { "jkang8-mcp-obsidian": { "command": "uvx", "args": [ "mcp-obsidian" ] } } }