语雀个人知识关联(yuque-personal-knowledge-connect)
用途
帮助用户在个人语雀知识库中发现文档之间的隐藏关联,查找相关内容,并通过双向链接构建知识网络。
适用场景
- 用户想查找与某个特定主题相关的文档
- 用户说出「有哪些相关文档」「find related docs」「帮我建立知识关联」
- 用户想为某个主题构建知识地图或图谱
- 用户说出「这个主题还有哪些相关的」「帮我串联一下知识」「构建知识图谱」
依赖的 MCP 工具
所有工具均来自 yuque-mcp 服务器:
- yuque_search — 按关键词搜索相关文档
- yuque_get_doc — 读取文档内容以分析关联
- yuque_list_repos — 列出个人知识库以进行扫描
- yuque_list_docs — 列出知识库中的文档以进行更广泛的发现
- yuque_update_doc — 向文档添加交叉引用链接
- yuque_create_doc — 创建知识地图文档
使用方式(工作流)
第 1 步:确定起点
用户可能提供:
- 一篇用于查找关联的具体文档
- 一个要探索的主题或关键词
- 一个为整个知识领域绘制图谱的请求
如果从文档开始,使用 yuque_get_doc 读取文档,参数为 repo_id 和 doc_id,并从文档中提取关键概念、术语和主题。
第 2 步:发现相关文档
使用提取出的关键词通过 yuque_search 搜索内容,参数为 query 和 type: "doc"。用不同关键词重复搜索以扩大范围,可使用:
- 直接主题关键词
- 同义词和相关术语
- 文中提到的人物或项目名称
- 技术术语和概念
同时扫描知识库以进行更广泛的发现,使用 yuque_list_docs,参数为 namespace。
第 3 步:读取并分析关联
对每篇可能相关的文档(前 5 至 10 篇)使用 yuque_get_doc 读取,并分析关系类型:
| 关系 | 说明 | 示例 |
|---|---|---|
| 🔗 直接相关 | 同一主题,不同角度 | 两篇都讲微服务架构 |
| 🧩 互补 | 互相填补空白 | 一篇讲设计,一篇讲实现 |
| 📚 前置/后续 | 顺序性知识 | 入门篇 → 进阶篇 |
| 🔀 交叉引用 | 跨主题共享概念 | 都提到了 Redis 缓存策略 |
| ⚡ 矛盾/对比 | 观点冲突 | 两篇对同一问题有不同方案 |
第 4 步:构建知识地图
呈现发现的关联,结构包括:中心节点(起始文档标题、链接、所属知识库、核心概念)、关联文档(按「直接相关」「延伸阅读」分组,列出文档、知识库、关联类型、关联说明)、知识网络(以树形展示中心文档与各关联文档的关系)、发现与建议(知识聚类、知识缺口、建议行动)。
第 5 步(可选):添加交叉引用
若用户同意,向关联文档添加「相关文档」章节,使用 yuque_update_doc,参数为 repo_id、doc_id,body 为原始内容追加相互引用链接。修改任何现有文档前需询问:「要在这些文档中添加相互引用链接吗?」
第 6 步(可选):保存知识地图
使用 yuque_create_doc,参数为 repo_id、title、body、format: "markdown",将知识图谱保存为文档。
第 7 步:确认
输出完成信息,包括发现的关联文档数量、建立的关联数量、关联概览(按类型统计)以及建议。
使用准则
- 先广后窄:用多个关键词搜索以发现意外关联
- 质量优先于数量:5 个强关联优于 20 个弱关联
- 解释文档为何相关,而不仅仅是说明它们相关
- 修改现有文档(添加交叉引用)前务必询问用户
- 知识地图应可操作,包含加强知识网络的具体建议
- 识别知识缺口:缺失的内容与已关联的内容同样有价值
- 对大型知识库,一次聚焦一个主题领域
- 默认语言为中文
错误处理
| 情况 | 处理方式 |
|---|---|
| yuque_search 返回结果很少 | 扩大关键词;尝试同义词和相关术语 |
| 起始文档没有明显关联 | 提示该文档可能属于新主题;建议进行更广泛的搜索 |
| 发现的关联过多(超过 15 个) | 按关联强度排序;分组归纳 |
| 添加链接时 yuque_update_doc 失败 | 跳过该文档;在报告中注明 |
| 用户的知识库非常小 | 说明范围有限;建议撰写一些主题以构建网络 |