By EpicGames
Control a live Unreal Editor instance from Claude Code, spawning and transforming actors, editing Blueprints, materials, Niagara, Sequencer, and Control Rigs, recompiling C++ via Live Coding, and authoring or extending static AI-callable tool methods registered through Unreal's ToolsetRegistry.
Use this skill when authoring or extending an Unreal Engine toolset, a class of static, AI-callable functions registered with `ToolsetRegistry` and exposed through the unreal-mcp server. Trigger when the user wants to add, expose, or register a new tool method, create a new toolset, or extend an existing one such as `BlueprintTools`, `StaticMeshTools`, `ObjectTools`, `LevelTools`, or `MaterialTools`. Concrete triggers: 'add a tool to X', 'expose this via MCP', 'register a function so Claude/the agent can call it', 'wire this into the toolset registry', 'create a new toolset for Y', 'add a Python toolset', 'make this AI-callable'; adding a `static` method to a `*Tools.cpp/.h/.py` file; editing files under a `Toolsets/` folder; designing tool parameters, return types, or struct schemas for a toolset. SKIP for: invoking existing tools at runtime (use unreal-mcp instead), authoring an Agent Skill (use unreal-skill), generic refactors that happen to touch a toolset file but don't add or redesign a tool, or unrelated uses of the word 'toolset'.
Use this skill to perform actions inside an Unreal Engine project via a live-editor MCP connection. Trigger when the user wants to change, query, or run something in their Unreal Engine project, not for conceptual or docs questions. Concrete triggers: spawn/move/duplicate/transform actors in a level, open a `.uproject`, add things around a PlayerStart, create or edit a Blueprint/Widget/Material/Niagara/Control Rig/Sequencer/Behavior Tree/GAS ability, read or write properties on actors (e.g. `bIsLocked` on `BP_DoorActor`), Live Coding recompile after editing C++ (`AActor`, `UMyComponent::Method`, `UPROPERTY`), or modify Static/Skeletal Mesh assets. Treat as Unreal context even without the word "Unreal": asset prefixes `BP_`, `WBP_`, `M_`, `MI_`, `NS_`, `CR_`, `SK_`, `SM_`, `ABP_`; UE C++ types/macros; `.uproject`; Content Browser; Outliner; PlayerStart; "in my game" plus UE signals. Skip for: pure conceptual/docs questions, Unity, Godot, or unrelated uses of "blueprint"/"sequencer"/"widget".
Use this skill when creating, editing, or reviewing an Unreal Engine Agent Skill, a named bundle of instructions registered with the unreal-mcp server (distinct from Claude Code's harness skills under `.claude/skills/`). Trigger when the user wants to add or change a skill that the in-editor agent will load. Concrete triggers: 'create a new Agent Skill', 'add a skill for X workflow', 'edit/update this skill', 'review my skill', 'make a Python skill class', 'create a skill UAsset', 'register a skill so Claude picks it up'; writing or editing a `SKILL.md` inside a UE plugin's `Skills/` or `Python/skills/` folder; defining a Python skill class registered with the skill registry; calling `CreateSkill`, `ListSkills`, or `GetSkills` MCP tools; designing a skill's name, description, or instruction body. SKIP for: authoring a toolset (use create-toolset), invoking an existing skill at runtime (use unreal-mcp), editing harness-level Claude Code skills under `.claude/skills/` or `~/.claude/skills/`, or generic uses of the word 'skill'.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Control Unreal Editor directly from Claude Code via MCP. Hundreds of tools exposed via Unreal's ToolsetRegistry across 30+ toolsets: actors, blueprints, materials, Niagara, Control Rigs, Sequencer, State Trees, widgets, Gameplay Ability System, automation testing, and more.
unreal-mcp (skills/unreal-mcp) - instructions and workflows for driving the Unreal Editor via MCP.hooks/unreal-context.sh) - injects a short note identifying the repo as an Unreal Engine project so Claude defaults to UE conventions (C++/UObject, Slate, UHT) and prefers the unreal-mcp skill. Runs on startup, resume, and clear.AllToolsets provides the tools; the server exposes none without it)ModelContextProtocol.StartServer in the console, or enable bAutoStartServer per skills/unreal-mcp/references/setup.mdPATH - required for the SessionStart hook (see Platform Support)Supported: macOS, Linux, and Windows via Git Bash or WSL.
The SessionStart hook is a bash script (hooks/unreal-context.sh) invoked by hooks/hooks.json as bash ${CLAUDE_PLUGIN_ROOT}/hooks/unreal-context.sh. It requires a working bash on PATH:
bash on PATH, and the hook will not run. The plugin's MCP tools still work; you just lose the short project-context note the hook injects at session start. There is no separate PowerShell companion script today.This plugin is published in Anthropic's official Claude Code plugin marketplace, claude-plugins-official, which is available automatically when you start Claude Code. Browse it at claude.com/plugins or in the Discover tab of the /plugin panel.
In Claude Code:
/plugin install unreal-engine-skills-for-claude-code@claude-plugins-official
If the official marketplace is not present, add it first, then run the install command above:
/plugin marketplace add anthropics/claude-plugins-official
Commit this to .claude/settings.json in the project that should use the plugin. Anyone who trusts the project folder is prompted to install it automatically:
{
"enabledPlugins": {
"unreal-engine-skills-for-claude-code@claude-plugins-official": true
}
}
ModelContextProtocol.StartServer in the console to start the MCP server./plugin. The Installed tab should list unreal-engine-skills-for-claude-code as enabled. This confirms the plugin itself (skills, hooks) is loaded./mcp. You should see unreal-mcp listed as a connected server. This confirms the plugin's MCP server is reachable.The default port is 8000 with URL path /mcp. If the port is in use, run ModelContextProtocol.StartServer <port> in the console with a different port number.
Note: This plugin does not ship a static
.mcp.jsonfile. RunModelContextProtocol.GenerateClientConfig ClaudeCodein the editor console to generate it from the current server port and URL; re-run after changing either.
Tool search is enabled by default: the MCP server exposes three meta-tools (list_toolsets, describe_toolset, call_tool) instead of the full tool catalog, so Claude discovers toolsets on demand, the prompt cache stays warm, and discovered tools are callable on the same turn through call_tool. Toggle with the bEnableToolSearch setting in [/Script/ModelContextProtocolEngine.ModelContextProtocolSettings]; when disabled, every tool is registered upfront (path used by the hash-mapping commandlet). The model-facing usage contract lives in skills/unreal-mcp/SKILL.md.
Installing this plugin gives Claude broad, live access to the running Unreal Editor. Treat that access the same way you would treat running arbitrary code from an assistant, because in practice it is.
Localhost is not a trust boundary. The MCP server binds to localhost:8000 with origin validation. Origin validation protects against a browser tab talking to the server, but any process running as the same user on the same machine can connect. Do not run the MCP server on shared or untrusted machines, and do not expose the port outside the loopback interface.
claude plugin install unreal-engine-skills-for-claude-code@claude-plugins-officialServer-agnostic field manual for AI agents driving Unreal Engine 5.7 / 5.8 through MCP. Engine-level reflection gotchas, crash patterns, subsystem-specific quirks (Niagara, MetaSound, Materials, Lumen, UMG, audio), the Python-to-MCP data channel workaround, transport requirements, and verify-after-mutate patterns. Works with any MCP server that exposes UE5 functionality — Epic's official ModelContextProtocol plugin, custom servers, or anything else.
Develop, test, and automate Unreal Engine 5.x projects (WIP). Covers PlayUnreal automation, Remote Control API, Automation Driver, and CI-friendly E2E workflows. PlayUnreal: https://github.com/Randroids-Dojo/PlayUnreal
BPX plugin for Unreal Engine asset inspection and safe edit workflows.
Unity Editor automation plugin powered by the Unity Control Protocol base skill.
Control Unity Editor from Claude Code using UniCli CLI
Fast code index for Unreal Engine projects — search types, members, files, assets, and grep across AngelScript, C++, and Blueprints via MCP tools.