跳到正文
cccskills
免费在 GitHub 公开中文介绍

unreal-mcp

操作Unreal Engine编辑器,放置场景物体,调整灯光、材质和相机构图。检查场景状态与视觉效果,并输出截图或渲染图。

原文查看原文说明

Automate Unreal Engine editor scenes, actors, and renders.

AI 评分100分/ 100查看安装方法

适用场景

  • 搭建三维关卡并布置物体
  • 调整符合场景氛围的灯光
  • 设置相机构图并输出渲染图
  • 导入并放置资产

中文介绍

功能

操作Unreal Engine编辑器,搭建和拍摄三维场景。可放置、移动或删除Actor(场景中的物体),设置灯光与氛围,调整材质和相机构图,导入资产,并输出截图或渲染图。先检查场景及可用功能,再逐步进行小幅修改,每次检查状态与视觉效果并保存。

适用场景

适合为游戏关卡布置物体,或制作并拍摄黄昏景色、昏暗室内等场景。用文字说明场景主题和氛围,即可委托它依次完成环境、灯光、材质和相机设置。

使用示例

  • “创建一片有篝火的昏暗林间空地,并拍摄画面。”
  • “把太阳光调整为黄昏的光线。”

注意事项

需要在Unreal Editor 5.8+中打开项目,启用Unreal MCP和AllToolsets并启动服务器,然后连接Hermes。macOS需要安装完整版Xcode并接受许可。插件处于实验阶段,修改不一定能可靠撤销。服务器仅限localhost使用;根据UE EULA,您有责任确认所连接的LLM是否将数据用于训练。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

客观评估

AI 仅根据 SKILL.md 的内容,从 4 个方面进行了评估。星标数和热度不计入评估。

指令清晰度能否看出何时使用、做什么
A良好使用场景列出布置、灯光和拍摄,并明确排除建模与源代码编辑。
步骤具体性步骤、输入输出和示例是否具体
A良好明确规定工具列表获取、结构检查、调用顺序,以及画面验证、保存和输出位置报告。
安全性发送数据、删除文件、执行命令等是否有说明
A良好针对编辑操作,禁止重叠调用,并要求修改后验证及批量修改前后保存。
安装难易度所需工具和 API 密钥是否少且有说明
A良好说明编辑器版本、两个插件、连接命令及macOS的Xcode要求。

总分按每项 A=25 分、B=15 分、C=5 分相加。 由 AI(OpenAI Codex)于 2026年10月19日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(6)

  • SKILL.md13.6 KB
  • references/advanced-workflows.md12.7 KB
  • references/pitfalls.md17.2 KB
  • references/recipes.md10.4 KB
  • references/scene-craft.md12.5 KB
  • references/tool-surface.md19.0 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Unreal Engine MCP Skill

Companion skill for the unreal-engine entry in the Hermes MCP catalog. The MCP server (Epic's official, experimental "Unreal MCP" plugin, internal id ModelContextProtocol) runs INSIDE the Unreal Editor process and exposes editor functionality as typed tools. This skill teaches how to drive it well: discovering the live tool surface, sequencing calls safely, translating plain-English asks into scenes that actually look good, and verifying work visually. The user should never need to touch the editor beyond launching it.

When to Use

Use when the user wants anything done in Unreal Engine: build or dress a level, spawn/move/delete actors, set up lighting and atmosphere, create or tune material instances, frame a camera shot, capture screenshots or renders, import assets, inspect the scene or UI, run automation tests, or script the editor. Works for single actions ("make the sun golden hour") and for complete multi-step projects ("build me a moody forest clearing with a campfire and render a shot of it").

Don't use for: DCC-style mesh modeling/sculpting (model in Blender and import the result), or for editing Unreal C++ project source (that's normal code work — use the terminal; this skill is about the live editor).

Prerequisites

Two halves, in this order: the editor side must be up before Hermes connects.

