Manus 的 Context7 MCP 連接器

照著目前的文檔寫代碼,而不是去年的接口

說一句:「用 Next.js 16 加一個檢查,把未登入的訪客送到 /login。」Manus 會在 Context7 裡查這個庫和這個版本,讀目前的文檔和代碼示例,再照着寫代碼。貼上一段錯誤,它會查這個介面現在怎麼用,告訴你改了甚麼、該怎麼修。在提示詞裡寫上版本號,就查那個版本的文檔;寫上庫 ID(例如 /supabase/supabase),就直接查這個庫。

先在 Manus 裡連接 Context7

用 Next.js 16 加一個檢查,將未登入的訪客導向 /login。

/vercel/next.js · v16示意圖

把未登入的訪客導向 /login

出處:github.com/vercel/next.js · docs

在 Next.js 16 裡,middleware 檔案改名為 proxy.ts,匯出的函式名叫 proxy。

import { NextResponse } from 'next/server'import type { NextRequest } from 'next/server'export function proxy(request: NextRequest) {  if (!request.cookies.has('session')) {    const login = new URL('/login', request.url)    return NextResponse.redirect(login)  }}

照這個片段寫出 proxy.ts

給 AI 用的最新文件,對得上你用的版本

在提示詞裡寫上庫名和版本。Manus 會在 Context7 裡查這個版本,讀它的文件和程式碼範例,再寫出對應的程式碼。

呢個任務用到嘅庫示意圖
/vercel/next.js/v16.2.9
/react/react/v19.2.7
/supabase/supabase/v1.26.04

用版本號指定版本

在提示詞裡寫上版本,例如 React 19 或 Next.js 16,Context7 就會找那個版本的文件。

寫上庫 ID,省掉搜尋這一步

如果你知道庫 ID(例如 /supabase/supabase),就寫入提示詞。Manus 會直接去查呢個庫嘅文檔,唔用先搜索。

查文件用的 MCP:先找到庫,再讀它的文件

Context7 分兩步:先找到這個庫和它有哪些版本,再讀能回答你問題的文檔和代碼示例。每個示例都帶出處連結。

快速查清一個函數

問一個函數現時點樣傳參數,或者舊選項被哪個新選項取代咗。Manus 會按文檔片段回答,並畫出出處。

示意圖
1搵到庫resolve-library-id
庫Next.js
/vercel/next.js6,135 個代碼示例
v16.2.9v16.1.6v15.1.11
2讀文件query-docs
庫 ID/vercel/next.js/v16.2.9
問題喺 proxy 入面點樣讀取 cookie?
  • 在 proxy 裡從請求讀取 cookie出處:github.com/vercel/next.js · v16.2.9
  • 喺回應裡設置 cookie出處:github.com/vercel/next.js · v16.2.9

用當前的文檔修復過時接口的報錯

貼上錯誤訊息,並說明你用的是哪個版本。Manus 會查這個 API 在你的版本裡怎麼用,告訴你改了什麼,再重寫出錯的那幾行。

src/main.jsxreact 19.2示意圖
TypeError: ReactDOM.render is not a function
來自 React 19 文件React 19 移除了 ReactDOM.render,改用 react-dom/client 裡的 createRoot 來渲染應用程式。
ReactDOM.render(<App />, document.getElementById('root'))import { createRoot } from 'react-dom/client'createRoot(document.getElementById('root')).render(<App />)

貼上錯誤訊息和版本

Manus 會查你說的那個版本的文檔,用一句話說明改了什麼,只重寫需要改的那幾行。

Context7 文檔:兩個版本並排對照

升級之前,叫佢將兩個版本都查一遍。Manus 會分別閱讀兩個版本嘅文檔,列出改咗啲乜,並寫明依據嘅係哪份文檔。

照着文檔規劃升級

得到一張表:哪些要改名,哪些用法變了。讓 Manus 把文件裡沒寫的都去掉,表裡就沒有猜測的內容。

示意圖
Next.js 15Next.js 16
依據:Next.js 16 升級指南
檔案middleware.tsproxy.ts
函數export function middleware()export function proxy()
執行環境edgenodejs
配置項skipMiddlewareUrlNormalizeskipProxyUrlNormalize

proxy 不支援 edge 運行環境。想繼續用 edge,先保留 middleware。

