基本能力
产品定位
Obsidian MCP Server 是一个为 Obsidian 用户设计的插件,旨在通过本地 MCP 服务器实现外部工具与知识库的高效交互。
核心功能
- 本地 MCP 服务器:基于 SSE 的 MCP 服务器,可在可配置端口上运行。
- 知识库交互工具:
simple_vector_search
:使用向量嵌入对索引笔记进行语义搜索。count_entries
:报告向量存储中索引文档块的数量。list_files
:列出知识库中指定目录的文件和文件夹。read_file
:读取特定文件的内容(可选带行号)。write_file
:在知识库中创建新文件。edit_file
:编辑现有文件中特定范围的行。- 知识库索引:
- 将 Markdown 笔记内容索引到 Orama 向量数据库中。
- 使用可配置的 OpenAI 兼容嵌入模型生成嵌入。
- 支持配置文本分块参数(大小、重叠、分隔符)。
- 支持使用
.gitignore
语法排除特定文件或模式。 - Obsidian 集成:
- 提供命令面板命令(启动/停止服务器、重新索引知识库等)。
- 提供设置面板配置服务器端口、嵌入模型、文件排除模式等。
- 添加状态图标到 Obsidian 功能区,显示服务器运行状态。
适用场景
- 开发者希望通过外部工具(如 AI 助手)与 Obsidian 知识库交互。
- 内容创作者需要高效的语义搜索和文件管理功能。
- 需要自动化脚本与知识库集成的用户。
工具列表
simple_vector_search
:语义搜索工具。count_entries
:索引文档计数工具。list_files
:文件列表工具。read_file
:文件读取工具。write_file
:文件创建工具。edit_file
:文件编辑工具。
常见问题解答
- 索引失败:如果知识库包含大量笔记,索引过程可能会失败(
orama.msp
文件超过 512MB)。暂无解决方案,建议减少笔记数量或使用支持分片的向量数据库(如 Pinecone)。
使用教程
使用依赖
- Node.js 和 npm 已安装。
安装教程
- 克隆仓库。
- 运行
npm install
安装依赖。 - 运行
npm run dev
编译插件并监视更改。 - 将
main.js
、manifest.json
和styles.css
复制到 Obsidian 知识库的.obsidian/plugins/mcp-server/
目录。 - 重新加载 Obsidian 并启用插件。
调试方式
- 通过 Obsidian 命令面板运行 "Start MCP Server" 命令启动服务器。
- 使用外部 MCP 客户端连接到
http://localhost:8080/sse
(或配置的端口)。 - 使用提供的工具(如
simple_vector_search
)测试交互。