项目简介

Next-MCP-Server 是一个实用工具,它分析 Next.js 应用程序的路由结构,并将 API 路由的详细信息以 MCP Tool 的形式暴露给 MCP 客户端。

主要功能点

  • API 路由分析: 扫描 Next.js 应用目录,提取 API 路由信息,包括路径、HTTP 方法、参数、状态码和 Schema。
  • MCP Tool 集成: 将 Next.js 路由分析能力封装为名为 'get_routers_info' 的 MCP Tool,可通过 MCP 协议调用。
  • 标准 MCP 服务器: 基于 Model Context Protocol SDK 构建,支持 JSON-RPC 协议和 Stdio/SSE 传输协议。

安装步骤

  1. 安装 npm 包:

    npm install next-mcp-server

    或者使用 pnpm:

    pnpm add next-mcp-server
  2. 构建项目:

    npm run build

服务器配置

MCP 客户端需要以下配置信息来连接和使用 Next-MCP-Server。请将以下 JSON 配置添加到您的 MCP 客户端配置中:

{
  "serverName": "next-mcp-server",
  "command": "node",
  "args": [
    "dist/index.js"
  ],
  "transport": "stdio"
}

配置参数说明:

  • 'serverName': MCP 服务器的名称,可以自定义,例如 "next-mcp-server"。
  • 'command': 启动 MCP 服务器的命令,这里使用 'node' 运行 JavaScript 文件。
  • 'args': 传递给启动命令的参数,这里指定了构建后的服务器入口文件 'dist/index.js'。
  • 'transport': 指定 MCP 服务器使用的传输协议,这里使用 'stdio' 标准输入输出协议。 您也可以选择 'sse' 协议,但需要配置额外的端口参数和 URL_BASE 环境变量。

基本使用方法

  1. 启动服务器: 在仓库根目录下,根据您的选择,使用以下命令启动 Next-MCP-Server:

    • STDIO 传输 (默认):
      npm run build
      node dist/index.js
    • SSE 传输:
      npm run build
      TRANSPORT=sse node dist/index.js
      或者使用 Docker 启动:
      docker build -t mcp/next -f Dockerfile .
      docker run mcp/next -d
  2. 在 MCP 客户端中调用 Tool: 使用 MCP 客户端连接到 Next-MCP-Server 后,您可以调用名为 'get_routers_info' 的 Tool 来获取 Next.js 应用路由信息。

    • Tool 名称: 'get_routers_info'
    • Tool 描述: 'Get Pages details in the Next.js app.'
    • 输入参数: 'projectDir' (项目根目录,默认为当前工作目录)

    客户端发送 'CallToolRequest' 请求,参数 'name' 设置为 'get_routers_info','arguments' 中可以包含 'projectDir' 参数来指定 Next.js 项目的根目录。服务器将返回包含路由信息的 JSON 响应。

    例如,使用 MCP 客户端发送以下请求 (JSON-RPC 格式):

    {
      "jsonrpc": "2.0",
      "method": "MCP.CallTool",
      "params": {
        "name": "get_routers_info",
        "arguments": {
          "projectDir": "/path/to/your/nextjs/app"  // 可选,指定项目目录
        }
      },
      "id": 1
    }

    服务器将返回包含 Next.js 路由信息的 JSON 响应。

信息

分类

开发者工具