用途
Personal Search 用于在用户的个人语雀(Yuque)知识库中进行自然语言搜索与问答。它会检索相关文档、读取内容,并综合出清晰的答案,附带关键要点和来源链接。
适用场景包括:
- 用户提出的问题可能由其个人语雀文档回答
- 用户想在自己的知识库中查找特定信息
- 用户说出“搜一下我的文档”“search my Yuque”“我的知识库里有没有……”等
注意:该技能搜索的是用户的个人知识库;如需搜索团队知识库,应使用 team-search 技能。
主要能力
- 从自然语言查询中提取 1-3 个简洁的中文关键词
- 调用 yuque_search 按关键词搜索文档
- 对搜索结果进行筛选与排序,选取最相关的 3-5 篇文档
- 调用 yuque_get_doc 读取文档全文
- 综合生成答案,包含直接回答、关键要点和参考文档链接
依赖的 MCP 工具
所有工具均来自 yuque-mcp 服务器:
- yuque_search — 按关键词搜索文档
- yuque_get_doc — 按 slug/id 读取文档全文
使用方式
工作流程如下:
第 1 步:提取搜索关键词
从用户的自然语言查询中提取 1-3 个简洁的中文关键词。语雀搜索最适合简短、具体的词。
示例:
- “我的部署流程文档在哪?” → 关键词:部署流程
- “How do I handle error logging?” → 关键词:错误日志 或 日志处理
- “我之前写的技术评审笔记” → 关键词:技术评审
第 2 步:搜索文档
使用提取的关键词调用 yuque_search:
Tool: yuque_search
Parameters:
query: "<keywords>"
type: "doc"
如果搜索无结果:
- 尝试替代关键词(同义词、更宽泛的词)
- 尝试拆分复合词(例如“部署流程” → “部署”或“流程”)
- 如果仍无结果,如实告知用户:“在你的语雀知识库中未找到相关文档,建议尝试其他关键词或确认文档是否存在。”
第 3 步:筛选与排序结果
从搜索结果中,根据以下标准选取最相关的前 3-5 篇文档:
- 标题与查询的相关性
- 文档更新时间(优先较新的)
- 仓库上下文(聚焦用户的个人仓库)
第 4 步:读取文档内容
对每篇选中的文档,获取全文:
Tool: yuque_get_doc
Parameters:
repo_id: "<namespace>" # 例如 "username/my-notes"(来自搜索结果的 book.namespace)
doc_id: "<slug>" # 例如 "api"(来自搜索结果的 target.slug)
注意:搜索结果包含嵌套数据,需提取以下关键字段:
- target.slug → 用作 doc_id
- target.book.namespace → 用作 repo_id
- target.title → 文档标题
- target.updated_at → 最后更新时间
最多读取 3 篇文档。如果第一篇文档已完整回答该问题,可跳过其余文档。
第 5 步:综合并回复
按以下格式组织答案:
## 回答
[直接回答用户的问题,2-4 句话,简洁明了]
## 关键要点
- **要点 1**:[从文档中提取的关键信息]
- **要点 2**:[从文档中提取的关键信息]
- **要点 3**:[从文档中提取的关键信息]
## 参考文档
1. [文档标题](文档链接) — 来自「知识库名称」,更新于 YYYY-MM-DD
2. [文档标题](文档链接) — 来自「知识库名称」,更新于 YYYY-MM-DD
准则
- 始终使用用户所用的语言回答(中文或英文)
- 相关时引用文档中的具体内容——使用 > 引用块
- 如果文档包含冲突信息,指出差异并说明哪篇文档更新
- 如果只找到部分答案,说明找到了什么、缺少什么
- 绝不编造文档中不存在的信息
- 包含文档链接,方便用户阅读完整来源
错误处理
| 情况 | 处理方式 |
|---|---|
| yuque_search 返回空 | 尝试替代关键词,然后告知用户 |
| yuque_get_doc 失败(404) | 跳过该文档,说明其可能已被删除 |
| yuque_get_doc 失败(403) | 告知用户可能没有权限访问该文档 |
| API 超时 | 重试一次,然后告知用户连接问题 |
| 结果过多 | 聚焦相关性最高的前 3 篇,说明还有更多结果可用 |
| 用户想搜索团队文档 | 建议改用 team-search 技能 |
限制
- 仅搜索用户的个人语雀知识库,不覆盖团队知识库
- 依赖 yuque-mcp 服务器及其 yuque_search、yuque_get_doc 工具
- 最多读取 3 篇文档
- 不编造文档中不存在的信息
- 关于收费、价格、平台支持范围等信息,资料中暂未提供