基本能力
产品定位
SiYuan Note MCP Server 是一个 MCP 服务器实现,提供与思源笔记系统的集成,使 AI 模型能够访问和操作笔记数据。
核心功能
- 笔记本管理 | Notebook Management
- 文档操作 | Document Operations
- 内容块控制 | Block Control
- 文件和资源管理 | File and Asset Management
- SQL 查询支持 | SQL Query Support
- 属性管理 | Attribute Management
- 导出和转换 | Export and Conversion
- 系统功能 | System Functions
适用场景
- AI 模型与思源笔记系统的集成
- 自动化笔记管理
- 批量文档操作
- 内容块控制与管理
- 文件和资源管理
- SQL 查询与数据检索
工具列表
assets.uploadAssets
- 上传资源文件 | Upload assetsattr.setBlockAttrs
- 设置块属性 | Set block attributesattr.getBlockAttrs
- 获取块属性 | Get block attributesblock.insertBlock
- 插入内容块 | Insert a blockblock.updateBlock
- 更新内容块 | Update block contentblock.deleteBlock
- 删除内容块 | Delete a blockblock.moveBlock
- 移动内容块 | Move a blockblock.getBlockKramdown
- 获取块的 Markdown 内容 | Get block Kramdown contentconvert.pandoc
- 使用 Pandoc 转换内容 | Convert content using Pandocexport.exportNotebook
- 导出笔记本 | Export notebookexport.exportDoc
- 导出文档 | Export documentfile.getFile
- 获取文件内容 | Get file contentfile.putFile
- 写入文件内容 | Put file contentfile.removeFile
- 删除文件 | Remove filefile.readDir
- 读取目录内容 | List files in directoryfiletree.createDocWithMd
- 使用 Markdown 创建文档 | Create document with Markdownfiletree.renameDoc
- 重命名文档 | Rename documentfiletree.removeDoc
- 删除文档 | Remove documentfiletree.moveDocs
- 移动文档 | Move documentsfiletree.getHPathByPath
- 获取文档可读路径 | Get document HPath by pathfiletree.getHPathByID
- 通过 ID 获取文档可读路径 | Get document HPath by IDnetwork.forwardProxy
- 网络请求代理 | Forward proxy requestnotebook.lsNotebooks
- 列出所有笔记本 | List all notebooksnotebook.openNotebook
- 打开笔记本 | Open notebooknotebook.closeNotebook
- 关闭笔记本 | Close notebooknotebook.renameNotebook
- 重命名笔记本 | Rename notebooknotebook.createNotebook
- 创建笔记本 | Create notebooknotebook.removeNotebook
- 删除笔记本 | Remove notebooknotebook.getNotebookConf
- 获取笔记本配置 | Get notebook configurationnotebook.setNotebookConf
- 设置笔记本配置 | Set notebook configurationnotification.pushMsg
- 发送消息通知 | Push message notificationnotification.pushErrMsg
- 发送错误通知 | Push error message notificationquery.sql
- 执行 SQL 查询 | Execute SQL queryquery.block
- 通过 ID 查询块 | Query block by IDsearch.fullTextSearch
- 全文搜索 | Full text searchsql.sql
- 执行 SQL 查询 | Execute SQL querysystem.getBootProgress
- 获取启动进度 | Get boot progresssystem.getVersion
- 获取系统版本 | Get system versionsystem.getCurrentTime
- 获取当前时间 | Get current timetemplate.renderTemplate
- 渲染模板 | Render templatetemplate.renderSprig
- 渲染 Sprig 模板 | Render Sprig template
常见问题解答
- 需要配置
SIYUAN_TOKEN
环境变量以进行 API 认证 - 在思源笔记设置 - 关于 中查看 API 令牌
使用教程
使用依赖
- Node.js >= 23.10.0
- pnpm
安装教程
-
安装依赖 | Install dependencies:
bash
pnpm install -
设置环境变量 | Set environment variables:
```bash
Windows
set SIYUAN_TOKEN=your-siyuan-token
Linux/macOS
export SIYUAN_TOKEN=your-siyuan-token
```
- 启动服务 | Start service:
bash
pnpm start
Docker 运行 | Docker Run
bash
docker run --rm -i \
-e SIYUAN_TOKEN=your-siyuan-token \
mcp/siyuan
调试方式
- 使用
help
命令查询详细说明,例如:
json
{
"type": "help",
"params": {
"type": "block.insertBlock"
}
}
本地构建 | Local Build
bash
pnpm build
Docker 构建 | Docker Build
bash
docker build -t mcp/siyuan .