One-time, editor side

  1. Unreal Editor 5.8+ with a project open. (macOS: full Xcode must be installed and its license accepted — the editor exits on first launch without it; see pitfalls.)
  2. Edit > Plugins — enable Unreal MCP (its Toolset Registry dependency auto-enables). Restart the editor when prompted.
  3. The typed toolsets ship separately from the server: also enable the AllToolsets plugin in the same Plugins browser. Unreal MCP ships NO tools itself — AllToolsets provides the shipped toolsets (SceneTools, ActorTools, MaterialInstanceTools, ObjectTools, …); skip it and the server connects but the agent has nothing to call.
  4. Edit > Editor Preferences > General > Model Context Protocol — enable Auto Start Server. Default bind is http://127.0.0.1:8000/mcp (port/path configurable in the same panel; server name is unreal-mcp). To start manually instead, run ModelContextProtocol.StartServer in the editor console (backtick key).

One-time, Hermes side

hermes mcp install unreal-engine

This writes the mcp_servers.unreal-engine HTTP entry pointing at http://127.0.0.1:8000/mcp and probes the live server for its tools. Run it while the editor + server are up so the probe sees the real surface. If the user changed port/path in Editor Preferences, edit the url in ~/.hermes/config.yaml under mcp_servers.unreal-engine to match.

Do NOT use ModelContextProtocol.GenerateClientConfig for Hermes — that writes .mcp.json-style files for Claude Code/Cursor/etc. Hermes connects from config.yaml via the catalog entry.

Every session

  1. Launch Unreal Editor, wait for the project to finish loading; confirm the server started (Output Log shows the bind address, or run ModelContextProtocol.StartServer manually).
  2. Start the Hermes session. Tools register as mcp_unreal_engine_*. If they're missing: editor wasn't up first — start it, then open a new Hermes session.
  3. Sanity check: call mcp_unreal_engine_list_toolsets and confirm toolsets come back.

The Tool Surface: Discovery, Not a Fixed List

By default the plugin runs in tool-search mode: tools/list returns only three meta-tools, and every real tool is reached through them. Through Hermes they appear as:

Hermes toolPurpose
mcp_unreal_engine_list_toolsetsNames + descriptions of every registered toolset
mcp_unreal_engine_describe_toolsetFull JSON schemas for one named toolset's tools
mcp_unreal_engine_call_toolInvoke a named tool with arguments, get the result

The discovery walk, always in this order:

  1. list_toolsets → see what capability groups this project actually has (the surface is project-dependent: enabled plugins, Game Feature Plugins, and any custom toolsets all contribute). Names come back FULLY QUALIFIED (editor_toolset.toolsets.scene.SceneTools, EditorToolset.EditorAppToolset) — use them verbatim as toolset_name.
  2. describe_toolset on the group you need → read the real parameter schemas. Never guess parameter names — schemas are the contract.
  3. call_tool with the qualified toolset name, the SHORT tool name (find_actors, not the dotted form), and arguments matching the schema.

Cache what you learn for the session; re-list only after the editor side changes (new plugin enabled, toolset authored, RefreshTools run).

The alternative eager mode (Enable Tool Search off in Editor Preferences) advertises every tool as its own mcp_unreal_engine_{tool} entry. Discovery then happens at hermes mcp install/configure time instead. Tool-search mode is the default and what this skill assumes; it also keeps schema tokens out of every API call, so prefer it.

See references/tool-surface.md for the shipped toolset catalog, authoring custom toolsets, and the full plugin configuration/console-command reference.

Operating Loop

Every Unreal task follows the same loop:

  1. Inspect first. List toolsets, then query the scene/level state before touching anything. Never assume an empty or default level. In an unfamiliar project, also check for project-registered Agent Skills (call_tool → AgentSkillToolset.ListSkills): a matching project skill's instructions override this skill's generic defaults.
  2. Act in small, single-purpose calls. One logical step per call_tool. The server executes tools serially on the game thread — a big monolithic operation freezes the editor UI until it finishes and risks client timeouts. Exception: for loops over 5+ homogeneous operations, ONE ProgrammaticToolset.execute_tool_script call batches them server-side without breaking the serial rule (references/advanced-workflows.md).
  3. NEVER issue overlapping calls. Do not batch multiple mcp_unreal_engine_* calls in one turn — Hermes runs batched calls concurrently, and parallel calls against the game thread deadlock or fail. Strictly one call, await result, next call. This overrides the general parallel-tool-calls guidance.
  4. Read every result. Many tools (Blueprint compiles, material edits, widget creation) report success/failure in the response body with no protocol-level exception. Anything that isn't an explicit success is a stop-and-diagnose, not a shrug. After property writes, read the value back — several write paths silently no-op (see pitfalls).
  5. Verify visually and structurally. After each milestone, confirm state by querying the actors/properties you changed, and capture a viewport screenshot when composition matters (see references/tool-surface.md for the capture options; vision_analyze the image — you are the art director, judge it).
  6. Save often. Editor edits are in-memory until packages/levels are saved; an editor crash loses everything since the last save, and MCP edits are not reliably undoable. Save before AND after any bulk change, and after every milestone.
  7. Report concretely. Actor labels, asset paths (/Game/...), file locations of captures/renders.

