The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Next Devtools MCP listing page.
next-devtools-mcp is a Model Context Protocol (MCP) server that connects coding agents like Claude and Cursor to your running Next.js dev server.
It is a thin connector. It discovers running Next.js 16+ dev servers and proxies their built-in MCP endpoint (/_next/mcp) so agents get live runtime errors, routes, and logs. It also ships two gateways that point agents at tools they run directly: version-accurate docs and the agent-browser CLI.
[!NOTE] Docs and migration workflows no longer live in this server. Next.js bundles its own docs at
node_modules/next/dist/docs/, and upgrade / Cache Components workflows are distributed as agent skills. See Migrating from 0.3.x.
nextjs_index / nextjs_call)Install for all your coding agents with add-mcp:
Add -y to skip the prompt and install to all detected agents. Add -g to install globally across all projects.
Or add the config to your MCP client manually:
[!NOTE]
next-devtools-mcp@latestkeeps your client on the latest version.
Or follow Amp's MCP docs with the config above.
Or edit your MCP settings file with the config above.
Windows 11: add environment variables and a longer startup timeout to .codex/config.toml:
Or follow the official VS Code MCP setup guide.
Settings | AI | Manage MCP Servers → + Add:
next-devtoolsnpx-y, next-devtools-mcp@latestStart your Next.js dev server:
Next.js 16+ enables its MCP endpoint by default at http://localhost:3000/_next/mcp. next-devtools-mcp discovers and connects to it automatically — no config needed.
Then ask your agent about the running app:
The agent calls nextjs_index to discover servers, then nextjs_call to query their real state.
| Tool | What it does |
|---|---|
nextjs_index | Discover running Next.js dev servers and list each one's runtime MCP tools. |
nextjs_call | Call a runtime tool on a discovered server (errors, routes, logs, Server Actions). |
nextjs_docs | Gateway. Point the agent at version-accurate docs in node_modules/next/dist/docs/. |
browser_eval | Gateway. Point the agent at the agent-browser CLI for browser automation. |
The gateways do not do the work themselves — they tell the agent where the docs are or how to install/run the CLI, and the agent runs it directly (faster than proxying through MCP).
nextjs_index — discover serversScans common ports for running Next.js 16+ dev servers and lists each server's built-in runtime tools at /_next/mcp. No parameters.
Runtime tools exposed by Next.js (varies by version):
get_errors — current build, runtime, and type errorsget_logs — path to the dev log file (browser console + server output)get_page_metadata — routes, pages, component metadataget_project_metadata — project structure, config, dev server URLget_server_action_by_id — resolve a Server Action ID to its source fileOutput: JSON listing discovered servers (port, PID, URL) and their tools.
nextjs_call — run a runtime toolCalls one runtime tool on a discovered server. Run nextjs_index first to find the port and tool name.
Input:
port (required) — dev server porttoolName (required) — runtime tool to invokeargs (optional) — arguments object, only if the tool requires themOutput: JSON with the tool's result. Upstream requests, including response-body reads, have a 60-second deadline. Cancelling an MCP request aborts its upstream network work; discovery also releases response bodies used only to detect the protocol.
nextjs_docs — find version-accurate docsDoes not fetch docs. Recent Next.js releases bundle their docs (markdown, matching your installed version) at node_modules/next/dist/docs/. This tool checks for those files before returning reading instructions. If an installed release has no bundled docs (including early 16.x releases), it offers https://nextjs.org/docs as a fallback and asks the agent to verify APIs against the installed version. Missing dependencies receive installation guidance instead. On Next.js below 16, it recommends npx @next/codemod@latest upgrade latest.
Input: topic (optional), project_path (optional, defaults to cwd). The tool resolves next/package.json from that project, including hoisted workspace dependencies, and returns an absolute docsPath for the installed package.
browser_eval — set up browser automationDoes not drive the browser. It detects whether agent-browser is installed and returns either the entry point (agent-browser skills get core --full) or the install steps (npm install -g agent-browser, then agent-browser install), so the agent runs the CLI directly.
Input: task (optional) — used only to tailor the guidance.
Starting in 0.4.0, next-devtools-mcp is a thin connector.
Changed:
nextjs_docs no longer fetches docs over the network. It points the agent at the docs Next.js bundles at node_modules/next/dist/docs/ (or recommends upgrading). The nextjs-docs://llms-index resource is removed.Removed:
init tool — it only enforced the old docs-fetch workflow.upgrade_nextjs_16 and enable_cache_components tools and their prompts — now distributed as agent skills.cache-components://, nextjs16://, and nextjs-fundamentals:// resources — superseded by the bundled docs.What remains: nextjs_index, nextjs_call, nextjs_docs, and browser_eval.
next-devtools-mcp collects anonymous usage telemetry to improve the tool:
nextjs_index, nextjs_call)Not collected: your code, file contents or paths, personal data, credentials, or tool arguments (only tool names).
Local files live under ~/.next-devtools-mcp/ (anonymous telemetry-id, telemetry-salt, and a debug log mcp.log).
Opt out by setting the environment variable (add it to ~/.zshrc / ~/.bashrc to persist):
Delete local telemetry data anytime:
ERR_MODULE_NOT_FOUND referencing next-devtools-mcp/dist — clear your npx cache and restart your MCP client. The server reinstalls fresh.
[error] No server info found — nextjs_index / nextjs_call need a running Next.js 16+ dev server:
npm run dev/_next/mcp endpoint only exists there)browser_eval and nextjs_docs work without a dev server.
Point your MCP client at the local build:
Or with Codex:
See the Next.js MCP documentation for how MCP works with Next.js and coding agents.
MIT