Unity MCP Efficient
Unity MCP Efficient
这是一个面向 MCP for Unity 的独立、token 高效的 MCP facade 与 Codex 技能。
它在一个面向模型的小型 API 背后保留了完整的 Unity 功能集。模型只看到六个稳定工具,按需搜索上游工具目录,接收紧凑且对 Unity 感知的响应,并且可以在不把每个中间结果都带入对话的情况下串联起例行工作。
[!IMPORTANT] 本项目并不替代 Unity 包或其 Python 服务器。MCP for Unity 仍然是后端。请向 AI 客户端注册 facade,而不是上游服务端。如果同时暴露两套工具面,省下的上下文大多会被抵消。
实测上下文缩减
在 2026-08-24,benchmarks/ 中的脚本针对 MCP for Unity v10.1.0(c14de1e6)测出了以下结果。
测量项 | 上游工具面 | 高效 facade | 缩减幅度 |
模型可见的工具 | 48 | 6 | 87.50% |
序列化后工具 schema | 93,119 字符 | 3,657 字符 | 96.07% |
schema 近似 token 数¹ | 22,780 | 915 | 96.07% |
250 对象层级压力用例² | 628,110 字符 | 875 字符 | 99.86% |
层级近似 token 数¹ | 157,028 | 219 | 99.86% |
动作参数面 | 5,566 字段 | 1,798 字段 | 67.70% |
动态目录收录了 377 个 Unity 操作。一套小型确定性英/俄搜索用例,在全部 15 个用例中都将预期操作排在第 1 位,也全部进入前 3。候选版本通过了 35 项 facade 测试。一次现场冒烟测试没有对项目做任何改动,并在已打开的 Unity 编辑器中验证了这六个工具构成 surface、editor.refresh 位列第 1、编辑器状态,以及分两步检查场景的一个批次。
¹ Token 数使用“每 token 约 4 字符”的保守估算。它们描述的是上下文占用,而非 API 计费。实际 token 化结果因模型和负载而异。
² 该层级压力用例模拟一条接口噪声很大的响应,包含 250 个对象、每个对象 300 个顶点索引,并且同一份内容同时出现在文本和结构化负载中。这种极端场景并不承诺每个场景都能同等缩减。方法和原始数值见 BENCHMARKS.md。
Related MCP server: Agent Bridge for Unity
六个工具各自的作用
工具 | 用途 |
| 用一句简短的任务描述(英文或俄文)找到最合适的 Unity 操作;完整 schema 可以按需选取。 |
| 精确执行一个操作,返回有所节制的预览加上可恢复的结果句柄。 |
| 在单次模型往返中运行最多 50 个有界步骤,支持向 call、select、assert、poll、foreach、emit 操作。 |
| 读取“项目、编辑器、场景、控制台或选中的对象”状态,并带着对 revision 感知的抑制。 |
| 对已经产生的数据做分页、过滤、搜索或选择,不重复再次做 Unity 工作。 |
| 只取回一帧有界大小的 Scene 或 Game 视图截图像,不会同时以结构化 JSON 方式再携带一份。 |
模型依然能触到 facade 后面那 377 个已索引的操作,只是它们不再一次性占满完整提示词。
接线层处理的问题
常见的故障模式 | facade 的介入方式 |
客户端在有用工作开始前就一次塞入几十个大工具 schema | 六个工具的工具表面,操作按需发现 |
Manager 工具把所有操作都暴露成一个庞大的参数并集 | 按操作准确匹配 schema;在该目录向量测中参数域名减少了 67.70% |
场景、控制台、测试与资源相关的响应把对话吞没 | 带 Unity 感知的后处理、严格的输出预算、分页、结果句柄 |
FastMCP 或 Pydantic 的 | 构建预览前先递归 JSON 规范化 |
Unity 已完成变更但在域重载期间断开 | 原始结果持久化、明确的 retry 元数据、不会自动重放变更 |
测试任务开始了但很大很包的 | 便于轮询的紧凑异步收据 |
上游响应把 | 外层 |
重放一个已超时的变更会重复工作 | 用 |
多对象任务每操作消耗一个模型会话回合 | 有界的顺序工作流,加上对读取的保守并行批次 |
| 轮询检测延后 + revision 感知,并且有明确停止规则 |
架构
Codex or another MCP client
|
| sees 6 tools
v
Unity MCP Efficient (stdio by default)
|-- capability search over the live upstream catalog
|-- compact Unity-specific post-processing
|-- bounded workflow runtime
|-- local SQLite result and request receipts
|
| HTTP, default http://127.0.0.1:8080/mcp
v
MCP for Unity server
|
v
Unity Editor package一个 skill 本身不能隐藏 MCP 客户端已经加载的工具 schema。这也是本仓库同时提供两件东西的原因:
facade 负责维系更小的 API 和紧凑响应;
skill 教 Codex 如何高效地搜索、批量、恢复和验证。
安装
1. 以 HTTP 模式启动 MCP for Unity
请按上游它的说明来安装 CoplayDev/MCP for Unity。在 Unity 中打开 Window → MCP for Unity,选择本地 HTTP 传输并启动服务。
上游的默认端点是:
http://127.0.0.1:8080/mcp如果你的项目使用的是另一个端口,请通过下面的 UNITY_MCP_BACKEND_URL 传进去。
2. 在 Codex 中注册 facade
需要时可以 uv 先安装,然后运行:
codex mcp add unity-efficient \
--env UNITY_MCP_BACKEND_URL=http://127.0.0.1:8080/mcp \
-- uvx --from git+https://github.com/Vangardo/unity-mcp-efficient.git unity-mcp-efficient在 PowerShell 里面,请把命令写到一行再运行:
codex mcp add unity-efficient --env UNITY_MCP_BACKEND_URL=http://127.0.0.1:8080/mcp -- uvx --from git+https://github.com/Vangardo/unity-mcp-efficient.git unity-mcp-efficient把同一个 Codex 客户端里直接挂的 MCP for Unity 条目移除/禁用,让上游 HTTP 服务保持运行,但不要把这个拥有 48 个工具的完整表面对注册给模型。
3. 安装 Codex skill
最简单的办法是直接让 Codex 来做:
$skill-installer Install the skill from https://github.com/Vangardo/unity-mcp-efficient/tree/main/skills/unity-mcp-efficient如果要手工做用户级安装,克隆仓库,并把 skills/unity-mcp-efficient 复制到:
$HOME/.agents/skills/unity-mcp-efficientCodex 会自动感知 skill 的变化。如果 skill 没出现,重启 Codex。
其他 MCP 客户端
使用这个 stdio 配置:
{
"mcpServers": {
"unity-efficient": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/Vangardo/unity-mcp-efficient.git",
"unity-mcp-efficient"
],
"env": {
"UNITY_MCP_BACKEND_URL": "http://127.0.0.1:8080/mcp"
}
}
}
}如果客户端支持 Agent Skills 格式,就安装打包好的 skill。没有它 facade 也照样能用,但这个 skill 会提升工具选择和恢复行为。
推荐的 agent 流程
先做一次浅层 Unity 状态读取。
用一个明确的任务句搜索。
参数不明时,只去获取对应的 schema。
先后顺序处理已知有依赖的工作;独立读取可以并行,Unity 的变更绝不能并行。
保留紧凑输出,再按路径/页去展开已存的结果。
验证的语义要做,而不是对着每个中间暴露检查。
这个流程已经写进 skills/unity-mcp-efficient/SKILL.md。
配置
变量 | 默认值 | 含义 |
|
| 上游 MCP for Unity 的 HTTP 端点 |
|
| 每次操作的超时秒数 |
| 操作系统用户缓存目录 | SQLite 结果存储路径;使用 |
|
| facade 的传输方式: |
除非确实要独自通过网络暴露 facade,否则保持默认的 stdio。在用 HTTP/SSE 之前请先看 SECURITY.md。
开发与验证
git clone https://github.com/Vangardo/unity-mcp-efficient.git
cd unity-mcp-efficient
uv sync --extra dev
uv run pytest -q当上游 HTTP 服务正在运行时:
uv run python benchmarks/evaluate_facade.py
uv run python benchmarks/measure_surface.py
uv run python benchmarks/live_smoke.pyevaluate_facade.py 和 measure_surface.py 都会读取实时的上游目录。live_smoke.py 不会做任何变更,但它需要已经打开并连接到 Unity Editor。
已知限制
输出刻意有损。未处理的完整原始结果通过
get_result在一个有界的时间内保持可用。facade 并不会让任意的 Unity 变更更安全;权限与复审仍属于 MCP 客户端和用户自己。
并行是保守的。Unity 内部很可能本身就串行化了编辑器工作。
某些可选能力(如 Roslyn 支持)也许不会出现在这个 Unity 工程里。
Scene/Game 视图捕获可能会漏掉 ImGUI 编辑器上的浮层。
兼容性测试以 MCP for Unity
v10.1.0为准。目录是动态的,所以在声称支持上游较新版本之前,请以较新版本再跑一次基准。
设计渊源
渐进显示的想法是从 Vangardo/mcp_hub 学到并的,那是一个把大型集成目录经由小搜索+调用面路由的 MCP 网关。Unity MCP Efficient 则把这种上下文纪律应用到 Unity,再加上 Unity 专属的压缩、rev 状态、变更恢复、截图和有界局部工作流。
如果你在 Slack、Teamwork、Telegram、日历、记忆、自动化或跨服务 agent 上也需要这种形态,请看 MCP Hub。
Unity 兼容后端是 CoplayDev/MCP for Unity,以 MIT 协议分发。本仓库与它是独立的项目,不包含它的源代码。参见 NOTICE.md 和 THIRD_PARTY_NOTICES.md。
License and Trademark
本仓库里的原创代码以 MIT License 发布。
Unity 是 Unity Technologies 或它的关联方在美国以及其他地方的商标或注册商标。本项目与 Unity Technologies 或 CoplayDev 无关,也不受它们背书。其他名称与商标归各自的所有者所有。
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceUnity Editor MCP SDK that exposes Unity Editor capabilities as MCP tools, enabling AI assistants like Claude Code to drive Unity Editor workflows through prefab inspection, asset manipulation, and preview rendering.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to control the Unity Editor through MCP, allowing scene building, runtime scripting, visual QA, and more.4Apache 2.0
- AlicenseNot gradedqualityBmaintenanceAllows MCP clients like Claude Desktop or Cursor to perform Unity Editor actions, including asset management, scene modification, and game mechanic testing.22MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents (like Claude Code, Cursor) to directly operate Unity scenes via MCP protocol, with tools for scene hierarchy, object creation/deletion, and transform modification.16ISC
Related MCP Connectors
Operator-as-agent MCP hub. 6 tools. First $5 free, then $0.001/call.
AI Reasoning Cache & Consensus Layer with 11 MCP tools via Streamable HTTP.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Vangardo/unity-mcp-efficient'
If you have feedback or need assistance with the MCP directory API, please join our Discord server