Obsidian Claude Sidebar MCP 服务器
使用说明(简明、便于上手):
-
项目简介
- 该仓库实现了一个集成在 Obsidian 插件中的 MCP 服务器,核心功能包括:向 Cl aard Code 等 LLM 客户端暴露工具列表、处理工具调用请求、推送当前选择及编辑器状态等通知,以及在需要时与本地/云端后端协同工作,提供稳定的会话与上下文服务。
- 服务器通过 WebSocket 以 MCP 协议与客户端通信,支持多种运行模式(本地运行 Claude Code、Sprles.cloud 端的云端运行等),并与 Obsidian 的文件系统、编辑器和 diff 审阅流无缝对接。
-
主要功能点
- 工具注册与调用:通过 tools/list、tools/call 接口向客户端提供工具目录、执行结果返回,支持自定义的工具实现(如获取当前选择、打开文件、展示差异、打开工作区等)。
- 会话与能力声明:实现 initialize、notifications/initialized 等 MCP 交互,声明服务能力与协议版本。
- 上下文通知:在选中文本、打开的文件等状态改变时,向 Claude Code 发送 selection_changed 等通知,帮助 LLM 建立环境感知。
- IDE 集成的代理能力:为 Claude Code 提供 IDE 整合能力(本地环境下通过 WebSocket MCP 与 Obsidian 状态对齐;在 Sprites 云端模式下通过 Sprites 代理实现远端 IDE)。
- 本地/云端切换:支持本地部署模式与 Sprites 云端模式,自动处理 SSH/WS 连接、锁文件、端口发现等细节。
- 任何需要时的 Diff 审阅与保存:内置 diff 界面,允许 LLM 提出修改并有 UI 审阅、最终写回本地 Obsidian。
-
安装步骤
- 在 Obsidian 中安装 Claude Sidebar IDE 插件(本仓库的实现即为 MCP 服务器部分)。
- 启用插件,确保 Claude Code(或其他 Claude/CLI 后端)已就绪,可以通过 IDE 集成模式自动发现本地 MCP 服务器。
- 本地模式:Claude Code 将通过环境变量 CLAUDE_CODE_SSE_PORT 发现并连接本地 MCP 服务器;该端口由插件在运行时动态暴露,插件会写入锁文件以便 Claude 自动发现。
- Sprites 云端模式(移动/云端使用):在插件设置中配置 Sprites API Token,插件将创建并管理远端 Sprites,提供 IDE 代理、文件同步与远端工具执行能力。
-
服务器配置(MCP 客户端需要的最小配置示例) 说明:MCP 客户端需要知道如何启动 MCP 服务器。下面给出一个简化的配置示例,说明服务器名称、启动命令及参数。注意:实际运行时,Obsidian 插件内的 MCP 服务器是通过 Claude 的 IDE 集成自动启动并通过本地连接实现的,因此客户端通常只需要知道启动 Claude Code CLI 的命令与参数,以让 Claude Code 安装 IDE 集成并连接本地 MCP 服务。 服务器名称(serverName):obsidian-claude-mcp-server 启动命令(command):claude 启动参数(args):--ide 说明:command 为 Claude Code 的 CLI 二进制名,args 通过 --ide 将 IDE 集成模式开启,MCP 客户端随后通过本地锁文件/端口发现机制建立连接。
服务器配置示例(json,仅用于描述,不作为代码块展示): { "serverName": "obsidian-claude-mcp-server", "command": "claude", "args": ["--ide"] }
-
基本使用方法
- 启动与连接:在 Obsidian 中启用 Claude Sidebar IDE 插件后,Cl aard Code 的 IDE 集成会在本地创建一个 MCP 服务器,并通过锁文件/端口自动暴露给 Claude 客户端使用。
- 交互方式:通过 MCP 的 initialize、tools/list、tools/call 等接口,LLM 客户端可以查询工具、调用工具、获取并渲染上下文信息(如当前选中文本、打开的编辑器列表等)。
- 上下文更新:在你在 Obsidian 中切换文件、改变选中文本、打开 diff 等操作时,服务器会发送相应的通知,确保 LLM 获得最新的上下文。
- 远端协作(Sprite 模式):若使用 Sprites 云端模式,Claude Code 将通过 Sprites 代理与 Obsidian 的后端服务进行协同,服务器会在 Sprites 上管理远端工作区、上传/下载 Vault 文件并提供远端 IDE 的连接支持。
- 常见操作:创建新 Claude 标签、Resume last conversation、在文件中打开/编辑、将选中文本发送至 Claude 等等,这些行为都由 MCP 服务器在幕后完成。