Context7 MCP:讓 AI 編碼助手永遠使用最新文檔
了解 Context7 MCP 如何為 AI 編碼助手提供即時、版本特定的文檔。消除過時 API、幻覺函數和頻繁切換文檔的困擾,透過自動文檔注入提升開發效率。
在使用 AI 編碼助手時,你是否遇過這些問題:
- 過時的 API:AI 生成的代碼使用了已廢棄的方法
- 不存在的函數:AI「幻覺」出根本不存在的 API
- 版本不符:範例代碼是舊版本的,無法在當前版本運行
- 反覆查文檔:不斷在編輯器和瀏覽器之間切換
Context7 MCP 就是為了解決這些痛點而生的工具。它是由 Upstash 開發的 Model Context Protocol 服務器,能夠即時提供版本特定的官方文檔,直接注入到 AI 的提示詞中。
什麼是 Context7 MCP?
Context7 是一個 MCP 服務器,專門為 LLM 和 AI 編碼助手提供即時、準確、版本特定的程式碼文檔。
核心特色
-
即時文檔存取 📚
- 直接從官方來源提取最新文檔
- 確保 AI 使用的資訊永遠是最新的
-
版本特定精準度 🎯
- 支援精確版本號(如
react@18.2.0) - 避免版本不符導致的代碼錯誤
- 支援精確版本號(如
-
零切換工作流 ⚡
- 文檔直接注入提示詞,無需跳轉瀏覽器
- 提升開發效率,保持專注
-
廣泛相容性 🔌
- 支援所有 MCP 相容的編輯器
- Claude Desktop、Cursor、Windsurf 等
運作原理
Context7 提供兩個主要工具:
1. resolve-library-id
將套件名稱解析為 Context7 相容的 Library ID。
// 使用者輸入:「我想用 React」
→ resolve-library-id("react")
→ 回傳:[
{ id: "/react/react", name: "React", version: "latest" },
{ id: "/react/react/18.2.0", name: "React", version: "18.2.0" },
{ id: "/react/react/19.0.0", name: "React", version: "19.0.0" }
]
2. get-library-docs
取得指定 Library 的最新文檔。
// 取得 React 18.2.0 的文檔
→ get-library-docs("/react/react/18.2.0", maxTokens: 5000)
→ 回傳:官方文檔內容(React Hooks、Component API 等)
關鍵特性:
maxTokens參數:控制文檔長度(預設 5000)- 更高的值提供更多上下文,但消耗更多 token
安裝與設定
方法一:使用官方 CLI(推薦)
# 安裝到專案(project scope)
claude mcp add \
--scope project \
context7 \
-e CONTEXT7_API_KEY=<your-api-key> \
-- npx -y @upstash/context7-mcp
# 安裝到全域(global scope)
claude mcp add \
--scope global \
context7 \
-e CONTEXT7_API_KEY=<your-api-key> \
-- npx -y @upstash/context7-mcp
方法二:手動配置
編輯 .claude/config.json(專案)或 ~/.claude/config.json(全域):
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"],
"env": {
"CONTEXT7_API_KEY": "<your-api-key>"
}
}
}
}
取得 API Key
- 前往 context7.com/dashboard
- 註冊並創建 API Key
- 將 Key 設定到環境變數
實際使用範例
範例一:查詢最新的 Next.js App Router 用法
你:「幫我用 Next.js 14 的 App Router 建立一個動態路由」
Context7 自動執行:
1. resolve-library-id("nextjs") → /vercel/next.js/14.0.0
2. get-library-docs("/vercel/next.js/14.0.0") → 取得 App Router 文檔
AI 回覆:根據 Next.js 14 官方文檔,這是正確的做法...
範例二:使用特定版本的 API
你:「我用的是 React 18.2,幫我用 useTransition 優化這個表單」
Context7 自動執行:
1. resolve-library-id("react@18.2") → /react/react/18.2.0
2. get-library-docs("/react/react/18.2.0") → 取得 React 18.2 的 Hooks 文檔
AI 回覆:根據 React 18.2 的 useTransition API...
價格方案(2026 年 1 月更新)
| 方案 | 價格 | 請求數 | 適合對象 |
|---|---|---|---|
| Free | $0/月 | 500 requests/月 | 個人試用 |
| Pro | $10/月 | Unlimited | 專業開發者 |
⚠️ 注意:2026 年 1 月,Context7 大幅調整免費方案,從無限制縮減為每月 500 次請求(減少 92%)。如果你是重度使用者,建議升級至 Pro 方案。
為什麼需要 Context7?
問題:AI 的「知識截止日期」
大型語言模型的訓練資料有截止日期。即使 Claude Sonnet 4.5 的知識更新到 2025 年 1 月,但:
- 新的框架版本(如 Next.js 15)在截止日後發布
- API 的細節變動(參數名稱、回傳格式)
- 新功能的最佳實踐(如 React Server Components 的演進)
這些變動都會導致 AI 生成不正確或過時的代碼。
解決方案:即時文檔注入
Context7 透過 MCP 協定,將最新的官方文檔直接注入到 AI 的上下文中,確保每次生成的代碼都基於最新、正確的資訊。
Context7 vs. 手動查文檔
| 比較項目 | 手動查文檔 | Context7 MCP |
|---|---|---|
| 切換成本 | 需跳轉瀏覽器 | 零切換 |
| 版本控制 | 手動確認版本 | 自動匹配版本 |
| 整合度 | 需複製貼上 | 自動注入提示詞 |
| 效率 | 中斷工作流 | 無縫整合 |
| 準確度 | 依賴 AI 記憶 | 直接使用官方文檔 |
進階使用技巧
1. 明確指定版本
「用 Tailwind CSS 3.4 的新 container query 功能實作響應式佈局」
Context7 會自動解析 3.4 並取得該版本的文檔。
2. 控制文檔長度
在專案的 .claude/config.json 中調整 maxTokens:
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"],
"env": {
"CONTEXT7_API_KEY": "<your-api-key>",
"CONTEXT7_MAX_TOKENS": "10000" // 增加到 10000
}
}
}
}
3. 結合其他 MCP 服務器
Context7 可與其他 MCP 服務器協同工作:
- Memory MCP:記住專案使用的套件版本
- Filesystem MCP:讀取
package.json自動推斷版本 - Sequential Thinking MCP:複雜問題拆解
支援的程式語言與框架
Context7 支援數千個熱門套件和框架,包括但不限於:
前端
- React、Vue、Angular、Svelte
- Next.js、Nuxt、SvelteKit
- Tailwind CSS、Bootstrap
後端
- Node.js、Express、NestJS
- Python(Flask、Django、FastAPI)
- Go、Rust
資料庫 & 基礎設施
- PostgreSQL、MongoDB、Redis
- AWS SDK、Google Cloud SDK
- Kubernetes、Docker
完整清單可在 Context7 官網 查詢。
最佳實踐
✅ 推薦做法
- 專案層級安裝:使用
--scope project避免全域污染 - 版本鎖定:在提示詞中明確指定版本號
- 合理使用 Token:一般查詢用 5000,複雜 API 用 10000+
- 結合 Memory MCP:讓 Claude 記住專案常用的套件
❌ 避免做法
- 過度依賴:基礎語法不需要查文檔
- 無限 Token:會消耗大量配額,增加回應延遲
- 混用版本:確保專案依賴與文檔版本一致
故障排除
問題一:無法連接到 Context7
# 檢查 API Key 是否正確
echo $CONTEXT7_API_KEY
# 測試連線
npx @upstash/context7-mcp
問題二:找不到某個套件
你:「我想用 some-obscure-library」
Context7:找不到匹配的 Library
解決方法:
- 確認套件名稱拼寫正確
- 嘗試使用完整的 npm 套件名(如
@org/package) - 查詢 Context7 支援清單
問題三:文檔太舊
如果發現文檔不是最新的,可以:
- 回報給 Context7 團隊(GitHub Issues)
- 手動指定更新的版本號
- 使用 Web Search 補充最新資訊
Context7 的未來
OAuth 2.0 支援
Context7 已支援 OAuth 2.0 認證,對於實作 MCP OAuth 規範的客戶端,可以更安全地管理憑證:
{
"mcpServers": {
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"],
"oauth": {
"endpoint": "https://context7.com/mcp/oauth"
}
}
}
}
MCP 生態系統
Context7 是 Model Context Protocol 生態系統中的明星專案之一。2025 年 12 月,Anthropic 將 MCP 捐贈給 Agentic AI Foundation(由 Anthropic、Block、OpenAI 共同創立),顯示 MCP 已成為業界標準。
2025 年 3 月,OpenAI 正式採用 MCP,並整合至 ChatGPT 桌面應用程式,進一步推動 MCP 的普及。
Context7 在 2025 年 11 月被 Thoughtworks Technology Radar 列為 Trial 階段,代表已被業界認可為值得試用的成熟工具。
結論
Context7 MCP 解決了 AI 編碼助手的核心痛點:過時的知識和不準確的代碼生成。透過即時提供版本特定的官方文檔,它讓 Claude、Cursor、Windsurf 等工具能夠生成更準確、更可靠的代碼。
適合你嗎?
| 使用情境 | 是否推薦 |
|---|---|
| 學習新框架 | ⭐⭐⭐⭐⭐ |
| 頻繁切換技術棧 | ⭐⭐⭐⭐⭐ |
| 使用最新版本框架 | ⭐⭐⭐⭐⭐ |
| 日常開發輔助 | ⭐⭐⭐⭐ |
| 基礎語法查詢 | ⭐⭐ |
立即開始
- 前往 context7.com 註冊帳號
- 取得 API Key
- 使用
claude mcp add安裝 - 開始享受零切換的開發體驗