# unreal-mcp-ue4 [Health: Active]

**Category:** 🎮 Gaming  
**Repository:** https://github.com/conaman/unreal-mcp-ue4  
**GitHub Stars:** 27  
**npm Downloads (last month):** 807  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/unreal-mcp-ue4

## Description
UE4.27 MCP server for controlling Unreal Editor sessions over Python Remote Execution.

## Tools
Capabilities this server exposes over MCP:

- **get_unreal_engine_path** — Get the active Unreal Engine root path from the connected editor session
- **get_unreal_project_path** — Get the active Unreal project file path from the connected editor session
- **get_unreal_version** — Get the active Unreal Engine version string from the connected editor session
- **editor_create_object** — Create a new object/actor in the world

Example output: {'success': true, 'actor_name': 'StaticMeshActor_1', 'actor_label': 'MyCube', 'class': 'StaticMeshActor', 'location': {'x': 100.0, 'y': 200.0, 'z': 0.0}, 'rotation': {'pitch': 0.0, 'yaw': 45.0, 'roll': 0.0}, 'scale': {'x': 1.0, 'y': 1.0, 'z': 1.0}}

Returns created actor details with final transform values.
- **editor_update_object** — Update an existing object/actor in the world

Example output: {'success': true, 'actor_name': 'StaticMeshActor_1', 'actor_label': 'UpdatedCube', 'class': 'StaticMeshActor', 'location': {'x': 150.0, 'y': 200.0, 'z': 50.0}, 'rotation': {'pitch': 0.0, 'yaw': 90.0, 'roll': 0.0}, 'scale': {'x': 2.0, 'y': 2.0, 'z': 2.0}}

Returns updated actor details with new transform values.
- **editor_delete_object** — Delete an object/actor from the world

Example output: {'success': true, 'message': 'Successfully deleted actor: MyCube', 'deleted_actor': {'actor_name': 'StaticMeshActor_1', 'actor_label': 'MyCube', 'class': 'StaticMeshActor', 'location': {'x': 100.0, 'y': 200.0, 'z': 0.0}}}

