Unity MCP与Ollama集成工具

通过Model Context Protocol (MCP)将AI语言模型(Ollama)连接到Unity编辑器,实现自然语言控制Unity编辑器的功能。

  • by UvixStudio
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 UvixStudio/Unity_mcp_Ollama

使用说明

Unity MCP与Ollama集成

使用模型上下文协议(MCP)将AI语言模型(通过Ollama)连接到Unity编辑器。

🎯 这有什么作用

该项目使AI助手能够通过自然语言命令直接控制Unity Editor。你可以要求AI:

  • 创建和修改游戏对象
  • 更改材质和颜色
  • 管理场景
  • 添加组件
  • 还有更多!

📋 先决条件

在开始之前,请确保您已经:

  1. Unity编辑器 (建议使用2021.3或更高版本)
  2. Python 3.12+ 安装
  3. 康达 (蟒蛇或迷你蟒蛇)
  4. 奥拉玛 已安装并正在运行
  5. Git 用于版本控制

🚀 安装指南

第一步:安装Olama

  1. 下载并安装Ollama 奥拉玛
  2. 拉取DeepSeek编码器模型:
    ollama pull deepseek-coder:latest
    
  3. 确认Ollama正在运行:
    ollama list
    

步骤2:设置Python环境

  1. 创建新的Conda环境:

    conda create -n unity-mcp python=3.12
    conda activate unity-mcp
    
  2. 安装所需的Python包:

    pip install httpx mcp fastapi uvicorn
    

步骤3:安装Unity MCP包

  1. 打开Unity项目
  2. 打开包管理器(窗口→ 包管理器)
  3. 点击 + 按钮→ 从git URL添加包
  4. 输入: https://github.com/ZundamonnoVRChatkaisetu/unity-mcp-ollama.git
  5. 等待安装完成

步骤4:配置MCP服务器

  1. 导航到: Library/PackageCache/com.zundamonnovrchat.unity-mcp-ollama@[version]/Python/

  2. 编辑 local_config.json:

    {
      "unity_host": "localhost",
      "unity_port": 6400,
      "mcp_port": 6500,
      "ollama_model": "deepseek-coder:latest",
      "ollama_host": "localhost",
      "ollama_port": 11434
    }
    
  3. 修复中的FastMCP错误 server.py:

    • 打开 server.py
    • 查找线与 FastMCP("Unity MCP Server", description=...)
    • 删除 description 参数
    • 应该看起来像: mcp = FastMCP("Unity MCP Server")

步骤5:启动服务器

  1. 启动Unity Bridge (在Unity编辑器中):

    • Unity桥应在Unity打开时自动启动
    • 检查控制台是否“Unity Bridge正在端口6400上监听”
  2. 启动Python MCP服务器:

    conda activate unity-mcp
    cd "Library/PackageCache/com.zundamonnovrchat.unity-mcp-ollama@[version]/Python/"
    python server.py
    
  3. 在Unity控制台中验证连接-您应该看到连接消息

🎮 使用示例

一切运行完毕后,您可以通过MCP接口向Unity发送命令。

命令示例:

  • 在(0,1,0)位置创建一个红色立方体
  • “将球体的颜色更改为蓝色”
  • “为播放器添加刚体组件”
  • “在场景中创建10个随机球体”

📁 项目结构

Unity_mcp_Ollama/
├── Assets/                    # Unity assets
├── Library/                   # Unity library (not in git)
├── PackageCache/             
│   └── unity-mcp-ollama/     # MCP package
│       └── Python/           # Python server files
├── .gitignore                # Git ignore rules
└── README.md                 # This file

🔧 故障排除

Unity Bridge无法启动

  • 检查Unity控制台是否有错误
  • 验证端口6400是否未使用
  • 重新启动Unity编辑器

Python服务器连接失败

  • 确保Conda环境已激活
  • 检查Ollama是否正在运行: ollama list
  • 验证端口6400和6500是否可用
  • 检查 local_config.json 设置

找不到Olama模型

  • 拉动模型: ollama pull deepseek-coder:latest
  • 通过以下方式进行验证: ollama list
  • 在中检查型号名称 local_config.json

FastMCP错误

  • 移除 description 参数来自 FastMCP() 初始化中 server.py
  • 这是软件包中的一个已知错误

🤝 贡献

请随时打开问题或提交pull请求!

📝 许可证

此项目使用unity mcp-ollama包。检查原始存储库中的许可证详细信息。

🙏 学分

📧 联系

如有疑问或需要支持,请在GitHub上发布问题。


注: 由于Olama模型的大小,它们不包含在此存储库中。您必须使用 ollama pull 命令。