返回市场
统一-MCP

统一-MCP

作者:IvanMurzak535 星标更新:2025-11-24

项目介绍

技术文档摘要

<div align="center" width="100%"> <h1>✨ 游戏开发者AI助手 — <i>Unity MCP</i></h1>

MCP OpenUPM Docker Image Unity Editor Unity Runtime r</br> Discord Stars License Stand With Ukraine

<img src="https://github.com/IvanMurzak/Unity-MCP/raw/main/docs/img/level-building.gif" alt="AI工作" title="关卡构建" width="100%">

<b>中文 | 日本語 | Español</b>

</div>

Unity MCP 是一个由AI驱动的游戏开发助手,它充当了MCP客户端Unity之间的桥梁。只需在聊天中键入消息并使用您选择的任何高级LLM模型完成任务。有问题需要修复吗?让AI来解决它。观看演示视频

💬 加入我们的Discord服务器 - 提问、展示您的作品,并与其他开发者连接!

功能

  • ✔️ 自然对话 - 像与人类一样与AI进行聊天
  • ✔️ 代码辅助 - 让AI编写代码并运行测试
  • ✔️ 调试支持 - 让AI获取日志并修复错误
  • ✔️ 多个LLM提供商 - 使用来自Anthropic、OpenAI、Microsoft或其他提供商的代理,没有任何限制
  • ✔️ 灵活部署 - 可以通过配置在本地(标准输入输出)或远程(HTTP)工作
  • ✔️ 丰富的工具集 - 广泛的默认MCP工具
  • ✔️ 可扩展性 - 在项目代码中创建自定义MCP工具

稳定性状态

Unity版本编辑模式播放模式独立模式
2022.3.61f1rrr
2023.2.20f1rrr
6000.2.3f1rrr

内容

安装

步骤1:安装Unity MCP插件

<details> <summary><b>⚠️ 要求(点击)</b></summary>

[!IMPORTANT] 项目路径不能包含空格

  • C:/MyProjects/Project
  • C:/My Projects/Project
</details>

选项1 - 安装程序

  • ⬇️ 下载安装程序
  • 📂 将安装程序导入到Unity项目中
    • 您可以双击该文件 - Unity会自动打开它
    • 或者:首先打开Unity编辑器,然后点击Assets/Import Package/Custom Package,并选择该文件

选项2 - OpenUPM-CLI

openupm add com.ivanmurzak.unity.mcp

步骤2:安装MCP客户端

选择您喜欢的一个MCP客户端 - 您不需要安装所有这些。这将是您与LLM通信的主要聊天窗口。

MCP协议相当通用,因此您可以使用任何您喜欢的MCP客户端 - 它将像其他任何客户端一样顺畅地工作。唯一重要的要求是MCP客户端必须支持动态MCP工具更新。

步骤3:配置MCP客户端

自动配置

  • 打开Unity项目
  • 打开Window/AI Game Developer (Unity-MCP)
  • 在您的MCP客户端中点击配置

Unity_AI

如果您的MCP客户端不在列表中,请使用窗口中显示的原始JSON将其注入到您的MCP客户端中。阅读特定MCP客户端的说明以了解如何操作。

手动配置

如果由于某种原因自动配置不起作用,请使用AI Game Developer (Unity-MCP)窗口中的JSON手动配置任何MCP客户端

<details> <summary>配置<b><code>Claude Code</code></b>为<b>Windows</b></summary>

unityProjectPath替换为您实际的项目路径

claude mcp add Unity-MCP "<unityProjectPath>/Library/mcp-server/win-x64/unity-mcp-server.exe" client-transport=stdio
</details> <details> <summary>配置<b><code>Claude Code</code></b>为<b>MacOS Apple-Silicon</b></summary>

unityProjectPath替换为您实际的项目路径

claude mcp add Unity-MCP "<unityProjectPath>/Library/mcp-server/osx-arm64/unity-mcp-server" client-transport=stdio
</details> <details> <summary>配置<b><code>Claude Code</code></b>为<b>MacOS Apple-Intel</b></summary>

unityProjectPath替换为您实际的项目路径

claude mcp add Unity-MCP "<unityProjectPath>/Library/mcp-server/osx-x64/unity-mcp-server" client-transport=stdio
</details> <details> <summary>配置<b><code>Claude Code</code></b>为<b>Linux x64</b></summary>

unityProjectPath替换为您实际的项目路径

claude mcp add Unity-MCP "<unityProjectPath>/Library/mcp-server/linux-x64/unity-mcp-server" client-transport=stdio
</details> <details> <summary>配置<b><code>Claude Code</code></b>为<b>Linux arm64</b></summary>

unityProjectPath替换为您实际的项目路径

claude mcp add Unity-MCP "<unityProjectPath>/Library/mcp-server/linux-arm64/unity-mcp-server" client-transport=stdio
</details>

使用AI

与您的MCP客户端中的AI(LLM)进行沟通。让它做您想要的任何事情。您描述的任务或想法越详细,它执行任务的效果就越好。

某些MCP客户端允许您选择不同的LLM模型。请注意这一特性,因为某些模型可能比其他模型效果更好。

示例命令:

解释我的场景层次结构
创建半径为2的圆圈内的3个立方体
创建金属金色材质并将其附加到球体游戏对象上

确保在您的MCP客户端中开启Agent模式

LLM的高级功能

Unity MCP提供了高级工具,使LLM能够更快更有效地工作,避免错误并在发生错误时自我纠正。一切都设计得高效实现您的目标。

核心能力

  • ✔️ 准备好的工具 - 在1-2步内找到所需的一切
  • ✔️ 即时编译 - 使用Roslyn进行C#代码编译和执行,加快迭代速度
  • ✔️ 完整的资产访问 - 对资产和C#脚本的读写访问
  • ✔️ 智能反馈 - 对问题有良好描述的正负反馈,以便正确理解问题

反射驱动的功能

  • ✔️ 对象引用 - 提供现有对象的引用以生成即时C#代码
  • ✔️ 项目数据访问 - 以可读格式获得整个项目的完整访问权限
  • ✔️ 细粒度修改 - 填充并修改项目中的任何数据片段
  • ✔️ 方法发现 - 在整个代码库中查找任何方法,包括已编译的DLL文件
  • ✔️ 方法调用 - 调用整个代码库中的任何方法
  • ✔️ 高级参数 - 提供任何方法调用的属性,甚至内存中现有对象的引用
  • ✔️ 实时Unity API - Unity API即时可用 - 即使Unity发生变化,您也会得到最新的API
  • ✔️ 自文档化 - 通过Description属性访问任何方法字段属性的人类可读描述

定制MCP

Unity MCP 支持项目所有者开发自定义MCP工具MCP资源MCP提示。MCP服务器从Unity MCP插件获取数据并将其暴露给客户端。MCP通信链中的任何人都会收到有关新MCP功能的信息,LLM可能会决定在某个时候使用这些功能。

添加自定义MCP工具

要添加自定义MCP工具,您需要:

  1. 具有McpPluginToolType属性的类
  2. 类中的具有McpPluginTool属性的方法
  3. 可选:向每个方法参数添加Description属性以帮助LLM理解它
  4. 可选:使用带有?和默认值的string? optional = null属性来标记它们为LLM的可选

注意,MainThread.Instance.Run(() =>这一行允许您在主线程上运行代码,这是与Unity API交互所必需的。如果您不需要此功能并且可以在后台线程中运行工具是可以接受的,为了避免效率问题,请避免使用主线程。

[McpPluginToolType]
public class Tool_GameObject