🚀 Advacned Unity MCP Integration

🚀 Advacned Unity MCP Integration

site icon
2025.04.15 40
C#Unity 开发AI 辅助开发自动化工具开发效率
UnityMCPIntegration 是一个将 Model Context Protocol (MCP) 与 Unity 编辑器无缝集成的工具包,允许 AI 助手实时理解和交互 Unity 项目。通过该集成,AI 助手可以访问场景层次结构、项目设置信息,并直接在 Unity 编辑器上下文中执行代码。
View on GitHub

Overview

基本能力

产品定位

UnityMCPIntegration 旨在为 Unity 开发者提供一个桥梁,使 AI 助手能够直接与 Unity 项目交互,提升开发效率和自动化能力。

核心功能

  • 项目文件浏览与操作:直接浏览和操作项目文件。
  • 实时项目信息访问:获取 Unity 项目的实时信息。
  • 场景层次结构理解:理解场景中的游戏对象层次结构。
  • C# 代码执行:直接在 Unity 编辑器中执行 C# 代码。
  • 日志与错误监控:监控 Unity 控制台的日志和错误。
  • 编辑器播放模式控制:控制 Unity 编辑器的播放模式。
  • 文件系统工具:包括文件读写、目录列表、文件搜索等。

适用场景

  • AI 辅助开发:AI 助手可以实时查看和修改 Unity 项目,提供开发建议。
  • 自动化测试:自动化执行代码和场景操作,进行测试。
  • 项目分析与优化:通过访问项目结构和设置,帮助优化项目性能。

工具列表

  • Unity Editor Tools
  • get_editor_state:获取 Unity 项目和编辑器状态的全面信息。
  • get_current_scene_info:获取当前场景的详细信息。
  • get_game_objects_info:获取场景中特定游戏对象的信息。
  • execute_editor_command:在 Unity 编辑器中直接执行 C# 代码。
  • get_logs:检索和过滤 Unity 控制台日志。
  • verify_connection:检查与 Unity 编辑器的连接状态。
  • Filesystem Tools
  • read_file:读取 Unity 项目中的文件内容。
  • read_multiple_files:一次性读取多个文件。
  • write_file:创建或覆盖文件内容。
  • edit_file:对现有文件进行针对性编辑,并提供差异预览。
  • list_directory:获取目录中的文件和文件夹列表。
  • directory_tree:获取目录和文件的层次视图。
  • search_files:根据搜索模式查找文件。
  • get_file_info:获取特定文件或目录的元数据。
  • find_assets_by_type:查找特定类型的资产(如材质、预制体)。
  • list_scripts:获取项目中所有 C# 脚本的列表。

常见问题解答

  • 如何安装 Unity 包? 可以通过 Unity 包管理器(Git URL)或导入自定义包的方式安装。
  • 如何运行 MCP 服务器? 可以通过直接运行服务器或添加到 MCP 主机配置中运行。
  • 如何调试和监控? 打开 Unity 中的 MCP Debug 窗口,可以检查连接状态、测试代码执行、查看日志和监控事件。

使用教程

使用依赖

  • Unity 2021.3 或更高版本
  • Node.js 18+(用于运行 MCP 服务器)

安装教程

1. 安装 Unity 包

选项 A:包管理器(Git URL) 1. 打开 Unity 包管理器(Window > Package Manager)。 2. 点击 + 按钮,选择 Add package from git URL...。 3. 输入仓库 URL:https://github.com/quazaai/UnityMCPIntegration.git。 4. 点击 Add

选项 B:导入自定义包 1. 克隆此仓库或下载 unityPackage。 2. 在 Unity 中,转到 Assets > Import Package > Custom Package。 3. 选择 UnityMCPIntegration.unitypackage 文件。

2. 设置 MCP 服务器

选项 A:直接运行服务器 1. 导航到 mcpServer 目录(通常位于 <path-to-project>\Library\PackageCache\com.quaza.unitymcp@d2b8f1260bca\mcpServer\)。 2. 安装依赖: bash npm install 3. 运行服务器: bash node build/index.js

选项 B:添加到 MCP 主机配置 将以下配置添加到 MCP 主机配置文件中:

{
  "mcpServers": {
    "unity-mcp-server": {
      "command": "node",
      "args": [
        "path-to-project>\\Library\\PackageCache\\com.quaza.unitymcp@d2b8f1260bca\\mcpServer\\mcpServer\\build\\index.js"
      ],
      "env": {
        "MCP_WEBSOCKET_PORT": "5010"
      }
    }
  }
}

调试方式

  1. 在 Unity 中,打开 Window > MCP Debug 窗口。
  2. 使用调试窗口:
  3. 检查连接状态。
  4. 测试代码执行。
  5. 查看日志。
  6. 监控事件。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。