README
🚀 Obsidian索引MCP服务器
这是一个具备语义搜索功能的MCP服务器,它依托Obsidian保险库,能将近期的笔记资源对外公开,为用户提供便捷的笔记搜索与访问服务。
✨ 主要特性
资源提供
服务器会把保险库中最近修改的笔记当作资源提供给MCP客户端。这些笔记具有以下特点:
- 通过
obsidian://<VAULT_NAME>/<NOTE_PATH>自定义URL方案进行唯一标识。 - 笔记的媒体类型为
text/markdown。
实用工具
服务器实现了一个实用工具:
search-notes:可在已索引的笔记上执行语义搜索。
📦 安装指南
运行服务器
使用以下命令来运行服务器:
uv run obsidian-index mcp --vault <VAULT_PATH> --database <DATABASE_PATH> --reindex --watch
参数说明:
--vault:保险库路径(可多次指定)。--database:本地数据库文件路径(若不存在则会自动创建)。--reindex:对所有保险库中的笔记重新进行索引(目前可能每次运行此命令时都需使用)。--watch:监视保险库中的更改,并相应地更新索引。
Claude Desktop配置
- MacOS:配置文件路径为
~/Library/Application\ Support/Claude/claude_desktop_config.json。 - Windows:配置文件路径为
%APPDATA%/Claude/claude_desktop_config.json%。
开发/未发布的服务器配置
``` "mcpServers": { "obsidian-index": { "command": "uv", "args": [ "--directory", "", "run", "obsidian-index", "--database", "", "--vault", "", "--reindex", "--watch" ] } } ```已发布的服务器配置
``` "mcpServers": { "obsidian-index": { "command": "uvx", "args": [ "obsidian-index", "--database", "", "--vault", "", "--reindex", "--watch" ] } } ```💻 使用示例
基础用法
运行服务器的基础命令如下:
uv run obsidian-index mcp --vault <VAULT_PATH> --database <DATABASE_PATH> --reindex --watch
📚 详细文档
构建和发布
若要准备分发包,可按以下步骤操作:
- 同步依赖并更新锁定文件:
uv sync
- 构建发行版:
uv build
此操作会在dist/目录下创建源代码和wheel发行版。
3. 发布到PyPI:
uv publish
注意:您需要通过环境变量或命令行参数设置PyPI凭证:
- 令牌:
--token或UV_PUBLISH_TOKEN。 - 或者用户名/密码:
--username/UV_PUBLISH_USERNAME和--password/UV_PUBLISH_PASSWORD。
调试
由于MCP服务器通过标准输入输出运行,调试可能存在一定挑战。为获得最佳调试体验,强烈推荐使用MCP Inspector。
您可以使用以下命令启动MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory <PATH_TO_PROJECT> run obsidian-index
启动后,Inspector会显示一个URL,您可在浏览器中访问该URL以开始调试。
Scan to contact