Next.js DevTools MCP
官方next-devtools-mcp 是一個 MCP 伺服器,為 Claude 和 Cursor 等 AI 編碼助手提供 Next.js 開發工具與實用程式。
你可以用 Next Js DevTools MCP 做什麼?
- 探索開發伺服器 — 請你的助理執行
nextjs_index,並列出正在運行的 Next.js 16+ 開發伺服器及其執行時期工具。 - 查詢即時應用程式狀態 — 使用
nextjs_call從特定開發伺服器連接埠取得目前的錯誤、路由、日誌或 Server Actions。 - 尋找版本精確的文件 — 讓
nextjs_docs在node_modules/next/dist/docs/中定位與你安裝版本相符的內建 Next.js 文件。 - 設定瀏覽器自動化 — 請
browser_eval偵測agent-browser,並回傳安裝步驟或 CLI 進入點以供直接使用。
文件
Next.js DevTools MCP
next-devtools-mcp 是一個模型上下文協定(MCP)伺服器,可將 Claude 和 Cursor 等編碼代理程式連接到你正在執行的 Next.js 開發伺服器。
它是一個輕量連接器。它會探索正在執行的 Next.js 16+ 開發伺服器,並代理其內建的 MCP 端點(/_next/mcp),讓代理程式取得即時的執行時期錯誤、路由和日誌。它也提供兩個閘道,將代理程式指向它們直接執行的工具:版本精確的文件和 agent-browser CLI。
[!NOTE] 文件和遷移工作流程不再位於此伺服器中。Next.js 在
node_modules/next/dist/docs/綁定了自己的文件,而升級 / Cache Components 工作流程則以代理程式技能的形式發布。請參閱 從 0.3.x 遷移。
需求
安裝
使用 add-mcp 為你所有的編碼代理程式安裝:
npx add-mcp next-devtools-mcp@latest
新增 -y 以跳過提示並安裝到所有偵測到的代理程式。新增 -g 以在所有專案中全域安裝。
或者手動將設定新增到你的 MCP 用戶端:
{
"mcpServers": {
"next-devtools": {
"command": "npx",
"args": ["-y", "next-devtools-mcp@latest"]
}
}
}
[!NOTE]
next-devtools-mcp@latest讓你的用戶端保持在最新版本。
用戶端特定設定
Claude Code
claude mcp add next-devtools npx next-devtools-mcp@latest
或使用上述設定編輯你的 MCP 設定檔。
Codex
codex mcp add next-devtools -- npx next-devtools-mcp@latest
Windows 11: 在 .codex/config.toml 中新增環境變數和更長的啟動逾時時間:
env = { SystemRoot="C:\\Windows", PROGRAMFILES="C:\\Program Files" }
startup_timeout_ms = 20_000
Gemini
# Project
gemini mcp add next-devtools npx next-devtools-mcp@latest
# Global
gemini mcp add -s user next-devtools npx next-devtools-mcp@latest
Google Antigravity
新增至 .gemini/antigravity/mcp_config.json:
{
"mcpServers": {
"next-devtools": {
"command": "npx",
"args": ["-y", "next-devtools-mcp@latest"]
}
}
}
請參閱 Antigravity MCP 文件。
VS Code / Copilot
code --add-mcp '{"name":"next-devtools","command":"npx","args":["-y","next-devtools-mcp@latest"]}'
或依照官方 VS Code MCP 設定指南操作。
Warp
Settings | AI | Manage MCP Servers → + Add:
- 名稱:
next-devtools - 命令:
npx - 引數:
-y, next-devtools-mcp@latest
快速開始
啟動你的 Next.js 開發伺服器:
npm run dev
Next.js 16+ 預設在 http://localhost:3000/_next/mcp 啟用其 MCP 端點。next-devtools-mcp 會自動探索並連接到它 — 無需設定。
然後向你的代理程式詢問正在執行的應用程式:
Next Devtools, what errors are in my Next.js application?
Next Devtools, show me the structure of my routes
Next Devtools, what's in the development server logs?
代理程式會呼叫 nextjs_index 來探索伺服器,然後呼叫 nextjs_call 來查詢它們的真實狀態。
工具
| 工具 | 功能 |
|---|---|
nextjs_index | 探索正在執行的 Next.js 開發伺服器,並列出每個伺服器的執行時期 MCP 工具。 |
nextjs_call | 在探索到的伺服器上呼叫執行時期工具(錯誤、路由、日誌、Server Actions)。 |
nextjs_docs | 閘道。 將代理程式指向 node_modules/next/dist/docs/ 中版本精確的文件。 |
browser_eval | 閘道。 將代理程式指向 agent-browser CLI 以進行瀏覽器自動化。 |
閘道本身不執行工作 — 它們告訴代理程式文件在哪裡,或如何安裝/執行 CLI,然後代理程式直接執行它(比透過 MCP 代理更快)。
nextjs_index — 探索伺服器
掃描常見連接埠以尋找正在執行的 Next.js 16+ 開發伺服器,並在 /_next/mcp 列出每個伺服器的內建執行時期工具。無參數。
Next.js 公開的執行時期工具(依版本而異):
get_errors— 目前的建置、執行時期和型別錯誤get_logs— 開發日誌檔案的路徑(瀏覽器主控台 + 伺服器輸出)get_page_metadata— 路由、頁面、元件中繼資料get_project_metadata— 專案結構、設定、開發伺服器 URLget_server_action_by_id— 將 Server Action ID 解析為其來源檔案
輸出:JSON,列出探索到的伺服器(連接埠、PID、URL)及其工具。
nextjs_call — 執行執行時期工具
在探索到的伺服器上呼叫一個執行時期工具。先執行 nextjs_index 以找到連接埠和工具名稱。
輸入:
port(必填)— 開發伺服器連接埠toolName(必填)— 要呼叫的執行時期工具args(選填)— 引數物件,僅在工具需要時使用
{ "port": 3000, "toolName": "get_errors" }
輸出:JSON,包含工具的結果。上游請求(包括回應主體讀取)有 60 秒的截止時間。取消 MCP 請求會中止其上游網路工作;探索也會釋放僅用於偵測協定的回應主體。
nextjs_docs — 尋找版本精確的文件
不會擷取文件。最近的 Next.js 版本在 node_modules/next/dist/docs/ 綁定了它們的文件(markdown,與你安裝的版本相符)。此工具在返回閱讀指示之前會先檢查這些檔案。如果安裝的版本沒有綁定的文件(包括早期的 16.x 版本),它會提供 https://nextjs.org/docs 作為備援,並要求代理程式根據安裝的版本驗證 API。缺少的依賴項會收到安裝指引。在低於 16 的 Next.js 上,它會建議 npx @next/codemod@latest upgrade latest。
輸入:topic(選填)、project_path(選填,預設為 cwd)。此工具會從該專案解析 next/package.json,包括提升的工作區依賴項,並為安裝的套件傳回絕對的 docsPath。
browser_eval — 設定瀏覽器自動化
不會驅動瀏覽器。它會偵測是否已安裝 agent-browser,並傳回進入點(agent-browser skills get core --full)或安裝步驟(npm install -g agent-browser,然後 agent-browser install),以便代理程式直接執行 CLI。
輸入:task(選填)— 僅用於調整指引。
從 0.3.x 遷移
從 0.4.0 開始,next-devtools-mcp 是一個輕量連接器。
已變更:
nextjs_docs不再透過網路擷取文件。它會將代理程式指向 Next.js 在node_modules/next/dist/docs/綁定的文件(或建議升級)。nextjs-docs://llms-index資源已移除。
已移除:
init工具 — 它只強制執行舊的文件擷取工作流程。upgrade_nextjs_16和enable_cache_components工具及其提示 — 現在以代理程式技能的形式發布。- 所有
cache-components://、nextjs16://和nextjs-fundamentals://資源 — 已被綁定的文件取代。
保留的內容:nextjs_index、nextjs_call、nextjs_docs 和 browser_eval。
隱私與遙測
next-devtools-mcp 收集匿名使用遙測資料以改善工具:
- 工具使用情況 — 呼叫了哪些 MCP 工具(例如
nextjs_index、nextjs_call) - 錯誤事件 — 工具失敗時的匿名錯誤訊息
- 工作階段中繼資料 — 工作階段 ID、時間戳記、基本環境(作業系統、Node.js 版本)
不收集: 你的程式碼、檔案內容或路徑、個人資料、憑證或工具引數(僅收集工具名稱)。
本機檔案位於 ~/.next-devtools-mcp/ 下(匿名的 telemetry-id、telemetry-salt 和偵錯日誌 mcp.log)。
選擇退出 的方法是設定環境變數(將其新增至 ~/.zshrc / ~/.bashrc 以持久化):
export NEXT_TELEMETRY_DISABLED=1
隨時刪除本機遙測資料:
rm -rf ~/.next-devtools-mcp
疑難排解
ERR_MODULE_NOT_FOUND 參照 next-devtools-mcp/dist — 清除你的 npx 快取並重新啟動你的 MCP 用戶端。伺服器會重新安裝。
[error] No server info found — nextjs_index / nextjs_call 需要正在執行的 Next.js 16+ 開發伺服器:
- 啟動它:
npm run dev - 確認 Next.js 16+(
/_next/mcp端點僅存在於該版本) - 確認它啟動時沒有錯誤
browser_eval 和 nextjs_docs 在沒有開發伺服器的情況下也能運作。
本機開發
git clone https://github.com/vercel/next-devtools-mcp.git
cd next-devtools-mcp
pnpm install
pnpm build
將你的 MCP 用戶端指向本機建置:
{
"mcpServers": {
"next-devtools": {
"command": "node",
"args": ["/absolute/path/to/next-devtools-mcp/dist/index.js"]
}
}
}
或使用 Codex:
codex mcp add next-devtools-local -- node dist/index.js
請參閱 Next.js MCP 文件 以了解 MCP 如何與 Next.js 和編碼代理程式搭配運作。
授權
MIT