Returns deletion confirmation with details of the deleted actor.
- **manage_asset** — Asset tool namespace for listing, searching, inspecting, exporting, validating, duplicating, renaming, moving, deleting, saving, and folder-management actions.
- **manage_actor** — Actor tool namespace for listing, searching, spawning, deleting, transforming, and inspecting level actors.
- **manage_editor** — Editor tool namespace for run_python, console_command, project_info, map_info, world_outliner, is_pie_running, start_pie, stop_pie, screenshot, and move_camera actions.
- **manage_system** — System tool namespace for console commands and asset validation actions.
- **manage_inspection** — Inspection tool namespace for asset, actor, map, and basic Blueprint summary actions.
- **manage_tools** — Tool-namespace registry for listing registered tool namespaces and describing supported actions. Use this as the discovery entry point for the namespace-first MCP surface.
- **manage_source_control** — Source-control tool namespace for provider inspection and file or package source-control operations.
- **manage_lighting** — Lighting tool namespace for spawning common light actors, transforming them, and inspecting level lighting state.
- **manage_volumes** — Volume tool namespace for spawning common engine volumes and applying delete or transform actions.
- **manage_navigation** — Navigation tool namespace for spawning navigation volumes and proxies plus basic map inspection actions.
- **manage_splines** — Spline tool namespace for spawning a spline-host actor or Blueprint and then transforming or deleting it.
- **manage_effect** — Effects tool namespace for spawning debug-shape actors, assigning materials, tinting them, and deleting them.
- **manage_level** — Level tool namespace for map inspection, actor listing, world outliner inspection, and preset structure creation actions.
- **manage_level_structure** — Level-structure tool namespace for preset town, house, mansion, tower, wall, bridge, and fortress construction actions.
- **manage_environment** — Environment-building tool namespace for preset town, arch, staircase, pyramid, and maze generation actions.
- **manage_geometry** — Geometry tool namespace for wall, arch, staircase, and pyramid preset construction actions.
- **manage_skeleton** — Skeleton tool namespace for searching Skeleton and SkeletalMesh assets and inspecting their metadata.
- **manage_material** — Material tool namespace for listing materials, applying them to actors or Blueprints, and tinting them with material instances.
- **manage_texture** — Texture tool namespace for searching texture assets, importing image files as textures, and reading their asset metadata.
- **manage_data** — Data tool namespace for searching data assets, creating common data containers, and inspecting their asset metadata.
- **manage_blueprint** — Blueprint tool namespace for Blueprint creation, component editing, compilation, and basic Blueprint summary actions.
- **manage_widget** — Widget tool namespace for UMG Blueprint creation, widget-tree inspection, widget-tree edits, CanvasPanel root normalization, and viewport spawning actions. Use inspect_tree to verify designer contents, add_child_widget for nested layout work, and ensure_canvas_root when absolute CanvasPanel positioning is required.
- **manage_sequence** — Sequence tool namespace for creating, searching, and inspecting LevelSequence assets.
- **manage_audio** — Audio tool namespace for importing audio files, searching audio assets, and inspecting their asset metadata.
- **manage_animation_physics** — Animation-and-physics tool namespace for physics Blueprint spawning, Blueprint physics settings, and Blueprint compilation actions.
- **manage_input** — Input tool namespace for creating classic UE4 input mappings.
- **manage_behavior_tree** — Behavior-tree tool namespace for creating, searching, and inspecting BehaviorTree assets.
- **manage_gas** — GAS tool namespace for searching gameplay-ability-related assets and inspecting their asset metadata.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "unreal-mcp-ue4": {
    "command": "npx",
    "args": ["-y","unreal-mcp-ue4"]
  }
}
```

## Documentation

## What unreal-mcp-ue4 MCP server does

The unreal-mcp-ue4 MCP server lets an MCP client work with a running Unreal Engine 4.27.2 editor. It is designed for UE4.27.2 rather than UE5, and its supported operations follow the Python APIs and editor scripting capabilities available in that release.

The server can read project and map details, inspect the current level, search assets, examine metadata and references, and manage actors. It also supports creating common data assets, editing supported Blueprint assets, and building or modifying Widget Blueprint trees with UE4-compatible UMG helpers. Some sequence operations are available when SequencerScripting is enabled.

## How it works

Communication uses Unreal Engine’s built-in Python Remote Execution path. The repository does not provide a separate Unreal C++ plugin. The MCP process runs through stdio, while commands are sent to the open editor session.

Most functionality is grouped into `manage_*` namespace tools. Each namespace dispatches an action with a corresponding `params` object, allowing MCP clients to discover action-specific input schemas. Recommended read entry points include `manage_editor` with `project_info` or `map_info`, and `manage_level` with `world_outliner`. `manage_editor.run_python` provides a lower-level option for debugging, prototyping, or API areas that do not yet have stable wrappers.

## Setup and configuration

Install Node.js 18 or newer and npm. The published package can be installed globally with `npm install -g unreal-mcp-ue4`, or started with `npx unreal-mcp-ue4`. A source checkout can be installed, built with `npm run build`, and launched through its generated `dist/bin.js` file.

In the target UE4.27.2 project, enable `Python Editor Script Plugin` and `Editor Scripting Utilities`. Enable `SequencerScripting` for the documented sequence actions, including actor bindings, track and key edits, camera cuts, playback ranges, and speed-track analysis. In Project Settings under Python, enable `Enable Remote Execution`, then restart the editor when requested.

Register the command or the built `dist/bin.js` path in the MCP client configuration. Keep the target project open while using the server. A small read-only request such as project information, map information, or the current world outliner is a suitable first check.

## Tools and capabilities

The unreal-mcp-ue4 MCP server includes capabilities for:

- Reading project, map, asset, and actor information.
- Listing and inspecting actors in the current level.
- Creating, transforming, inspecting, and deleting actors.
- Searching assets and reviewing references or metadata.
- Creating `DataAsset` and `StringTable` assets.
- Creating and editing supported Blueprint assets.
- Creating and editing Widget Blueprint trees through UE4-safe UMG helpers.
- Managing supported sequence, track, binding, camera-cut, playback, and speed-track operations.
- Running arbitrary editor Python through the editor management namespace.

Direct tools are intended mainly for lower-level primitives such as Unreal session path discovery and actor lifecycle operations. Namespace tools are the preferred general interface.

## Limitations and notes

The target is UE4.27.2, and UE5-only editor scripting behavior is not added back into the server. Operations that are unreliable or unavailable in UE4.27 may be omitted or return an explicit message rather than silently failing.

Any connected MCP client can inspect and modify the open Unreal Editor session. Test with a disposable project before using asset or world-generation operations. The project remains under active development, so UE4.27-specific bugs and rough edges may occur.

The no-Unreal smoke test checks startup, discovery, namespace schemas, and validation without opening Unreal. The end-to-end smoke test requires an already running editor and checks representative reads, source-control state reads, and actor create, update, and delete flows.

_Full upstream README: https://allmcps.com/mcp/unreal-mcp-ue4/readme_