做完整項目時,每個庫都用最新版本

Context7 的文檔也能用在更大的工作上:做一個新的網頁應用、改你的代碼倉庫,或者讓一個項目裡的每個任務都照著做。

照著目前的文件做網頁應用程式

讓 Manus 為用到的每個庫都查一遍 Context7,新的網頁應用一開始用的就是這些版本現在的接口。

建立並發佈網頁應用程式

改好程式倉庫,再提交 PR

如果也連接了 GitHub,Manus 會在你的程式碼倉庫裡改好,再提交一個 PR,寫明參照了哪些文件。

查看 GitHub 連接器

把「先查文件」寫成專案規則

將呢條規則寫入項目指示。項目指示會用喺呢個項目嘅每個新任務,唔用每次重複。

了解專案怎麼用

把 Context7 MCP 伺服器連接到 Manus

Context7 已經在 Manus 的連接器裡。連接一次,之後任何任務都能在寫代碼前先查當前的庫文檔。

  1. 開啟連接器

    在 Manus 裡打開連接器,選擇 Context7,點擊連線。

  2. 完成連接

    Context7 已經在連接器列表裡,不用安裝伺服器,也不用貼上網址。按螢幕上的步驟完成就行。

  3. 喺任何任務裏面提出需求

    寫上庫名,版本重要時也寫上版本。想讓 Manus 寫程式碼前先查文件,就加一句「用 Context7」。

Context7每個庫當前的文檔和代碼示例

透過 Context7 文件服務,獲取每個庫目前的技術文件和實現示例。

連線示意圖
  • 兩個工具:一個找到庫,一個讀它的文件
  • 只讀:它只查文檔,不會改你的代碼或帳戶
  • 每個程式碼示例都附出處連結

關於 Context7 MCP 的常見問題

點樣喺 Manus 入面設置 Context7 MCP?需唔需要安裝、或者要唔要填服務器網址或 API key?

不用安裝,也不用填服務器網址。Context7 已經在 Manus 的連接器裡:打開連接器,選擇 Context7,點擊連線,再按畫面上的步驟操作。Manus 沒有把 Context7 標成需要額外設置的連接器,它的連接器頁面也不要求填 Context7 的 API key。連接好之後,在任何任務裡寫上庫名和版本就行。

Context7 能查哪些庫?

能查已經收錄進 Context7 的庫,例如 Next.js、React 和 Supabase。這些庫由社群和庫的作者添加。搜尋結果裡每個庫都有庫 ID、程式碼示例數量和已收錄的版本。如果某個庫沒有收錄,搜尋會找不到合適的結果,這時可以讓 Manus 改去讀這個庫自己的文件網站。

能指定讀哪個版本的文檔嗎?

能。在提示詞裡寫上版本,例如「Next.js 16」,Context7 就會找那個版本。也可以寫帶版本的庫 ID,例如 /vercel/next.js/v16.2.9。想知道用的是哪個版本,就讓 Manus 說出它查的庫 ID。

查到的文件一定對嗎?

不一定。Context7 裡的文件來自社群和函式庫的作者,Context7 也說明不能保證每個函式庫都完整、準確。它回傳的每個程式碼範例都帶有出處連結,所以可以讓 Manus 把用到的片段和連結給你看,重要的地方自己再核對一下。

這和直接讓 AI 寫代碼有什麼不同?

不查文件時,AI 按訓練時學到的內容寫,這些內容可能比你用的版本舊,已經改名或刪掉的接口就是這樣出現在新程式碼裏的。連接 Context7 之後,Manus 會先讀你那個版本目前的文件,再寫程式碼。

Context7 會睇到我嘅程式碼嗎?

它的兩個工具只接收庫名或庫 ID、一句簡短的問題,以及已知時的程式語言,都不接收你的檔案或程式碼倉庫。這句問題會發給 Context7 用來找文件,工具說明也要求 AI 不要在裡面寫 API key、密碼、個人資料和私有程式碼。

查文檔的次數有上限嗎?

有。Context7 對查詢頻率設有限制,它的工具亦要求 AI 每個問題最多呼叫三次。一開始就寫清楚庫名同版本,每次查詢更容易一次就搵到啱嘅文件。

連接 Context7,跟住目前嘅文件寫代碼

喺 Manus 裡面連接 Context7