内容
# MCP 笔记工具
MCP 笔记工具是一款 Obsidian 桌面插件,用于在特定项目中启用本地 MCP 工具。它允许 MCP 客户端搜索笔记、读取选定的笔记,并请求确认的仅追加更改笔记。
## 功能
- `obsidian_search_notes`:搜索笔记标题、相对于 vault 的路径和笔记正文内容。
- `obsidian_get_note`:返回所选 Markdown 笔记的完整当前内容。
- `obsidian_append_change_note`:请求确认,然后在 `Change notes` 部分追加文本,并带有时间戳。
每个笔记引用都包含标题和相对于 vault 的路径。附件、二进制文件和插件配置文件不属于此范围。
## 隐私和安全性
插件在活跃的 Obsidian vault 上本地运行。它不会将笔记内容、文件名、元数据或用户标识符发送到外部服务。
追加请求始终需要在 Obsidian 中进行每次写入确认,然后才能更改任何笔记。现有的笔记内容在追加 `Change notes` 条目之前会被保留。
## 仅限桌面
此插件仅限桌面使用,因为本地 MCP 服务依赖于 Obsidian 移动版中不可用的桌面运行时功能。
## 本地 MCP 端点
在 **设置 -> MCP 笔记工具** 中启用本地 MCP 服务器。设置选项卡显示了端点,默认为:
```text
http://127.0.0.1:39399/mcp
```
配置您的 MCP 客户端以连接到该本地端点,同时 Obsidian 正在运行并且插件已启用。
插件还为需要区分项目 vault 的客户端公开了一个 vault 特定的别名:
```text
http://127.0.0.1:39399/vaults/<vault-slug>/mcp
```
别名仅是当前 Obsidian vault 的路由标签。不匹配的 slug 将被拒绝;一个插件实例无法查询其他 vault。
## 开发
安装依赖项:
```bash
npm install
```
运行开发构建:
```bash
npm run dev
```
运行验证检查:
```bash
npm run lint
npm run build
```
在更改 `manifest.json` 后重新加载 Obsidian。在源代码更改后重新加载插件,以便加载生成的 `main.js`。
## 发布产物
所需的发布文件:
- `manifest.json`
- `main.js`
- 如果使用样式,则为 `styles.css`
请勿手动编辑 `main.js`。使用 `npm run build` 生成它。