Next.js DevTools MCP

ทางการ

next-devtools-mcp เป็นเซิร์ฟเวอร์ MCP ที่ให้เครื่องมือและยูทิลิตี้สำหรับการพัฒนา Next.js แก่ผู้ช่วยเขียนโค้ด AI เช่น Claude และ Cursor

GitHub
821
ลองใช้ MCP นี้ผู้สนับสนุน

คุณทำอะไรได้บ้างด้วย Next Js DevTools MCP?

  • Discover dev servers — ขอให้ผู้ช่วยของคุณรัน nextjs_index และแสดงรายการเซิร์ฟเวอร์พัฒนาที่ใช้ Next.js 16+ ที่กำลังทำงานพร้อมกับเครื่องมือรันไทม์ของพวกมัน
  • Query live app state — ใช้ nextjs_call เพื่อดึงข้อมูลข้อผิดพลาด เส้นทาง ล็อก หรือ Server Actions ปัจจุบันจากพอร์ตเซิร์ฟเวอร์พัฒนาที่ระบุ
  • Find version-accurate docs — ให้ nextjs_docs ค้นหาเอกสาร Next.js ที่มาพร้อมกับแพ็กเกจใน node_modules/next/dist/docs/ สำหรับเวอร์ชันที่คุณติดตั้งไว้
  • Set up browser automation — ขอให้ browser_eval ตรวจจับ agent-browser และส่งคืนขั้นตอนการติดตั้งหรือจุดเริ่มต้น CLI สำหรับการใช้งานโดยตรง

เอกสาร

Next.js DevTools MCP

npm next-devtools-mcp package

next-devtools-mcp คือเซิร์ฟเวอร์ Model Context Protocol (MCP) ที่เชื่อมต่อเอเจนต์เขียนโค้ดอย่าง Claude และ Cursor เข้ากับเซิร์ฟเวอร์พัฒนา Next.js ที่กำลังรันอยู่

มันคือตัวเชื่อมต่อแบบบางเบา มันค้นหาเซิร์ฟเวอร์พัฒนา Next.js 16+ ที่กำลังรันอยู่และพร็อกซีไปยัง MCP endpoint ในตัว (/_next/mcp) เพื่อให้เอเจนต์ได้รับข้อผิดพลาด เส้นทาง และล็อกแบบเรียลไทม์ มันยังมาพร้อมกับเกตเวย์สองตัวที่ชี้เอเจนต์ไปยังเครื่องมือที่รันโดยตรง: เอกสารที่ตรงกับเวอร์ชันและ CLI agent-browser

[!NOTE] เอกสารและเวิร์กโฟลว์การย้ายเวอร์ชันไม่ได้อยู่ในเซิร์ฟเวอร์นี้อีกต่อไป Next.js รวมเอกสารของตัวเองไว้ที่ node_modules/next/dist/docs/ และเวิร์กโฟลว์การอัปเกรด / Cache Components ถูกแจกจ่ายเป็นทักษะของเอเจนต์ ดู Migrating from 0.3.x

ข้อกำหนด

  • Node.js v20.19 หรือเวอร์ชัน LTS ที่ใหม่กว่า
  • npm หรือ pnpm
  • Next.js 16+ พร้อมเซิร์ฟเวอร์พัฒนาที่กำลังรันอยู่ (สำหรับ nextjs_index / nextjs_call)

การติดตั้ง

ติดตั้งสำหรับเอเจนต์เขียนโค้ดทั้งหมดของคุณด้วย add-mcp:

npx add-mcp next-devtools-mcp@latest

เพิ่ม -y เพื่อข้ามพรอมต์และติดตั้งไปยังเอเจนต์ที่ตรวจพบทั้งหมด เพิ่ม -g เพื่อติดตั้งแบบทั่วโลกในทุกโปรเจกต์

หรือเพิ่มการกำหนดค่าไปยัง MCP client ของคุณด้วยตนเอง:

{
  "mcpServers": {
    "next-devtools": {
      "command": "npx",
      "args": ["-y", "next-devtools-mcp@latest"]
    }
  }
}

[!NOTE] next-devtools-mcp@latest ทำให้ client ของคุณอยู่บนเวอร์ชันล่าสุด

การตั้งค่าเฉพาะ client

Amp
amp mcp add next-devtools -- npx next-devtools-mcp@latest

