项目简介

MCP Unity Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,专为 Unity 编辑器设计。它充当 Unity 编辑器和 AI 助手之间的桥梁,使 AI 能够理解 Unity 项目的上下文并执行相关操作。通过 MCP 协议,AI 助手可以调用预定义的工具来与 Unity 编辑器进行交互,例如执行菜单项操作,从而实现更智能化的 Unity 编辑工作流程。

主要功能点

  • 执行菜单项 (execute_menu_item): 允许 AI 助手通过指定菜单路径,调用和执行 Unity 编辑器中的菜单项功能(例如 "GameObject/Create Empty")。

安装步骤

  1. 通过 Unity Package Manager 安装 MCP Unity Server 包:

    • 打开 Unity 编辑器的 Package Manager (Window > Package Manager)。
    • 点击左上角的 "+" 按钮。
    • 选择 "Add package from git URL..."。
    • 输入 'https://github.com/CoderGamester/mcp-unity.git' 并点击 "Add"。
  2. 安装 Node.js:

  3. 构建服务器 (Server):

    • 打开终端或命令提示符,导航到 'mcp-unity' 包的 'Server' 目录(通常位于 Unity 项目的 'Packages' 目录下,或者如果您直接将仓库克隆到 'Assets' 目录下,则位于 'Assets/mcp-unity/Server')。
    • 运行命令 'npm install' 安装依赖。
    • 运行命令 'npm run build' 构建服务器代码。

服务器配置

MCP 服务器需要配置在 MCP 客户端中,以便客户端能够连接并调用其提供的功能。以下是一些常见 MCP 客户端(如 Cursor, Claude, Windsurf)的配置示例。您需要将以下 JSON 配置信息添加到您的 MCP 客户端设置中。

{
  "serverName": "mcp-unity",  // MCP 服务器名称,您可以自定义
  "command": "node",         // 启动服务器的命令,这里使用 Node.js 运行 JavaScript 文件
  "args": [                  // 启动命令的参数
    "path/to/mcp-unity/Server/build/index.js"  // 请替换为 mcp-unity 仓库 Server 目录下 build/index.js 文件的绝对路径
  ],
  "env": {                    // 环境变量
    "UNITY_PORT": "8090"     // Unity WebSocket 服务器端口,与 Unity 编辑器中配置的端口一致
  }
}

配置说明:

  • 'serverName': 为您的 MCP 服务器指定一个易于识别的名称,例如 "mcp-unity"。
  • 'command': 指定用于启动 MCP 服务器的命令。对于 MCP Unity Server,通常使用 'node' 命令来运行 JavaScript 文件。
  • 'args': 一个字符串数组,包含传递给启动命令的参数。
    • 'path/to/mcp-unity/Server/build/index.js': 请务必将 'path/to/mcp-unity' 替换为您本地 'mcp-unity' 仓库 'Server/build/index.js' 文件的实际绝对路径。 例如,如果您的 'mcp-unity' 仓库位于 'D:\Projects\mcp-unity',则此处应填写 '"D:\Projects\mcp-unity\Server\build\index.js"'。
  • 'env': 一个包含环境变量的 JSON 对象。
    • 'UNITY_PORT': 指定 Unity 编辑器 WebSocket 服务器监听的端口。请确保此端口号与您在 Unity 编辑器 "MCP Unity Server Window" (Tools > MCP Unity > Server Window) 中设置的 "WebSocket Port" 端口号一致。默认端口为 '8090'。

基本使用方法

  1. 启动 Node.js 服务器:

    • 打开终端或命令提示符,导航到 'mcp-unity' 仓库根目录。
    • 运行命令 'node Server/build/index.js' 启动 Node.js MCP 服务器。
  2. 启动 Unity 编辑器 MCP Server:

    • 打开 Unity 编辑器。
    • 点击菜单 "Tools > MCP Unity > Server Window" 打开 MCP Unity Server 窗口。
    • 点击 "Start Server" 按钮启动 Unity 编辑器内的 WebSocket 服务器。
  3. 配置并连接 MCP 客户端:

    • 在您的 MCP 客户端(如 Cursor, Claude, Windsurf)中,根据 "服务器配置" 章节的说明,添加并配置 MCP Unity Server。
    • 确保 MCP 客户端成功连接到 MCP Unity Server。
  4. 使用 AI 助手调用工具:

    • 现在您可以使用 AI 助手,通过 MCP 协议调用 'execute_menu_item' 工具来执行 Unity 编辑器中的菜单项操作。例如,您可以指示 AI 助手执行 "GameObject/Create Empty" 菜单项来在 Unity 场景中创建一个空物体。

信息

分类

开发者工具