Unity MCP技能
人工智能助手工作的专家指南和参考 CoplayDev/unity mcp -允许AI助手(Claude、Cursor、VS Code Copilot等)通过模型上下文协议(MCP)直接与Unity编辑器交互的桥梁。
关于Unity MCP
MCP for Unity 是一个开源工具,为您的LLM提供强大的工具,用于:
- 管理资产(创建、修改、组织)
- 控制场景和游戏对象
- 编辑和验证C#脚本
- 自动化重复的Unity工作流程
- 执行批处理操作以获得最佳性能
快速设置
- 安装Unity软件包
Unity → Window → Package Manager → + → Add package from git URL
URL: https://github.com/CoplayDev/unity-mcp.git?path=/MCPForUnity#main- 启动服务器
Unity → Window → MCP for Unity → Start Server- 连接您的MCP客户端
- 自动配置:选择您的客户端并单击 配置 - 手动:添加到客户端配置中:
{
"mcpServers": {
"unityMCP": {
"url": "http://localhost:8080/mcp"
}
}
}关于此技能
此存储库提供 综合参考指南 让AI助手理解并有效使用Unity MCP工具和资源。
文档结构
unity-mcp-skill/
├── SKILL.md # Main skill entry point
├── workflows.md # Common workflow patterns
├── domains/ # Domain-specific guides
│ ├── gameobjects.md # GameObject operations
│ ├── scripts.md # Script editing & validation
│ ├── scene.md # Scene management
│ ├── materials.md # Material creation/editing
│ ├── prefabs.md # Prefab workflows
│ ├── assets.md # Asset management
│ ├── editor.md # Editor operations
│ ├── testing.md # Test automation
│ └── advanced.md # Advanced techniques
├── tools/ # Tool references
│ └── batch_execute.md # Batch operations guide
└── resources/ # Resource references
├── instances.md # Unity instance management
├── selection.md # Editor selection API
├── project_info.md # Project structure info
├── editor_windows.md # Editor window management
├── menu_items.md # Menu item execution
└── custom_tools.md # Custom tool definitions关键概念
资源优先工作流
在执行工具之前,请务必检查可用资源以了解Unity上下文:
unity_instances-哪些Unity实例正在运行editor_selection-当前选择了哪些对象project_info-项目结构和配置editor_state-当前编辑器模式和设置
域组织
工具和资源按领域组织,以便更好地理解上下文:
- 游戏对象域:层次结构操作、组件管理
- 脚本域:C#文件操作、验证、Roslyn集成
- 场景域:场景加载/保存,游戏对象查找
- 材料领域:着色器分配、属性操作
- 资产域:资产创建、导入设置、组织
性能优化
- 使用
batch_execute用于多种操作(速度快10-100倍) - 更喜欢 文本编辑 文件重写过度
- 杠杆作用 find_gameobjects 用于批量查询
- 使用 apply_text_edits 用于精确的脚本修改
可用工具和资源
核心工具
manage_gameobject-创建、修改、销毁游戏对象manage_script-创建、编辑、验证C#脚本manage_scene-加载、保存、管理场景manage_material-创建和编辑材质manage_asset-资产创建和管理batch_execute-高效执行多项操作find_gameobjects-按条件搜索游戏对象execute_menu_item-执行Unity菜单命令
关键资源
unity_instances-活动Unity编辑器实例editor_selection-当前选定的对象project_info-项目路径和结构editor_state-播放模式,编辑器状态信息menu_items-可用菜单命令
使用示例
基本工作流程
User: "Create a red cube at position (0, 0, 0)"
Assistant:
1. Check unity_instances resource → Connect to active instance
2. Check editor_selection resource → Understand current context
3. Use manage_gameobject tool → Create cube
4. Use manage_material tool → Create red material
5. Use manage_component tool → Assign material to cube高级工作流
User: "Create a player controller with WASD movement"
Assistant:
1. Check project_info → Locate Scripts folder
2. Use create_script tool → Generate PlayerController.cs
3. Use script_apply_edits tool → Implement WASD logic
4. Use validate_script tool → Ensure code compiles
5. Use manage_gameobject tool → Create player GameObject
6. Use manage_component tool → Attach PlayerController scriptMCP客户端兼容性
Unity MCP可与多个MCP客户端配合使用:
- ✅ 克劳德桌面版 -全力支持
- ✅ 克劳德代码 -全力支持
- ✅ 光标 -全力支持
- ✅ VS代码副本 -全力支持
- ✅ GitHub Copilot命令行界面 -全力支持
- ✅ 帆板运动 -全力支持
性能提示
- 使用批处理操作:将多个操作合并为
batch_execute - 先查看资源:通过检查上下文避免不必要的工具调用
- 文本编辑超过重写:使用
apply_text_edits用于脚本修改 - 利用发现:使用
find_gameobjects而不是手动迭代
故障排除
连接问题
- 验证Unity MCP服务器是否正在运行(Unity的窗口>MCP)
- 检查服务器是否打开
http://localhost:8080/mcp - 确保MCP客户端配置正确
多个Unity实例
- 使用
unity_instances列出活动实例的资源 - 使用
set_active_instance针对特定实例 - 格式:
ProjectName@hash
脚本验证
- 启用Roslyn验证以进行严格类型检查
- 安装NuGetForUnity→ Add
Microsoft.CodeAnalysis - 添加
USE_ROSLYN到脚本定义符号
贡献
本技能文档旨在帮助AI助手更有效地使用Unity MCP。欢迎贡献和改进!
相关资源
许可证
本技能文档作为附件提供 MCP for Unity,根据麻省理工学院许可证获得许可。
致谢
专为配合使用而设计 MCP for Unity by Coplay -Unity开发的最佳AI助手集成。
______________________________________________________________________
备注:这是一份独立的参考指南,与CoplayDev或Unity Technologies没有正式联系。