หรือทำตาม เอกสาร MCP ของ Amp ด้วยการกำหนดค่าด้านบน

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: เพิ่มตัวแปรสภาพแวดล้อมและค่า timeout เริ่มต้นที่นานขึ้นไปยัง .codex/config.toml:

env = { SystemRoot="C:\\Windows", PROGRAMFILES="C:\\Program Files" }
startup_timeout_ms = 20_000
Cursor

ติดตั้งใน Cursor

หรือไปที่ Cursor SettingsMCPNew MCP Server และใช้การกำหนดค่าด้านบน

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"]
    }
  }
}

ดู เอกสาร MCP ของ Antigravity

VS Code / Copilot
code --add-mcp '{"name":"next-devtools","command":"npx","args":["-y","next-devtools-mcp@latest"]}'

หรือทำตามคู่มือการตั้งค่า MCP อย่างเป็นทางการของ VS Code

Warp

Settings | AI | Manage MCP Servers+ Add:

  • ชื่อ: next-devtools
  • คำสั่ง: npx
  • อาร์กิวเมนต์: -y, next-devtools-mcp@latest

เริ่มต้นอย่างรวดเร็ว

เริ่มเซิร์ฟเวอร์พัฒนา Next.js ของคุณ:

npm run dev

Next.js 16+ เปิดใช้งาน MCP endpoint ของตัวเองโดยค่าเริ่มต้นที่ http://localhost:3000/_next/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เกตเวย์ ชี้เอเจนต์ไปยัง CLI agent-browser สำหรับการทำงานอัตโนมัติของเบราว์เซอร์

เกตเวย์ไม่ได้ทำงานด้วยตัวเอง — พวกมันบอกเอเจนต์ว่าเอกสารอยู่ที่ไหนหรือวิธีติดตั้ง/รัน CLI และเอเจนต์รันโดยตรง (เร็วกว่าการพร็อกซีผ่าน MCP)

nextjs_index — ค้นหาเซิร์ฟเวอร์

สแกนพอร์ตทั่วไปเพื่อหาเซิร์ฟเวอร์พัฒนา Next.js 16+ ที่กำลังรันอยู่และแสดงรายการเครื่องมือรันไทม์ในตัวของแต่ละเซิร์ฟเวอร์ที่ /_next/mcp ไม่มีพารามิเตอร์

เครื่องมือรันไทม์ที่เปิดเผยโดย Next.js (แตกต่างกันตามเวอร์ชัน):

  • get_errors — บิลด์ รันไทม์ และข้อผิดพลาดประเภทปัจจุบัน
  • get_logs — เส้นทางไปยังไฟล์ล็อก dev (คอนโซลเบราว์เซอร์ + เอาต์พุตเซิร์ฟเวอร์)
  • get_page_metadata — เส้นทาง เพจ เมตาดาต้าของคอมโพเนนต์
  • get_project_metadata — โครงสร้างโปรเจกต์ การกำหนดค่า URL เซิร์ฟเวอร์พัฒนา
  • get_server_action_by_id — แก้ไข Server Action ID เป็นไฟล์ต้นทาง

เอาต์พุต: JSON ที่แสดงรายการเซิร์ฟเวอร์ที่ค้นพบ (พอร์ต PID URL) และเครื่องมือของพวกมัน

nextjs_call — รันเครื่องมือรันไทม์

เรียกเครื่องมือรันไทม์หนึ่งตัวบนเซิร์ฟเวอร์ที่ค้นพบ รัน nextjs_index ก่อนเพื่อหาพอร์ตและชื่อเครื่องมือ

อินพุต:

  • port (จำเป็น) — พอร์ตเซิร์ฟเวอร์พัฒนา
  • toolName (จำเป็น) — เครื่องมือรันไทม์ที่จะเรียกใช้
  • args (ไม่บังคับ) — ออบเจกต์อาร์กิวเมนต์ เฉพาะเมื่อเครื่องมือต้องการ
{ "port": 3000, "toolName": "get_errors" }

เอาต์พุต: JSON พร้อมผลลัพธ์ของเครื่องมือ คำขอต้นทาง รวมถึงการอ่าน response body มีกำหนดเวลา 60 วินาที การยกเลิกคำขอ MCP จะยกเลิกงานเครือข่ายต้นทาง การค้นพบยังปล่อย response body ที่ใช้เฉพาะเพื่อตรวจจับโปรโตคอล

