Next.js DevTools MCP
官方next-devtools-mcp 是一个 MCP 服务器,为 Claude 和 Cursor 等 AI 编码助手提供 Next.js 开发工具和实用程序。
你可以用 Next Js Dev Tools MCP 做什么?
- 发现正在运行的 Next.js 开发服务器 — 使用
nextjs_index查找活跃的 Next.js 16+ 服务器,并查看每个服务器暴露了哪些运行时工具。 - 查询实时的运行时错误和日志 — 在已发现的端口上调用
nextjs_call并传入get_errors或get_logs,以获取当前的构建错误、运行时错误、类型错误或开发服务器日志。 - 检查路由和页面元数据 — 使用
nextjs_call并传入get_page_metadata,列出运行中应用的所有路由、页面和组件元数据。 - 将服务器操作 ID 解析为源文件 — 调用
nextjs_call并传入get_server_action_by_id,将服务器操作 ID 映射回其实现文件。 - 获取与版本匹配的 Next.js 文档 — 使用
nextjs_docs定位node_modules/next/dist/docs/中与已安装 Next.js 版本对应的捆绑文档。 - 设置浏览器自动化 — 使用
browser_eval检测或安装agent-browserCLI,以便代理能够直接驱动浏览器。
文档
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/处捆绑了自己的文档,升级/缓存组件工作流则作为代理技能分发。请参阅从 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 | 在已发现的服务器上调用运行时工具(错误、路由、日志、服务器操作)。 |
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— 将服务器操作 ID 解析为其源文件
输出:列出已发现服务器(端口、PID、URL)及其工具的 JSON。
nextjs_call — 运行运行时工具
在已发现的服务器上调用一个运行时工具。先运行 nextjs_index 以查找端口和工具名称。
输入:
port(必需)— 开发服务器端口toolName(必需)— 要调用的运行时工具args(可选)— 参数对象,仅在工具需要时提供
{ "port": 3000, "toolName": "get_errors" }
输出:包含工具结果的 JSON。
nextjs_docs — 查找版本精确的文档
不获取文档。Next.js 16+ 在 node_modules/next/dist/docs/ 处提供了其完整文档(markdown,与你安装的版本匹配)。此工具返回该路径以及如何读取它,以便代理使用版本精确的文档,而不是基于训练数据的猜测。在较旧的 Next.js 上,它建议使用 npx @next/codemod@latest upgrade latest。
输入:topic(可选),project_path(可选,默认为当前工作目录)。
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