使用说明
项目简介
Unity场景设计MCP服务器是一个基于Model Context Protocol (MCP) 构建的后端服务,旨在连接LLM客户端(如AI助手)与Unity编辑器,实现通过自然语言指令程序化地创建和修改Unity场景。该服务器通过注册工具,允许LLM客户端调用预定义的功能,例如创建场景、添加物体、调整场景元素等,从而实现AI辅助的Unity场景设计工作流。
主要功能点
- 程序化场景创建与修改: 允许LLM客户端通过调用工具,自动化地在Unity中创建和修改场景,例如添加地板、墙壁、灯光、相机和基本3D物体。
- AI辅助场景设计: 通过与LLM客户端(如Claude桌面应用)集成,用户可以使用自然语言指令引导场景设计过程,由LLM调用MCP服务器提供的工具完成具体操作。
- 实时预览与调整(推测): 虽然代码中没有明确体现实时预览功能,但根据描述和代码逻辑,服务器可能支持将生成的C#脚本发送回Unity编辑器执行,从而实时更新场景。
- 基于脚本的场景生成: 服务器的核心工作模式是生成或修改C# Unity Editor脚本,然后由Unity编辑器执行这些脚本来完成场景的构建或修改。
安装步骤
- 安装Node.js: 由于该MCP服务器使用Node.js开发,因此需要先安装Node.js运行环境。请访问 https://nodejs.org/ 下载并安装适合您操作系统的版本。
- 克隆仓库: 使用Git工具克隆该GitHub仓库到本地:
git clone https://github.com/propenster/unity-mcp-server.git cd unity-mcp-server - 安装依赖: 在仓库根目录下,运行npm install命令安装项目依赖:
npm install
服务器配置
MCP客户端需要配置以下信息以连接到Unity场景设计MCP服务器。以下是一个JSON格式的配置示例,您可以根据实际情况进行调整:
{ "serverName": "unity-scene-designer-mcp-server", "command": "node", "args": [ "index.js" ], "transport": "stdio", "description": "Unity场景设计MCP服务器,用于AI辅助Unity场景创建。", "capabilities": { "tools": [ "unity_scene_designer", "send_modified_script_back_to_server" ] } }
配置参数说明:
- 'serverName': 服务器名称,可以自定义,用于在MCP客户端中标识该服务器,例如 "unity-scene-designer-mcp-server"。
- 'command': 启动服务器的命令,这里是 "node",因为服务器是Node.js应用。
- 'args': 启动命令的参数,这里是 '["index.js"]',指向服务器入口文件 'index.js'。
- 'transport': 传输协议,这里是 "stdio",表示使用标准输入输出流进行通信。
- 'description': 服务器描述,用于在MCP客户端界面显示,例如 "Unity场景设计MCP服务器,用于AI辅助Unity场景创建。"
- 'capabilities.tools': 服务器提供的工具列表,列出了该服务器注册的工具名称,例如 '["unity_scene_designer", "send_modified_script_back_to_server"]'。 MCP客户端可以通过 'ListTools' 请求获取完整的工具列表及其详细信息。
请注意: MCP客户端需要能够执行 'node index.js' 命令来启动服务器。请确保Node.js已正确安装并添加到系统环境变量中。
基本使用方法
- 启动MCP服务器: 在仓库根目录下,运行命令 'node index.js' 启动服务器。服务器将通过stdio与MCP客户端通信。
- 在MCP客户端中配置并连接服务器: 根据MCP客户端的指引,添加上面提供的服务器配置信息,并连接到 "unity-scene-designer-mcp-server"。
- 使用LLM客户端调用工具: 连接成功后,您可以指示LLM客户端使用注册的工具,例如:
- 调用 'unity_scene_designer' 工具,并提供 'query' (场景设计查询语句) 和 'unity_project_path' (Unity项目路径) 作为参数,以请求服务器生成初始的Unity Editor脚本。
- LLM客户端接收到服务器返回的C#脚本后,可以根据用户指令或自身逻辑修改脚本。
- 修改完成后,调用 'send_modified_script_back_to_server' 工具,将 'modified_script' (修改后的C#脚本代码) 和 'unity_project_path' 作为参数发送回服务器,服务器会将脚本写入Unity项目的指定位置。
- 在Unity编辑器中查看效果: 服务器写入脚本后,Unity编辑器通常会自动编译并执行Editor脚本,您可以在Unity编辑器中实时看到场景的变化。
重要提示:
- Unity项目路径: 'unity_project_path' 参数至关重要,需要指向您本地的Unity项目的根目录。请确保LLM客户端在调用工具时正确提供此路径。
- C#脚本生成与修改: 该MCP服务器的核心机制是生成和修改C# Editor脚本。LLM客户端需要具备理解和修改C#代码的能力,才能有效地与该服务器协同工作。
- 错误处理: 代码中包含基本的错误处理,但实际使用中可能需要更完善的错误提示和日志记录,以便调试和排错。
- 功能扩展: 该服务器目前只实现了场景设计相关的基本工具,您可以根据需要扩展 'index.ts' 中的工具定义和处理逻辑,添加更多Unity编辑器操作功能。
信息
分类
开发者工具