Rules of the world while you work:

  • Units are centimeters; axes are Z-up, X-forward; rotations are degrees (Rotator: Roll around X, Pitch around Y, Yaw around Z). Human eye height ≈ 165 cm; a door ≈ 210×90 cm. Full tables in references/scene-craft.md.
  • Content paths use long package names: /Game/Folder/Asset.Asset for project content, /Engine/BasicShapes/Cube.Cube for engine primitives.
  • Actor labels (what you see in the Outliner, settable, non-unique) are not actor names (internal, unique). Prefer resolving actors by label/class queries, then hold on to whatever handle the tool returns.
  • Prefer physically-plausible lighting values (lux/candela/Kelvin) over arbitrary brightness numbers — but FIRST read the existing sun's intensity to learn the scene's calibration convention; template worlds are often calibrated around intensity: 10, and physical values blow them out (references/scene-craft.md has the numbers, references/pitfalls.md #12b has the calibration rule).

From Plain English to a Scene

The user gives intent, not specs. Translate before you build:

  1. Extract the brief. Subject, mood, time of day, interior/exterior, style, deliverable (screenshot? render? playable level?). Ask at most one round of clarifying questions, then commit — you are the technical director; don't bounce Unreal jargon back at the user.
  2. Plan the build order. The order that works: level/environment shell → blocking (major geometry/meshes in place) → lighting + atmosphere → materials → set dressing/detail → camera → capture/render. Post the plan as a todo list for multi-step builds.
  3. Build with the loop above, one milestone at a time, screenshot at each milestone.
  4. Art-direct yourself. Compare each screenshot against the brief: readable silhouette? believable light direction/intensity? horizon not dead-center? scale correct against a human-height reference? Fix before moving on.
  5. Deliver. Screenshots/renders as files (MEDIA: path), plus a short summary of what exists in the level and where it was saved.

references/recipes.md has complete worked builds (exterior daylight scene, moody interior, golden-hour cinematic + render, asset import & placement) with the exact call sequences and values.

Reference Files

Load on demand; keep SKILL.md-level rules in mind throughout.

ReferenceContents
references/tool-surface.mdShipped toolsets catalog, discovery protocol detail, plugin console commands/CVars/flags, screenshot & capture paths, MCP Inspector debugging, extending with custom Python/C++ toolsets
references/advanced-workflows.mdSophisticated workflows, live-verified: ProgrammaticToolset batching, Blueprint DSL authoring loop (create→DSL→compile→spawn), PIE test sessions, Sequencer orientation (140 tools), LogsToolset self-debugging, automation testing, semantic asset search, config settings, per-situation decision table
references/scene-craft.mdNumeric cheat sheet: physical light intensities, color temperatures, exposure/EV100, fog densities, mood recipes (noon/golden hour/overcast/night/interior), scale tables, content path conventions
references/recipes.mdEnd-to-end worked builds with exact call sequences
references/pitfalls.mdSetup, runtime, and workflow pitfalls with fixes — read before your first session and whenever something misbehaves

Pitfalls (top of mind — full list in references/pitfalls.md)

  • Start order matters. Editor + server up first, then the Hermes session. Missing mcp_unreal_engine_* tools = wrong order.
  • One call at a time. Serial game thread; no batching, no overlap.
  • The editor UI freezes during each call. That's by design (game-thread execution). Warn the user during long operations; keep calls small.
  • Modal dialogs block everything. A tool call that opens (or collides with) a modal editor dialog stalls until a human dismisses it. If a call hangs indefinitely, tell the user to check the editor for a dialog.
  • Timeouts on long operations. Hermes' per-call default is 120 s; asset imports, big level saves, and renders can exceed it. Raise mcp_servers.unreal-engine.timeout in ~/.hermes/config.yaml for render/import-heavy sessions.
  • Stale tool schemas. After authoring/hot-reloading toolsets or enabling a plugin, run ModelContextProtocol.RefreshTools in the editor console and re-list_toolsets. New C++ UFUNCTIONs need a full editor restart — Live Coding won't surface them.
  • Experimental plugin. APIs and tool shapes can change between engine versions; trust describe_toolset over memory, including this skill's examples. When docs and the live schema disagree, the live schema wins.
  • Don't expose the server beyond localhost. Loopback-only, no auth, by design. Never suggest binding it wider.
  • Licensing note. The server logs on start: data transmitted via the plugin to a connected LLM service is Licensed Technology under the UE EULA (§6(e)) — the user is responsible for ensuring their LLM provider doesn't train on it. Surface this if the user asks about data handling.

Verification Checklist

  • list_toolsets returns toolsets at session start (connection healthy)
  • Scene state queried before first edit (never assumed empty)
  • After each milestone: changed actors/properties re-queried and a screenshot reviewed against the brief
  • Level/dirty packages saved after each milestone and at the end
  • Deliverables exist on disk (screenshot/render paths confirmed) and are reported to the user with absolute paths
  • Editor left in a clean state: no pending modal, no unsaved surprise, user told exactly what was created/changed and where

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

1password

免费有简介AI 评分 100分

通过1Password CLI,将保存的密码和API密钥用于命令及配置模板,完成安装、认证、秘密值读取,并通过环境变量向命令传递凭据。

  • 安装并配置1Password CLI
  • 使用已保存的API密钥运行命令
  • 向配置模板填入秘密值
NousResearch/hermes-agent25.6万2026年10月22日 更新

3-statement-model

免费有简介AI 评分 90分

创建用公式联动利润表、资产负债表和现金流量表的 Excel 模型,分阶段填入历史实际数据与预测假设,比较不同情景,并检查三张报表之间的一致性。

  • 向财务模板填入历史实际数据
  • 建立三张财务报表联动的预测
  • 比较基准、乐观和悲观情景
NousResearch/hermes-agent25.6万2026年10月22日 更新

accelerate

免费有简介AI 评分 80分

以少量修改让现有PyTorch训练代码适用于多GPU或多台机器,指导混合精度、节省内存的DeepSpeed与FSDP配置,以及训练启动方法。

  • 将单GPU训练迁移至多GPU
  • 配置混合精度训练
  • 通过DeepSpeed或FSDP节省内存
NousResearch/hermes-agent25.6万2026年10月22日 更新

actual-setup

免费有简介AI 评分 100分

帮助配置Hermes,通过Actual Computer在自己的设备上运行AI模型。支持加密中继与本地连接,涵盖模型选择、响应测试,以及请求报错或空响应的排查。

  • 使用Actual密钥连接Hermes
  • 在本地设备上运行模型
  • 查找、下载并加载本地模型
NousResearch/hermes-agent25.6万2026年10月22日 更新

adversarial-ux-test

免费有简介AI 评分 80分

扮演不擅长技术、容易不满的用户测试应用,发现难懂的操作和导致放弃使用的障碍。将实际可改进的问题与个人抱怨分开,整理截图、修复建议和任务单。

  • 在发布或演示前检查易用性
  • 检查新用户的使用体验
  • 查找注册和付费流程中的障碍
NousResearch/hermes-agent25.6万2026年10月22日 更新

agent-merge-conflict-arbiter

免费有简介AI 评分 100分

从中立立场解决两个智能体分别修改代码产生的Git冲突,对照双方差异和意图,记录每处冲突的取舍理由,并通过构建或测试验证合并结果。

  • 解决两个智能体的分支冲突
  • 整合并行工作树中的修改
  • 核对冲突设计决策的理由
NousResearch/hermes-agent25.6万2026年10月22日 更新

查看 NousResearch 的全部技能

报告此技能的问题