nextjs_docs — ค้นหาเอกสารที่ตรงกับเวอร์ชัน

ไม่ดึงเอกสาร การเผยแพร่ Next.js ล่าสุดรวมเอกสารของตัวเอง (markdown ตรงกับเวอร์ชันที่ติดตั้ง) ไว้ที่ node_modules/next/dist/docs/ เครื่องมือนี้ตรวจสอบไฟล์เหล่านั้นก่อนส่งคืนคำแนะนำการอ่าน หากการเผยแพร่ที่ติดตั้งไม่มีเอกสารรวม (รวมถึงรุ่น 16.x ต้นๆ) มันเสนอ https://nextjs.org/docs เป็นตัวสำรองและขอให้เอเจนต์ตรวจสอบ API กับเวอร์ชันที่ติดตั้ง การพึ่งพาที่ขาดหายไปจะได้รับคำแนะนำการติดตั้งแทน บน Next.js ต่ำกว่า 16 มันแนะนำ npx @next/codemod@latest upgrade latest

อินพุต: topic (ไม่บังคับ), project_path (ไม่บังคับ ค่าเริ่มต้นคือ cwd) เครื่องมือแก้ไข next/package.json จากโปรเจกต์นั้น รวมถึงการพึ่งพา workspace ที่ hoisted และส่งคืน 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

ความเป็นส่วนตัวและ Telemetry

next-devtools-mcp รวบรวม telemetry การใช้งานแบบไม่ระบุตัวตนเพื่อปรับปรุงเครื่องมือ:

  • การใช้งานเครื่องมือ — เครื่องมือ MCP ใดที่ถูกเรียก (เช่น nextjs_index, nextjs_call)
  • เหตุการณ์ข้อผิดพลาด — ข้อความข้อผิดพลาดแบบไม่ระบุตัวตนเมื่อเครื่องมือล้มเหลว
  • เมตาดาต้าเซสชัน — ID เซสชัน ไทม์สแตมป์ สภาพแวดล้อมพื้นฐาน (OS เวอร์ชัน Node.js)

ไม่เก็บ: โค้ดของคุณ เนื้อหาหรือเส้นทางไฟล์ ข้อมูลส่วนบุคคล ข้อมูลรับรอง หรืออาร์กิวเมนต์ของเครื่องมือ (เฉพาะชื่อเครื่องมือ)

ไฟล์ท้องถิ่นอยู่ภายใต้ ~/.next-devtools-mcp/ (telemetry-id แบบไม่ระบุตัวตน, telemetry-salt, และล็อกดีบัก mcp.log)

เลือกไม่ใช้ โดยตั้งค่าตัวแปรสภาพแวดล้อม (เพิ่มไปยัง ~/.zshrc / ~/.bashrc เพื่อให้คงอยู่):

export NEXT_TELEMETRY_DISABLED=1

ลบข้อมูล telemetry ท้องถิ่นได้ทุกเมื่อ:

rm -rf ~/.next-devtools-mcp

การแก้ไขปัญหา

ERR_MODULE_NOT_FOUND อ้างอิง next-devtools-mcp/dist — ล้างแคช npx และรีสตาร์ท MCP client ของคุณ เซิร์ฟเวอร์จะติดตั้งใหม่ทั้งหมด

[error] No server info foundnextjs_index / nextjs_call ต้องการเซิร์ฟเวอร์พัฒนา Next.js 16+ ที่กำลังรันอยู่:

  1. เริ่มมัน: npm run dev
  2. ยืนยัน Next.js 16+ (endpoint /_next/mcp มีอยู่เฉพาะที่นั่น)
  3. ตรวจสอบว่ามันเริ่มต้นโดยไม่มีข้อผิดพลาด

browser_eval และ nextjs_docs ทำงานโดยไม่ต้องมีเซิร์ฟเวอร์พัฒนา

การพัฒนาท้องถิ่น

git clone https://github.com/vercel/next-devtools-mcp.git
cd next-devtools-mcp
pnpm install
pnpm build

ชี้ MCP client ของคุณไปยังบิลด์ท้องถิ่น:

{
  "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

ดู เอกสาร MCP ของ Next.js สำหรับวิธีที่ MCP ทำงานกับ Next.js และเอเจนต์เขียนโค้ด

ใบอนุญาต

MIT