Token导航 LogoToken导航TokenDH.com
Unity MCP Rs logo
开发工具未说明官方级别未说明来源级核验

Unity MCP Rs

MCP Server

一个用于Unity编辑器集成的MCP服务器,支持AI助手通过标准化协议进行场景管理、游戏对象操作和脚本编辑等操作。

工具数

10

提示词数

0

GitHub Stars

1

资源数

0
RustClaude开发工具Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Wally869

提供方

Wally869

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Unity MCP服务器(Rust)

用于Unity编辑器集成的MCP(模型上下文协议)服务器,用Rust编写。

该服务器使AI助手(如Claude)能够通过标准化的MCP协议与Unity编辑器进行交互,允许场景管理、游戏对象操纵、脚本编辑等操作。

建筑

先决条件

  • Rust 1.70+(通过安装 生锈)
  • 在Windows上:使用C++工作负载的Visual Studio构建工具

构建命令

# Development build
cargo build

# Release build (optimized)
cargo build --release

# Run directly
cargo run -- --help

二进制文件将位于 target/debug/unity-mcp (或 target/release/unity-mcp 用于发布版本)。

用法

# Default: STDIO transport (for MCP client integration)
unity-mcp

# HTTP transport with WebSocket support
unity-mcp --transport http

# Custom HTTP port
unity-mcp --transport http --http-port 8090

# Target a specific Unity instance
unity-mcp --default-instance "MyProject@abc123"

# Enable debug logging
unity-mcp --log-level debug

命令行选项

选项环境变量默认值描述
--transportUNITY_MCP_TRANSPORTstdio运输方式: stdiohttp
--http-urlUNITY_MCP_HTTP_URLhttp://localhost:8080HTTP服务器URL
--http-hostUNITY_MCP_HTTP_HOSTlocalhostHTTP服务器绑定主机
--http-portUNITY_MCP_HTTP_PORT8080HTTP服务器端口
--default-instanceUNITY_MCP_DEFAULT_INSTANCE-目标默认Unity实例
--log-levelUNITY_MCP_LOG_LEVELinfo日志级别:跟踪、调试、信息、警告、错误
--pidfile--写入PID文件的路径
--skip-startup-connectUNITY_MCP_SKIP_STARTUP_CONNECTfalse跳过初始Unity连接

Unity插件设置

此服务器与MCP for Unity插件配合使用,该插件必须安装在您的Unity项目中。

安装插件

  1. 复制 MCPForUnity 文件夹到Unity项目的 Assets 目录,或通过Unity包管理器安装
  2. 打开Unity并允许插件编译
  3. 插件将自动开始监听MCP服务器连接

插件配置

Unity插件通过WebSocket连接到MCP服务器。默认情况下,它预期:

  • Websocket URL: ws://localhost:8080/hub/plugin
  • Discovery的端口范围:6400-6500(TCP)

如果您在其他端口上运行服务器,请更新Unity中的插件设置:

  • 首选 窗口>Unity MCP>设置
  • 更新服务器URL以匹配您的配置

连接流程

  1. Unity插件启动并打开与MCP服务器的WebSocket连接
  2. 插件使用项目信息(名称、路径、哈希)注册自己
  3. MCP服务器现在可以通过此连接向Unity发送命令
  4. 命令在Unity中执行,响应被发回

建筑

┌─────────────────┐       WebSocket        ┌─────────────────┐
│   MCP Client    │◄─────────────────────►│   Unity MCP     │
│  (Claude, etc)  │                        │     Server      │
└─────────────────┘                        └────────┬────────┘
                                                    │
                                           WebSocket│/TCP
                                                    │
                                           ┌────────▼────────┐
                                           │  Unity Editor   │
                                           │    (Plugin)     │
                                           └─────────────────┘

运输方式

  • 工作室:MCP协议的标准输入/输出传输。当服务器由MCP客户端生成时使用。
  • 超文本传输协议:支持WebSocket的HTTP服务器。适用于开发和独立运行服务器。

关键组件

  • 插件中心 (/hub/plugin):Unity插件连接的WebSocket端点
  • 工具注册表:注册并执行MCP工具(manage_scene、manage_gameobject等)
  • 资源注册表:提供MCP资源(editor_state、project_info等)
  • 端口发现:扫描端口6400-6500以查找Unity实例(传统TCP模式)

HTTP端点

使用HTTP传输运行时(--transport http):

端点描述
/mcpMCP协议(流式HTTP)-适用于MCP客户端
/health健康检查-返回JSON状态
/hub/plugin用于Unity插件连接的WebSocket
/plugin/sessions列出活动插件会话
/tools/:name直接工具执行(传统)
/resources/*uri直接资源读取(遗留)
/register-tools自定义工具注册

可用工具

服务器为Unity交互公开了这些MCP工具:

工具说明
manage_scene场景操作(创建、加载、保存、获取层次结构、截图)
manage_gameobject游戏对象CRUD和转换
manage_components添加、删除、修改组件
manage_asset资产操作(导入、创建、搜索)
manage_material材质和着色器属性
manage_prefabs预制阶段作业
manage_scriptC#脚本管理
manage_editor编辑器状态(播放/暂停/停止)
run_tests执行Unity测试
read_console读取Unity控制台日志
还有更多。..

可用资源

资源URI描述
mcpforunity://editor_state当前编辑器状态和设置
mcpforunity://project_info项目元数据和路径
mcpforunity://instances连接Unity实例
mcpforunity://custom-tools项目注册的自定义工具

日志

日志将写入:

  • 标准错误:控制台输出
  • 文件: ~/.unity_mcp/logs/unity_mcp_server.log (每日轮换)

MCP客户端配置

克劳德桌面版

添加到您的Claude桌面配置(~/.config/claude/claude_desktop_config.json 在Linux/Mac上, %APPDATA%\Claude\claude_desktop_config.json 在Windows上):

{
  "mcpServers": {
    "unity": {
      "command": "path/to/unity-mcp",
      "args": []
    }
  }
}

使用HTTP传输

如果使用HTTP传输单独运行服务器:

{
  "mcpServers": {
    "unity": {
      "url": "http://localhost:8080"
    }
  }
}

发展

项目结构

src/
├── main.rs           # Entry point and CLI
├── lib.rs            # Library root
├── config.rs         # Configuration management
├── error.rs          # Error types
├── server.rs         # HTTP server and routing
├── middleware/       # Request context
├── models/           # Data models and types
├── services/
│   ├── tools/        # MCP tool implementations
│   └── resources/    # MCP resource implementations
├── transport/
│   ├── plugin_hub.rs     # WebSocket hub for Unity
│   ├── plugin_registry.rs # Plugin session tracking
│   ├── unity_transport.rs # Transport abstraction
│   └── legacy/           # TCP framing protocol
├── telemetry/        # Usage telemetry (optional)
└── utils/            # Utility functions

运行测试

cargo test

代码格式化

cargo fmt

代码检查

cargo clippy

与Python实现的差异

这个Rust实现是Unity服务器上原始Python MCP的移植。主要区别:

  • 演出:内存使用率显著降低,启动速度更快
  • 单一二进制:不需要Python解释器或依赖项
  • 类型安全:协议处理的编译时间保证
  • 相同协议:与Unity C#插件完全兼容

Unity插件不需要修改即可与此Rust服务器一起使用。

许可证

麻省理工学院

目录标签

目录标签

RustClaude开发工具Unity开发本地部署AI集成编辑器扩展游戏开发工具Rust服务

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

10

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP