项目简介

Unity MCP 集成框架旨在将强大的Unity编辑器功能暴露给外部AI语言模型,使其能够通过标准化的Model Context Protocol (MCP) 进行交互。框架包含运行在Unity编辑器内的C#组件和作为MCP服务器运行的TypeScript组件,两者通过TCP/IP协议通信。AI客户端(如支持MCP的LLM)连接到TypeScript服务器,该服务器再将命令转发给Unity执行。

主要功能点

  • MCP协议集成: 符合Model Context Protocol标准,支持工具(Tools)、资源(Resources)和提示模板(Prompts)的定义和声明。
  • 双向通信: TypeScript MCP服务器与Unity编辑器之间通过TCP/IP进行可靠通信。
  • 可扩展命令处理: 允许开发者在C#和TypeScript中创建自定义的命令处理程序(Handler),扩展AI可控制的Unity功能。
  • 自动发现: 自动检测和注册自定义命令处理程序。
  • 编辑器集成: 提供Unity偏好设置界面,方便配置服务器连接和启用/禁用命令处理程序。
  • 后台执行: 在Unity编辑器中运行,AI可在不打断工作流程的情况下执行任务。

安装步骤

  1. 安装必要软件:

    • 确保已安装 Unity 2023.2.19f1 或更高版本。
    • 确保已安装 .NET/C# 9.0
    • 确保已安装 Node.js 18.0.0 或更高版本及 npm(用于运行TypeScript MCP服务器)。访问 Node.js 官方网站 下载安装。
  2. 在Unity项目中安装框架:

    • 打开Unity。
    • 打开包管理器(菜单栏: 'Window' > 'Package Manager')。
    • 点击左上角的 '+' 按钮。
    • 选择 'Add package from git URL...'。
    • 输入仓库URL并指定路径: 'https://github.com/isuzu-shiranui/UnityMCP.git?path=jp.shiranui-isuzu.unity-mcp'。
    • 点击 'Add'。Unity将下载并导入框架包。
  3. 导入示例 (可选):

    • 在包管理器中选择 'Unity MCP' 包。
    • 在右侧详情面板中,找到 'Samples' 部分。
    • 点击 'Import' 按钮,导入所需的示例(例如 'Unity MCP Handler Samples')。

服务器配置 (供MCP客户端使用)

Unity MCP 集成框架的MCP服务器部分是运行在Node.js环境下的TypeScript应用。支持MCP的LLM客户端(如Claude Desktop)需要配置启动这个TypeScript服务器作为外部工具提供者。

以下是为MCP客户端配置Unity MCP服务器的示例配置信息 (格式通常为JSON):

{
  "mcpServers": {
    "unity-mcp": { // 服务器的唯一名称,可自定义
      "command": "node", // 启动MCP服务器的命令
      "args": [
        "path/to/UnityMCP/unity-mcp-ts/build/index.js" // TypeScript MCP服务器入口文件的实际路径
        // 注意: 这里的路径应指向您下载或构建Unity MCP仓库后,TypeScript部分的build目录下的index.js文件。
        // Windows路径请使用双反斜杠 "\\" 或正斜杠 "/"。
      ],
      // 可选的环境变量配置,用于指定连接的Unity Editor实例的地址和端口
      "env": {
        "UNITY_HOST": "127.0.0.1", // Unity Editor监听的IP地址 (通常是本地127.0.0.1)
        "UNITY_PORT": "27182"      // Unity Editor监听的端口 (与Unity偏好设置中配置一致)
      }
    }
  }
}

请根据您的实际文件路径和Unity Editor配置修改上述 'args' 和 'env' 中的值。

基本使用方法

  1. 在Unity编辑器中启动服务器:

    • 打开Unity编辑器。
    • 进入Unity偏好设置(菜单栏: 'Edit' > 'Preferences')。
    • 在左侧找到 'Unity MCP'。
    • 配置 'Host' (默认 '127.0.0.1') 和 'Port' (默认 '27182')。确保此端口未被占用。
    • 点击 'Start Server' 按钮。控制台将输出服务器启动信息。您可以勾选 'Auto-start on Launch' 实现Unity启动时自动开启。
  2. 配置并启动MCP客户端:

    • 按照您使用的MCP客户端(例如Claude Desktop)的文档,配置上述“服务器配置”中的信息。
    • 启动MCP客户端。客户端应能检测到并连接到您在步骤1中启动的Unity MCP服务器(TypeScript部分)。
  3. AI与Unity交互:

    • 一旦客户端成功连接到MCP服务器,AI语言模型就可以发现并调用MCP服务器暴露的工具、访问资源或使用提示模板。
    • 例如,如果导入了示例处理程序,AI可能会通过调用工具来搜索Unity项目中的资源、执行Unity菜单项或运行自定义C#代码,并将结果返回给您。

框架是可扩展的,您可以通过实现 'IMcpCommandHandler' (C#) 或继承 'BaseCommandHandler' (TypeScript) 来添加更多自定义功能。

信息

分类

开发者工具