Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SiYuan MCP ServerSearch for 'AI research' in my 'Knowledge' notebook and summarize the content."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SiYuan MCP Server
一个为思源笔记(SiYuan)设计的 Model Context Protocol (MCP) 服务器,提供完整的 AI 集成和智能知识管理功能。
🌟 核心特性
笔记管理
笔记本操作: 创建、列表、打开、关闭、重命名、删除笔记本
文档管理: 创建、读取、更新、删除文档,支持批量操作
块操作: 创建、读取、更新、删除笔记块,支持批量操作
块属性: 设置和获取块属性,支持自定义属性管理
搜索功能
简单搜索: 快速关键词搜索
递归搜索: 深度内容挖掘,支持层级遍历
文档内搜索: 在指定文档中精确查找
批量读取: 高效批量读取多个文档
模板与渲染
模板渲染: 支持标准模板语法
Sprig模板: 支持Sprig函数库的高级模板功能
动态内容: 基于模板生成格式化内容
导出功能
Markdown导出: 导出为标准Markdown格式
多格式导出: 支持PDF、Word、HTML等多种格式
树状结构导出: 保留文档层级关系的JSON导出
资源管理
文件上传: 上传图片、文档等资源文件
资源列表: 列出文档中的所有资源
资源重命名: 重命名资源文件
OCR识别: 图片文字识别功能
数据操作
SQL查询: 执行SQL查询,支持复杂的数据检索
文件操作: 读取、写入、删除文件
文件列表: 列出目录中的文件
系统工具
时间获取: 获取当前真实时间,支持多种格式和时区
健康检查: 系统健康状态监控
端口发现: 自动发现思源笔记可用端口
AI 智能集成
智能工具选择: AI驱动的工具推荐和选择
使用场景指导: 详细的工具使用场景和示例
性能优化建议: 基于使用模式的优化建议
错误处理: 标准化的错误处理和重试机制
性能优化
缓存机制: 智能缓存提升响应速度
批量处理: 高效的批量数据操作
性能监控: 实时性能指标和统计
并发控制: 合理的并发请求管理
🚀 快速开始
1. 安装思源笔记
启动思源笔记
2. 配置思源笔记
启动思源笔记
设置 → 关于 → API token
复制API Token
3. 安装 MCP Server
从 npm 安装
从源码安装
4. 配置 MCP
在您的 MCP 客户端配置文件中添加:
注意:
SIYUAN_API_URL是可选的,如果不配置,系统会自动发现思源笔记的可用端口如果需要指定端口,可以添加
"SIYUAN_API_URL": "http://127.0.0.1:6806"
5. 环境变量
SIYUAN_API_TOKEN: 思源笔记 API Token(必需)SIYUAN_API_URL: 思源笔记 API 地址(可选,默认自动发现可用端口)
端口自动发现:
系统会自动扫描思源笔记的常用端口(6806, 6807, 6808)
如果思源笔记正在运行,系统会自动连接到正确的端口
如果自动发现失败,会尝试使用默认端口 6806
如需指定端口,可手动设置
SIYUAN_API_URL环境变量
🛠️ 技术栈
运行时: Node.js 18+
语言: TypeScript
协议: Model Context Protocol (MCP)
HTTP客户端: Axios
构建工具: TypeScript Compiler
📡 MCP 工具列表
📚 笔记本操作 (Notebook)
list_notebooks- 列出所有笔记本open_notebook- 打开笔记本close_notebook- 关闭笔记本rename_notebook- 重命名笔记本remove_notebook- 删除笔记本
📄 文档操作 (Document)
create_document- 创建新文档get_document- 获取文档内容update_document- 更新文档delete_document- 删除文档list_documents- 列出文档batch_read_all- 批量读取所有文档
🧱 块操作 (Block)
create_block- 创建块get_block- 获取块update_block- 更新块delete_block- 删除块prepend_block- 在块前插入append_block- 在块后追加fold_block- 折叠块unfold_block- 展开块transfer_block_ref- 转移块引用set_block_attrs- 设置块属性get_block_attrs- 获取块属性batch_create_blocks- 批量创建块batch_update_blocks- 批量更新块batch_delete_blocks- 批量删除块
🔍 搜索操作 (Search)
simple_search- 简单搜索recursive_search- 递归搜索search_in_document- 在文档中搜索
🎨 模板操作 (Template)
render_template- 渲染模板render_sprig_template- 渲染Sprig模板
📤 导出操作 (Export)
export_markdown- 导出为Markdownexport_file- 导出为指定格式export_expand- 导出为树状结构
🖼️ 资源操作 (Assets)
upload_asset- 上传资源文件list_assets- 列出资源文件rename_asset- 重命名资源文件ocr_asset- OCR识别图片
💾 SQL查询 (SQL)
query_sql- 执行SQL查询
📁 文件操作 (File)
read_file- 读取文件write_file- 写入文件delete_file- 删除文件list_files- 列出文件
⏰ 系统操作 (System)
get_current_time- 获取当前真实时间
📖 使用示例
创建文档
搜索内容
批量操作
获取时间
导出文档
🔧 开发
构建项目
运行测试
代码检查
类型检查
🤝 贡献指南
欢迎贡献代码、报告问题或提出改进建议!
Fork 本仓库
创建特性分支 (
git checkout -b feature/AmazingFeature)提交更改 (
git commit -m 'Add some AmazingFeature')推送到分支 (
git push origin feature/AmazingFeature)开启 Pull Request
📄 许可证
MIT License - 详见 LICENSE 文件
🙏 致谢
感谢思源笔记团队提供优秀的笔记软件和 API 支持。
📮 联系方式
问题反馈: GitHub Issues
功能建议: GitHub Discussions