SKILL.md
readonlyread-only
name
documentation-lookup
description
使用 Context7 MCP 提供的即時函式庫與框架文件,而非訓練資料。適用於設定問題、API 參考、程式碼範例,或當使用者提及框架名稱(例如 React、Next.js、Prisma)時。
Documentation Lookup (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 middleware?」)
- 要求依賴某個函式庫的程式碼(「寫一段 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 工具,並提供:
- libraryId:從步驟 2 選取的 Context7 函式庫 ID(例如
/vercel/next.js)。 - query:使用者的具體問題或任務。請具體描述以取得相關的程式碼片段。
限制:每個問題最多呼叫 query-docs(或 resolve-library-id)3 次。如果 3 次呼叫後答案仍不明確,請說明不確定性,並使用你擁有的最佳資訊,而非猜測。
步驟 4:使用文件
- 使用擷取到的最新資訊回答使用者的問題。
- 在適當情況下,包含文件中的相關程式碼範例。
- 在必要時引用函式庫或版本(例如「在 Next.js 15 中…」)。
範例
範例:Next.js middleware
- 呼叫 resolve-library-id,參數為
libraryName: "Next.js"、query: "How do I set up Next.js middleware?"。 - 從結果中,根據名稱和基準分數選擇最佳匹配(例如
/vercel/next.js)。 - 呼叫 query-docs,參數為
libraryId: "/vercel/next.js"、query: "How do I set up Next.js middleware?"。 - 使用回傳的片段和文字回答;如果相關,可包含文件中的最小
middleware.ts範例。
範例:Prisma 查詢
- 呼叫 resolve-library-id,參數為
libraryName: "Prisma"、query: "How do I query with relations?"。 - 選擇官方的 Prisma 函式庫 ID(例如
/prisma/prisma)。 - 使用該
libraryId和查詢呼叫 query-docs。 - 回傳 Prisma Client 模式(例如
include或select),並附上文件中的簡短程式碼片段。
範例:Supabase 驗證方法
- 呼叫 resolve-library-id,參數為
libraryName: "Supabase"、query: "What are the auth methods?"。 - 選擇 Supabase 文件函式庫 ID。
- 呼叫 query-docs;摘要說明驗證方法,並從擷取的文件中展示最小範例。
最佳實踐
- 具體明確:盡可能使用使用者的完整問題作為查詢,以獲得更好的相關性。
- 版本意識:當使用者提及版本時,若解析步驟中有版本特定的函式庫 ID,請優先使用。
- 偏好官方來源:當有多個匹配時,優先選擇官方或主要套件,而非社群分支。
- 無敏感資料:從傳送給 Context7 的任何查詢中,移除 API 金鑰、密碼、令牌及其他機密資訊。在將使用者問題傳遞給 resolve-library-id 或 query-docs 之前,應視為可能包含機密。






