Obsidian REST API服务器

MCP服务器通过Local REST API社区插件与Obsidian交互,提供文件管理、内容搜索和编辑等功能。

  • by MoshkaBortmanStar
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 MoshkaBortmanStar/mcp-obsidian-moshka

使用说明

用于Obsidian的MCP服务器

MCP服务器通过本地REST API社区插件与Obsidian进行交互。

组件

工具

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

  • 列出密室中的文件:列出您Obsidian密室根目录中的所有文件和目录
  • `list_files_in_dir`:列出特定Obsidian目录中的所有文件和文件夹
  • `get_file_contents`:返回您保险库中单个文件的内容。
  • 搜索:在保险库中的所有文件中搜索与指定文本查询相匹配的文档
  • `patch_content`:将内容插入到现有笔记中,相对于标题、块引用或前置信息字段的位置。
  • append_content:将内容追加到保险库中的新文件或现有文件中。

示例提示

先指导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>"
    }
  }
  1. 创建一个 .env 在工作目录中,文件需包含以下必需变量:
OBSIDIAN_API_KEY=your_api_key_here

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

快速入门

安装

Obsidian REST API

你需要运行Obsidian REST API社区插件:https://github.com/coddingtonbear/obsidian-local-rest-api

在设置中安装并启用它,然后复制API密钥。

Claude Desktop(可译为“Claude桌面版”或保持原样,根据上下文判断是否需要具体翻译)

在MacOS上: ~/Library/Application\ Support/Claude/claude_desktop_config.json

在Windows上: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Servers Configuration
{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "uv",
      "args": [
        "--directory",
        "<dir_to>/mcp-obsidian",
        "run",
        "mcp-obsidian"
      ]
    }
  }
}
Published Servers Configuration
{
  "mcpServers": {
    "mcp-obsidian": {
      "command": "uvx",
      "args": [
        "mcp-obsidian"
      ],
      "env": {
        "OBSIDIAN_API_KEY" : "<YOUR_OBSIDIAN_API_KEY>"
      }
    }
  }
}

发展

建筑

准备分发的软件包:

  1. 同步依赖项并更新锁定文件:
uv sync

调试

由于MCP服务器是通过标准输入输出(stdio)运行的,因此调试可能会具有挑战性。为了获得最佳的调试效果 根据经验,我们强烈建议使用 MCP 检查器。

你可以通过以下方式启动MCP Inspector: npm 使用这个命令:

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

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

你也可以使用这个命令来查看服务器日志:

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