UnityMCP VRC

UnityMCP VRC

🚀 UnityMCP 项目

本项目是从Arodoid/UnityMCP分叉而来,并进行了大量重构。主要用于测试使用Claude/MCP/Unity创建VRChat世界。由于Claude在编译UdonSharp脚本时存在困难,此仓库支持MCP资源和辅助脚本,有效提高了构建VRC世界的成功率。此外,仓库还包含众多对普通Unity开发有帮助的一般性改进,值得一试!

🚀 快速开始

  1. unity-mcp-server目录下构建MCP服务器:
    • 打开终端,导航到该目录并运行构建命令。
  2. UnityMCPPlugin文件夹复制到项目的Assets文件夹中,并在Unity中找到新的菜单选项:
    • 确保插件已正确导入并在项目设置中启用。
  3. 在Claude Desktop上启用开发者模式,并添加以下MCP服务器设置:
{
"server": "http://localhost:XXXX"
}

其中XXXX是服务器实际运行的端口号。 4. 验证连接状态,运行提示词,并使用资源附件功能: - 确保所有必要的端口和防火墙设置已正确配置以允许通信。

✨ 主要特性

命令执行

  • 修改代码执行方式,使大语言模型(LLM)能够定义using、类和函数,允许LLM执行更复杂的命令,涵盖多个功能。
  • 由于错误堆栈会消耗大量上下文信息,仅返回第一行通常就足够。
  • 增加对以下模块的引用:
    • .Net Standard
    • System.Core、System.IO
    • TextMeshPro程序集
    • VRChat程序集
    • Unity Physics
    • 对MCPUnity本身的引用,以便为MCP命令提供辅助功能。

Unity编辑器集成

  • 增加在Unity未连接时等待/重试的功能。
  • getEditorState改为按需运行。
  • 实现获取编辑器状态和执行命令时等待编译完成。
  • 重新实现GetAssets,以检索所有位于Assets文件夹中的内容。

手动脚本测试

  • 创建脚本测试工具,用于诊断C#命令。
  • 允许手动执行带有详细日志的编辑器命令。

MCP资源

将任何添加到resources/text文件夹中的文件暴露为MCP资源。

性能

  • 通过仅在检测到更改时重绘,降低MCP窗口的高CPU使用率。
  • 支持Unity中超过4KB的命令。
  • 减少重新连接过程中过多的调试日志。

代码重构

  • 将Unity连接逻辑重构为独立文件。
  • 将MCP服务器工具分离到单独文件中,并实现通用接口以简化新功能的添加。
  • 将编辑器状态报告和命令执行拆分为独立文件。

VRChat特定功能

添加辅助脚本,用于从C#文件生成UdonSharp资产文件。

📄 许可证

项目采用知识共享署名 - 非商业性使用4.0国际许可协议。

  • 0 关注
  • 0 收藏,33 浏览
  • system 提出于 2025-10-07 01:24

相似服务问题

相关AI产品