经 AI Skill Hub 精选评估,虚幻引擎MCP 获评「强烈推荐」。这款MCP工具在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 8.0 分,适合有一定技术背景的用户使用。
虚幻引擎MCP 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
虚幻引擎MCP 是一款遵循 MCP(Model Context Protocol)标准协议的 AI 工具扩展。通过 MCP 协议,它可以让 Claude、Cursor 等主流 AI 客户端直接访问和操作外部工具、数据源和服务,实现 AI 能力的无缝扩展。无论是文件操作、数据库查询还是 API 调用,都可以通过自然语言在 AI 对话中直接触发,极大提升生产效率。
# 方式一:通过 Claude Code CLI 一键安装
claude skill install https://github.com/winyunq/UnrealMotionGraphicsMCP
# 方式二:手动配置 claude_desktop_config.json
{
"mcpServers": {
"----mcp": {
"command": "npx",
"args": ["-y", "unrealmotiongraphicsmcp"]
}
}
}
# 配置文件位置
# macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
# Windows: %APPDATA%/Claude/claude_desktop_config.json
# 安装后在 Claude 对话中直接使用 # 示例: 用户: 请帮我用 虚幻引擎MCP 执行以下任务... Claude: [自动调用 虚幻引擎MCP MCP 工具处理请求] # 查看可用工具列表 # 在 Claude 中输入:"列出所有可用的 MCP 工具"
// claude_desktop_config.json 配置示例
{
"mcpServers": {
"____mcp": {
"command": "npx",
"args": ["-y", "unrealmotiongraphicsmcp"],
"env": {
// "API_KEY": "your-api-key-here"
}
}
}
}
// 保存后重启 Claude Desktop 生效
Open-source MCP tools for AI-assisted Unreal Engine UMG authoring.
Web Manual · Quick Start · Protocol Reference · Issues · Discord
---
UnrealMotionGraphicsMCP makes Unreal UMG editing accessible to AI agents through explicit, versionable MCP commands. Instead of asking an agent to guess from screenshots or click through the editor, this plugin exposes the real editor state: widget trees, slot properties, Blueprint graph operations, UI materials, animation tracks, and JSON round-trips.
The open-source plugin is the protocol and editor bridge. It is meant to be readable, debuggable, and useful for research, custom pipelines, issue reports, and community fixes.
1. System Instruction Editor: Modify the global instructions for the AI context. 2. Tool Management: Enable/Disable: Toggle specific MCP tools on or off. Disabled tools are not registered with the MCP server, effectively compressing the context window to prevent AI distraction. Edit Descriptions: Customize tool descriptions (prompts) to better suit your workflow. 3. User Templates (Prompts): Add reusable prompt templates for quick access by the MCP client.
Clone the open-source plugin into your Unreal project:
cd D:\UE5Project\YourProject
mkdir Plugins
cd Plugins
git clone https://github.com/winyunq/UnrealMotionGraphicsMCP.git UmgMcp
Open the project in Unreal Engine 5.8, enable UmgMcp if needed, and restart the editor so Unreal Build Tool can compile the plugin.
Run protocol checks without opening a large test scenario:
cd D:\UE5Project\YourProject\Plugins\UmgMcp\Resources\Python
uv run python APITest\Umg_Widget_Protocol_Static_Check.py
uv run python APITest\Blueprint_MCP_Schema_Check.py
uv run python APITest\Material_Protocol_Static_Check.py
uv run python APITest\Animation_Protocol_Static_Check.py
Run an editor bridge smoke test after Unreal Editor is open:
uv run python APITest\UE5_Editor_Imitation.py
If you want a manual virtual environment:
cd D:\UE5Project\YourProject\Plugins\UmgMcp\Resources\Python
uv venv
.\.venv\Scripts\activate
uv pip install "mcp[cli]>=1.4.1" fastmcp uvicorn fastapi "pydantic>=2.6.1" requests
python -c "import mcp, fastapi, pydantic, requests; print('deps ok')"
Current target: Unreal Engine 5.8 on Win64. The plugin descriptor is set to EngineVersion: 5.8.0.
Create /Game/UI/WBP_LoginPanel with a centered login card, email and password fields,
a primary submit button, and a subtle material background. Export the final widget JSON
and summarize which MCP tools changed the asset.
Prompts are crucial for AI tool effectiveness. Use the Prompt Manager to tailor the AI's behavior:
apply_layout and export_umg_to_json.get_widget_tree, get_widget_schema).Contributions of effective prompt configurations are welcome!
</details>
---
<details> <summary>🏗️ Current Technical Architecture</summary>
The system now primarily relies on the UE5_UMG_MCP plugin for communication between external clients (like this CLI) and the Unreal Engine Editor.
Architecture Diagram:
</details>
---
<details> <summary>⚖️ AI Authorship & Disclaimer</summary>
This project has been developed with significant assistance from Gemini, an AI. As such: Experimental Nature: This is an experimental project. Its reliability is not guaranteed. Commercial Use: Commercial use is not recommended without thorough independent validation and understanding of its limitations. * Disclaimer: Use at your own risk. The developers and AI are not responsible for any consequences arising from its use.
</details>
---
| Category | API Name | Status | Description |
|---|---|---|---|
| **Context & Attention** | get_target_umg_asset | ✅ | Get the current active UMG asset path. |
set_target_umg_asset | ✅ | Set or create the target UMG asset. | |
get_last_edited_umg_asset | ✅ | Get the last edited UMG asset path. | |
get_recently_edited_umg_assets | ✅ | Get recently edited UMG assets list. | |
| **Sensing & Querying** | get_widget_tree | ✅ | Get children of the widget target and show them as a tree (highly token-efficient). |
query_widget_properties | ✅ | Query specific properties of a widget. | |
get_creatable_widget_types | ✅ | Get all creatable widget classes. | |
get_widget_schema | ✅ | Get the property schema of a widget class. | |
get_layout_data | ✅ | Get screen-space layout bounding boxes. | |
check_widget_overlap | Hidden | Diagnostic compatibility tool; not exposed in the default prompt surface. | |
| **Actions & Modifications** | create_widget | ✅ | Create a new widget. |
delete_widget | ✅ | Explicitly delete a widget; requires confirm_delete=true. | |
set_widget_properties | ✅ | Set properties of a widget (omit widget_name to target active widget; union write fashion). | |
reorder_widget_tree | ✅ | Reorder existing siblings from a partial tree without creating or deleting widgets. | |
reparent_widget | ✅ | Convert/move a widget while preserving children where possible; child-loss cases fail. | |
save_asset | ✅ | Save the active UMG asset. | |
apply_layout | ✅ | Apply bulk layout definition (HTML/JSON). | |
| **Hidden Compatibility** | export_umg_to_json | Hidden | Full JSON export for debug/compatibility; not part of the default semantic read flow. |
apply_json_to_umg | Hidden | Compatibility bulk JSON apply; prefer apply_layout. |
Notes: - UMG writes are append/upsert style: create_widget creates missing widgets and set_widget_properties only overwrites supplied properties. - Deletion is explicit and hardened: delete_widget fails unless confirm_delete=true is supplied.
Blueprint MCP is still node-shaped. It is usable for simple event wiring, but it is not the final high-density bluecode protocol described in Document/BlueprintBluecodeProtocol.md.
| Category | API Name | Status | Description |
|---|---|---|---|
| **Context & Attention** | set_edit_function | ✅ | Set the current edit context (Function/Event). Supports auto-creating Custom Events. |
set_cursor_node | Partial | Low-level cursor escape hatch for branches or repair flows. Prefer set_edit_function + append. | |
| **Sensing & Querying** | get_function_nodes | Partial | Transitional node readback: IDs, node names/classes, and exec flags only. |
get_variables | ✅ | Get list of member variables. | |
search_function_library | ✅ | Search callable libraries (C++/BP). Supports fuzzy search. | |
| **Union Writes** | add_step(name) | ✅ | Add executable node by name (e.g. "PrintString"). Auto-wiring and auto-layout supported. |
prepare_value(name) | ✅ | Add data node by name (e.g. "MakeLiteralString", "GetVariable"). | |
connect_data_to_pin | ✅ | Connect pins precisely (supports NodeID:PinName format). | |
add_variable | ✅ | Add or update a member variable; do not remove unspecified variables. | |
compile_blueprint | ✅ | Compile and apply changes. | |
| **Hidden Compatibility** | delete_variable | Hidden | Backend compatibility only; hidden from default MCP until deletion requires confirm_delete=true. |
delete_node | Hidden | Backend compatibility only; hidden from default MCP until deletion requires confirm_delete=true. |
Notes: - Current Blueprint reads are not yet semantically dense enough to answer "read any information" well. - bluecode should introduce code-like read/write, append-only merge semantics, explicit bluecode_delete(confirm_delete=true), and compact compile diagnostics. - Until then, use Blueprint MCP only for narrow event wiring and verify with compile_blueprint plus focused readback.
| Command | Status | Description |
|---|---|---|
set_animation_scope | ✅ | Animation target: focus the current animation and auto-create it when missing. |
set_widget_scope | ✅ | Widget target inside the current animation. |
get_all_animations | ✅ | Compact animation list for the active UMG target. |
animation_overview | ✅ | Returns keyframe counts, track counts, key times, and changed properties. |
animation_widget_properties | ✅ | Timeline view: per-widget property changes (ignores unanimated properties). |
animation_time_properties | ✅ | Time-slice view: property values at specific times (multi-time supported). |
animation_append_widget_tracks | ✅ | Append/overwrite keys per widget+property (union only, no implicit deletion). |
animation_append_time_slice | ✅ | Append a diff-style time slice for multiple widgets at a given time. |
animation_delete_widget_keys | ✅ | Scoped delete for widget+property at specific times (confirm_delete=true required per Issue 15 safety policy). |
create_animation | ✅ | Create or focus an animation with auto naming. |
delete_animation | ✅ | Explicit whole-animation delete; requires confirm_delete=true. |
Notes: - set_animation_scope/set_widget_scope implement the target/default semantics from the protocol; names are auto-corrected (no "animal" typo) and animations auto-create when missing. - Write paths are union/overwrite only—no implicit deletion. Use animation_delete_widget_keys with confirm_delete=true for scoped removals. - Legacy low-level reads/writes such as get_animation_keyframes, get_animation_full_data, set_property_keys, set_animation_data, remove_property_track, and remove_keys remain backend compatibility commands but are hidden from the default MCP prompt surface. - Responses include counts/timeline context so every default Sequencer MCP returns actionable data.
| Command | Status | Description |
|---|---|---|
hlsl_set_target | ✅ | Lock/create the HLSL target material. New assets default to UI; pass type fields for non-UMG materials. |
hlsl_get | ✅ | Read current HLSL code, structured parameters, and the semantic output contract. |
hlsl_set | ✅ | Union-style write for HLSL, parameters, and extra outputs: overwrite existing items and append missing ones. |
hlsl_delete | ✅ | Explicitly delete HLSL parameters or outputs with confirm_delete=true; add kind only when a name is ambiguous. |
hlsl_compile | ✅ | Compile current HLSL target and return concise diagnostics for AI post-processing. |
| Category | API Name | Status | Description |
|---|---|---|---|
| **Styling** | set_widget_style | 🚧 Planned | Set detailed style (e.g. FButtonStyle) for a specific widget. |
| **Theming** | apply_global_theme | 🚧 Planned | Batch apply styles and fonts across multiple widgets based on a theme config. |
| **Assets** | style_create_asset | 🚧 Planned | Create a standalone Slate Widget Style asset. |
---
| Symptom | Fix |
|---|---|
ConnectionRefusedError, WinError 10061, or WinError 1225 | Open Unreal Editor first, enable UmgMcp, restart the editor, then reconnect the MCP client. |
uv is not recognized | Install uv, restart the terminal, or create the manual virtual environment shown above. |
| Plugin does not compile | Confirm the project is UE 5.8 Win64, remove stale generated build output for this plugin/project, and let Unreal rebuild. |
| The wrong widget was edited | Set the active UMG target first or pass a full asset path such as /Game/UI/WBP_LoginPanel.WBP_LoginPanel. |
高质量MCP工具,适用于UE5游戏开发
AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。
建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。
✅ MIT 协议 — 最宽松的开源协议之一,可自由商用、修改、分发,仅需保留版权声明。
AI Skill Hub 点评:虚幻引擎MCP 的核心功能完整,质量优秀。对于Claude Desktop / Claude Code 用户来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。
| 原始名称 | UnrealMotionGraphicsMCP |
| Topics | mcpaiautomationgamedev |
| GitHub | https://github.com/winyunq/UnrealMotionGraphicsMCP |
| License | MIT |
| 语言 | C++ |
收录时间:2026-07-12 · 更新时间:2026-07-12 · License:MIT · AI Skill Hub 不对第三方内容的准确性作法律背书。
选择 Agent 类型,复制安装指令后粘贴到对应客户端