返回 MCP 目录
public公开dns本地运行

mcp-obsidian

该项目是一个MCP服务器,用于通过Obsidian的Local REST API插件与Obsidian笔记应用交互。它提供了多种工具来操作和管理Obsidian中的文件,包括列出文件、获取文件内容、搜索、修改内容和删除文件等。

article

README

🚀 Obsidian 的 MCP 服务器

MCP 服务器可借助 Obsidian 社区插件的 Local REST API 与 Obsidian 进行交互,为用户提供便捷的操作体验。

🚀 快速开始

📦 安装指南

Obsidian REST API

需安装并启用 Obsidian REST API 社区插件:https://github.com/coddingtonbear/obsidian-local-rest-api 。在设置中完成安装与启用操作后,复制 API 密钥。

Claude Desktop

  • MacOS:配置文件路径为 ~/Library/Application\ 支持/Claude/claude_desktop_config.json
  • Windows:配置文件路径为 %APPDATA%/Claude/claude_desktop_config.json%
开发/未发布的服务器配置
{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "uv",
      "args": [
        "--directory",
        "<dir_to>/mcp-obsidian",
        "run",
        "mcp-obsidian"
      ]
    }
  }
}
已发布的服务器配置
{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "uvx",
      "args": [
        "mcp-obsidian"
      ],
      "env": {
        "OBSIDIAN_API_KEY" : "<YOUR_OBSIDIAN_API_KEY>"
      }
    }
  }
}

✨ 主要特性

🔧 工具

该服务器实现了多个工具以与 Obsidian 交互:

  • list_files_in_vault:列出 vault 根目录中的所有文件和目录。
  • list_files_in_dir:列出特定 Obsidian 目录中的所有文件和目录。
  • get_file_contents:返回 vault 中单个文件的内容。
  • search:在 vault 中的所有文件中搜索与指定文本查询匹配的文档。
  • patch_content:相对于标题、块引用或前端字段插入内容到现有笔记中。
  • append_content:追加内容到新文件或现有文件中。
  • delete_file:从 vault 中删除文件或目录。

💡 示例提示

首先指示 Claude 使用 Obsidian,然后它将始终调用工具。可使用以下提示:

  • 获取上次架构通话笔记的内容并总结它们。
  • 搜索所有提到 Azure CosmosDb 的文件,并快速解释其上下文。
  • 总结上次会议记录并将它们放入新笔记 'summary meeting.md' 中。添加介绍以便我可以通过电子邮件发送。

📚 详细文档

⚙️ 配置

Obsidian REST API 密钥

有两种方式配置环境以使用 Obsidian REST API 密钥。

  1. 添加到服务器配置(推荐)
{
  "mcp-obsidian": {
    "command": "uvx",
    "args": [
      "mcp-obsidian"
    ],
    "env": {
      "OBSIDIAN_API_KEY": "<your_api_key_here>",
      "OBSIDIAN_HOST": "<your_obsidian_host>"
    }
  }
}
  1. 在工作目录中创建一个 .env 文件 包含以下所需变量:
OBSIDIAN_API_KEY=your_api_key_here
OBSIDIAN_HOST=your_obsidian_host

⚠️ 重要提示

您可以在 Obsidian 插件配置中找到密钥。

🔧 技术细节

🛠️ 构建

要准备分发包,需同步依赖项并更新锁定文件:

uv sync

🐞 调试

由于 MCP 服务器通过 stdio 运行,调试可能具有挑战性。为了获得最佳的调试体验,我们强烈推荐使用 MCP 检查器

您可以通过以下命令启动 MCP 检查器:

npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-obsidian run mcp-obsidian

启动后,检查器会显示一个 URL,您可以在浏览器中访问以开始调试。

您还可以通过以下命令查看服务器日志:

tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-obsidian.log
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端