项目简介
Obsidian MCP Server 是一款 Obsidian 插件,它在本地启动一个 Model Context Protocol (MCP) 服务器。该服务器允许外部应用程序,如 AI 助手、脚本或其他工具,通过标准化的 MCP 接口与您的 Obsidian Vault 进行交互。通过此插件,您可以利用 LLM 的能力来增强 Obsidian 的功能,例如进行语义搜索、文件管理和内容编辑等。
主要功能点
- 本地 MCP 服务器: 基于 SSE (Server-Sent Events) 协议运行本地 MCP 服务器,允许客户端实时接收服务器推送的信息。
- Obsidian Vault 交互工具: 提供一系列预置工具,使 LLM 能够访问和操作 Obsidian Vault 中的数据,包括:
- 'simple_vector_search': 在 Obsidian Vault 的笔记中执行语义向量搜索。
- 'count_entries': 报告向量数据库中已索引的文档块数量。
- 'list_files': 列出 Obsidian Vault 中指定目录下的文件和文件夹。
- 'read_file': 读取 Obsidian Vault 中指定文件的内容,并可选择显示行号。
- 'write_file': 在 Obsidian Vault 中创建新文件。
- 'edit_file': 编辑 Obsidian Vault 中现有文件的指定行范围。
- Vault 索引和语义搜索:
- 自动索引 Markdown 笔记的内容到 Orama 向量数据库,用于语义搜索。
- 支持配置 OpenAI 兼容的 Embedding 模型(例如 OpenAI,或通过 Ollama 等本地模型)。
- 可自定义文本分块参数和文件排除规则('.gitignore' 语法)。
- Obsidian 集成:
- 提供 Obsidian 命令面板操作,方便启动/停止 MCP 服务器、重建索引、手动保存数据库等。
- 提供设置选项卡,用于配置服务器端口、Embedding 模型、文件排除模式、分块参数等。
- 在 Obsidian Ribbon 区域显示服务器运行状态图标。
安装步骤
- 安装插件: 在 Obsidian 社区插件市场中搜索 "Obsidian MCP Server" 并安装。
- 启用插件: 在 Obsidian 设置 -> 社区插件 中启用 "Obsidian MCP Server" 插件。
服务器配置
对于 MCP 客户端,您需要配置连接到 Obsidian MCP Server。由于该服务器作为 Obsidian 插件运行,无需指定启动命令,只需配置服务器名称和连接参数即可。以下是一个 JSON 格式的 MCP 客户端配置示例,您需要根据您的实际情况进行调整:
{ "serverName": "ObsidianMCP", "transport": "sse", "endpoint": "http://localhost:8080/sse" }
配置参数说明:
- 'serverName': 服务器名称,您可以自定义,例如 "ObsidianMCP"。
- 'transport': 传输协议,本插件使用 SSE,因此设置为 '"sse"'。
- 'endpoint': 服务器端点 URL,默认为 'http://localhost:8080/sse'。请注意,如果您的 Obsidian MCP Server 插件配置了不同的端口,请将 '8080' 替换为您的实际端口号。 您可以在 Obsidian 的 "Obsidian MCP Server" 插件设置中查看和复制完整的 MCP Endpoint。
无需配置 'command' 和 'args',因为 Obsidian MCP Server 作为 Obsidian 插件运行,由 Obsidian 自身启动和管理。
基本使用方法
- 配置插件: 打开 Obsidian 设置 -> 社区插件 -> Obsidian MCP Server,配置 Embedding 模型 (Model Provider URL, Embedding Model, API Key) 和向量存储相关设置。
- 索引 Vault: 在 Obsidian 命令面板中运行 "MCP Server: Re-index Vault" 命令,重建向量数据库索引。首次使用或 Vault 内容更新后,都需要执行此操作。索引过程可能较长,请耐心等待完成通知。
- 启动服务器: 确保 MCP 服务器处于运行状态。您可以在插件设置中启用 "Auto Start MCP" 以在 Obsidian 启动时自动启动服务器,或使用命令面板中的 "MCP Server: Start Server" 命令手动启动。
- 连接 MCP 客户端: 在您的 MCP 客户端(如 AI 助手)中,配置连接到 Obsidian MCP Server,使用上述提供的 JSON 配置信息。
- 使用工具: 在 MCP 客户端中使用插件提供的工具 ('simple_vector_search', 'list_files', 'read_file' 等) 与您的 Obsidian Vault 进行交互。
注意事项
- 首次使用或更改配置后,请务必重新索引 Vault 以确保向量搜索功能正常工作。
- 索引过程可能消耗一定的 API 调用量,请关注您的 Embedding 模型服务提供商的计费情况。
- 如果 Vault 中笔记数量过多,索引过程可能会失败或占用大量资源。请根据您的 Vault 大小和硬件配置合理使用。
- 插件处于开发阶段,可能存在 Bug 或功能不完善之处,欢迎提交 Issue 或 Pull Request。
信息
分类
数据库与文件