文档查询 (Context7)
当用户询问库、框架或 API 时,通过 Context7 MCP(工具 resolve-library-id 和 query-docs)获取最新文档,而非依赖训练数据。
核心概念
- Context7: 提供实时文档的 MCP 服务器;用于库和 API 的查询,替代训练数据。
- resolve-library-id: 根据库名和查询返回 Context7 兼容的库 ID(例如
/vercel/next.js)。 - query-docs: 根据给定的库 ID 和问题获取文档和代码片段。务必先调用 resolve-library-id 以获取有效的库 ID。
使用时机
当用户出现以下情况时激活:
- 询问设置或配置问题(例如“如何配置 Next.js 中间件?”)
- 请求依赖于某个库的代码(“编写一个 Prisma 查询用于...”)
- 需要 API 或参考信息(“Supabase 的认证方法有哪些?”)
- 提及特定的框架或库(React、Vue、Svelte、Express、Tailwind、Prisma、Supabase 等)
当请求依赖于库、框架或 API 的准确、最新行为时,请使用此技能。适用于配置了 Context7 MCP 的所有环境(例如 Claude Code、Cursor、Codex)。
工作原理
步骤 1:解析库 ID
调用 resolve-library-id MCP 工具,参数包括:
- libraryName: 从用户问题中提取的库或产品名称(例如
Next.js、Prisma、Supabase)。 - query: 用户的完整问题。这有助于提高结果的相关性排名。
在查询文档之前,必须获取 Context7 兼容的库 ID(格式为 /org/project 或 /org/project/version)。如果没有从此步骤获得有效的库 ID,请勿调用 query-docs。
步骤 2:选择最佳匹配
从解析结果中,根据以下原则选择一个结果:
- 名称匹配: 优先选择与用户询问内容完全匹配或最接近的。
- 基准分数: 分数越高表示文档质量越好(最高为 100)。
- 来源信誉: 如果可用,优先选择信誉度为 High 或 Medium 的。
- 版本: 如果用户指定了版本(例如“React 19”、“Next.js 15”),优先选择列出的特定版本库 ID(例如
/org/project/v1.2.0)。
步骤 3:获取文档
调用 query-docs MCP 工具,参数包括:
- **library…