Unity自动化工具
一座通过模型上下文协议在Unity和大型语言模型之间实现无缝通信的桥梁,使开发人员能够自动化工作流、操作资源并以编程方式控制Unity编辑器。
服务介绍
Unity MCP 包
一个 Unity 包,通过 模型上下文协议 (MCP) 实现 Unity 与大型语言模型(如 Claude Desktop)之间的无缝通信。该服务器充当桥梁,允许 Unity 发送命令并接收来自符合 MCP 标准的工具的响应,使开发者能够自动化工作流程、操作资源,并以编程方式控制 Unity 编辑器。
欢迎使用这个开源项目的初始版本!无论您是想将 LLM 集成到您的 Unity 工作流中,还是希望为一款令人兴奋的新工具做出贡献,我都非常感谢您花时间查看!
概述
Unity MCP 服务器提供了一个双向通信通道,连接 Unity(通过 C#)和一个 Python 服务器,实现以下功能:
- 资产管理:以编程方式创建、导入和操作 Unity 资源。
- 场景控制:管理场景、对象及其属性。
- 材质编辑:修改材质及其属性。
- 脚本集成:查看、创建和更新 Unity 脚本。
- 编辑器自动化:控制 Unity 编辑器的功能,如撤销、重做、播放和构建。
该项目非常适合希望利用 LLM 来增强其 Unity 项目或自动化重复任务的开发者。
安装
要使用 Unity MCP 包,请确保已安装以下内容:
- Unity 2020.3 LTS 或更高版本(⚠️ 目前仅适用于 URP 项目)
- Python 3.12 或更高版本
- uv 包管理器
第一步:安装 Python
从 python.org 下载并安装 Python 3.12 或更高版本。在安装过程中确保将 Python 添加到系统的 PATH 中。
第二步:安装 uv
uv 是一个简化依赖管理的 Python 包管理器。根据您的操作系统使用以下命令进行安装:
-
Mac:
brew install uv -
Windows:
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"然后,将 uv 添加到您的 PATH 中:
set Path=%USERPROFILE%\.local\bin;%Path% -
Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
有关其他安装方法,请参阅 uv 安装指南。
重要提示:未安装 uv 请勿继续。
第三步:安装 Unity 包
- 打开 Unity 并转到
Window > Package Manager。 - 点击
+按钮并选择Add package from git URL。 - 输入:
https://github.com/justinpbarnett/unity-mcp.git
安装完成后,Unity MCP 包将在您的 Unity 项目中可用。当与像 Claude Desktop 或 Cursor 这样的 MCP 客户端一起使用时,服务器会自动启动。
功能
- 双向通信:无缝地在Unity和LLM之间发送和接收数据。
- 资产管理:导入资源、实例化预制件并以编程方式创建新的预制件。
- 场景控制:打开、保存和修改场景,以及创建和操作游戏对象。
- 材质编辑:轻松应用和修改材质。
- 脚本集成:在Unity中创建、查看和更新C#脚本。
- 编辑器自动化:自动执行Unity Editor任务,如构建项目或进入播放模式。
贡献
我希望得到您的帮助,使Unity MCP Server变得更好!以下是贡献的方法:
-
分叉仓库
将github.com/justinpbarnett/unity-mcp分叉到您的GitHub账户。 -
创建分支
git checkout -b feature/your-feature-name或者
git checkout -b bugfix/your-bugfix-name -
进行更改
实现您的功能或修复。 -
提交并推送
使用清晰、描述性的提交信息:git commit -m "Add feature: your feature description" git push origin feature/your-feature-name -
提交拉取请求
向master分支打开一个拉取请求,并附上您的更改描述。
许可证
该项目采用MIT许可证。您可以自由使用、修改和分发它。请参阅完整的许可证这里。
故障排除
遇到问题?试试这些解决方法:
-
Unity桥未运行
确保Unity Editor已打开且MCP窗口处于活动状态。如果需要,请重启Unity。 -
Python服务器未连接
确认Python和uv已正确安装,并且Unity MCP包已正确设置。 -
Claude Desktop或Cursor的配置问题
确保您的MCP客户端已配置为与Unity MCP服务器通信。
更多帮助,请访问问题跟踪器或提交新问题。
联系
有疑问或想讨论项目?联系我吧!
致谢
非常感谢支持该项目初始发布的每一个人。特别感谢Unity Technologies提供的优秀Editor API。
愉快编码,享受将LLMs与Unity集成的乐趣!