Server data from the Official MCP Registry
UE4.27 MCP server for controlling Unreal Editor sessions over Python Remote Execution.
UE4.27 MCP server for controlling Unreal Editor sessions over Python Remote Execution.
Valid MCP server (2 strong, 1 medium validity signals). 3 known CVEs in dependencies (0 critical, 3 high severity) Package registry verified. Imported from the Official MCP Registry.
5 files analyzed · 4 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
This plugin requests these system permissions. Most are normal for its category.
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-conaman-unreal-mcp-ue4": {
"args": [
"-y",
"unreal-mcp-ue4"
],
"command": "npx"
}
}
}From the project's GitHub README.
UE4.27.2-focused MCP server for Unreal Engine using Unreal Python Remote Execution
unreal-mcp-ue4 started from the core idea and early workflow shape of runreal/unreal-mcp, but it has since been heavily refactored for Unreal Engine 4.27.2 and expanded with many new tools, UE4-specific compatibility layers, documentation, and smoke coverage. At this point, the original inspiration remains, but the public surface and day-to-day behavior are substantially different and UE4-first.
This port and the follow-up tool, documentation, and smoke-test work were developed with assistance from OpenAI Codex.
This project is still under active development, so bugs, rough edges, and UE4.27-specific limitations may still surface.
Published package:
unreal-mcp-ue4
Registry name:io.github.conaman/unreal-mcp-ue4
4.27.218+npmThis repository does not ship its own Unreal plugin. Instead, it depends on built-in editor features that must be enabled in your UE4.27.2 project.
Python Editor Script PluginEditor Scripting UtilitiesEdit -> Project Settings -> Python -> Enable Remote Executiongit clone https://github.com/conaman/unreal-mcp-ue4.git
cd unreal-mcp-ue4
npm install
npm run build
Successful build output should create dist/bin.js, dist/index.js, and dist/editor/tools.js.
Once the package is published on npm, you can install it directly instead of cloning the repository.
Global install:
npm install -g unreal-mcp-ue4
One-off invocation with npx:
npx unreal-mcp-ue4
If you install from npm, the MCP server entry point is the published unreal-mcp-ue4 binary instead of a local dist/bin.js path.
In Unreal Editor:
Edit -> Plugins.Python Editor Script Plugin.Editor Scripting Utilities.Edit -> Project Settings -> Python.Enable Remote Execution.Most clients use a local stdio server command. The safest configuration is to point to an absolute node path and an absolute dist/bin.js path.
Generic MCP client example:
{
"mcpServers": {
"unreal-ue4": {
"command": "/absolute/path/to/node",
"args": [
"/absolute/path/to/unreal-mcp-ue4/dist/bin.js"
]
}
}
}
If node is already on your PATH, you can use "command": "node" instead.
codex mcp add unreal-ue4 -- /absolute/path/to/node /absolute/path/to/unreal-mcp-ue4/dist/bin.js
If you installed the package globally from npm, you can point the client directly at the published executable:
codex mcp add unreal-ue4 -- unreal-mcp-ue4
For VS Code, create .vscode/mcp.json:
{
"servers": {
"unreal-ue4": {
"command": "node",
"args": [
"C:\\Users\\YourName\\dev\\unreal-mcp-ue4\\dist\\bin.js"
]
}
}
}
Then start the server from the MCP config UI and verify that unreal-ue4 appears in the tools picker.
Official Copilot docs:
manage_* namespace tools as the main MCP surface.manage_editor.project_info as the canonical project summary entry point.manage_editor.map_info and manage_level.world_outliner as the canonical map and level read entry points.manage_editor.run_python as an escape hatch for debugging, rapid prototyping, and UE4.27 API gaps that are not yet wrapped as stable tools.Enable Remote Execution are enabled.npm run build.Useful first commands:
manage_editor with action: "project_info"manage_editor with action: "map_info"manage_level with action: "world_outliner"manage_tools with action: "list_namespaces"Useful first natural-language requests:
Get project info from the unreal-ue4 server.List the actors in the current level.Spawn a StaticMeshActor named TestCube at 0,0,100.DataAsset and StringTable assets.action and params.The smoke test builds the server, launches its own local MCP server process, connects to the already running Unreal Editor, and runs a deterministic validation flow. You do not need to start a separate MCP server manually before this test.
npm run test:e2e
This checks:
npm run test:e2e -- --with-assets
This adds:
/Game/MCP/TestsUseful options:
npm run test:e2e -- --with-assets --keep-assets keeps the generated test assets so you can inspect them in the Content Browser after the run.npm run test:e2e -- --skip-namespace skips the namespace-dispatch portion of the smoke run.npm run test:e2e -- --verbose prints MCP server stderr during the run.npm run test:e2e -- --help prints the runner options without rebuilding the server.Open PowerShell in the repository folder:
cd C:\dev\unreal-mcp-ue4
npm install
npm run test:e2e
npm run test:e2e -- --with-assets
[PASS] for every test step./Game/MCP/Tests and then removes them before exit unless --keep-assets is used.npm run test:e2e.npm run test:e2e -- --with-assets.The package is prepared for npm publishing as a public package.
The project version format is unified everywhere as the semver-compatible date form YYYY.M.D-N. For example, the current release is published consistently as 2026.4.1-1.
Recommended maintainer flow:
npm run publish:check
npm run test:e2e -- --with-assets --skip-build
npm publish
Notes:
prepack runs npm run build, so the published tarball always uses a fresh dist.npm run publish:check verifies typecheck, rebuilds the package, and runs npm pack --dry-run so you can inspect the exact tarball contents before publishing.unreal-mcp-ue4 is currently available on npm.npm publish --tag latest.Remote node is not availablePython Editor Script Plugin is enabled.Editor Scripting Utilities is enabled.Enable Remote Execution is enabled in project settings.UnrealEditor.exe and node.exe through Windows Defender Firewall.unreal-remote-execution package uses UDP multicast discovery on 239.0.0.1:6766 and a localhost command channel on 127.0.0.1:6776.nodenode or node.exe in the MCP config instead of relying on PATH.Excluded Capability Areas in the tool section.CanvasPanel slots in UE4.27.The tool list below is generated from server/index.ts during build.
Notes call out important requirements or UE4.27 limitations when they matter. Empty notes mean there are no additional caveats beyond normal editor setup.
The recommended public surface is the manage_* namespace layer. Prefer manage_editor.project_info, manage_editor.map_info, and manage_level.world_outliner as canonical read entry points, and treat the small direct-tool set as low-level primitives for path discovery and actor CRUD.
These capability areas are intentionally not exposed through the MCP surface in this UE4.27 port because they fail reliably in the current Python environment and only add prompt or context overhead until a native bridge exists.
| Capability Area | Effect on MCP Surface | Why It Is Excluded |
|---|---|---|
| Blueprint event-graph event insertion | Related event-node and input-action helpers are excluded from the MCP surface. | The current UE4.27 Python environment does not expose reliable event graph access or K2 event reference setup. |
| Blueprint graph inspection and node search | Graph-analysis, graph-inspection, and node-search helpers are excluded from the MCP surface. | The current UE4.27 Python environment does not expose Blueprint graph arrays such as UbergraphPages or FunctionGraphs reliably enough for deterministic inspection. |
| Low-level Blueprint graph node creation | Generic graph-node helpers and related self or component reference insertion helpers are excluded from the MCP surface. | The current UE4.27 Python environment does not expose stable low-level graph node creation or member-reference wiring. |
| Blueprint function-call node authoring | Function-node helpers that depend on editor graph member-reference setup are excluded from the MCP surface. | The current UE4.27 Python environment does not expose reliable function-call node reference setup. |
| Blueprint variable and function metadata inspection | Variable-detail and function-detail helpers are excluded from the MCP surface. | The current UE4.27 Python environment does not expose NewVariables or FunctionGraphs reliably enough for deterministic inspection. |
| Blueprint variable authoring | Variable-creation helpers are excluded from the MCP surface. | BPVariableDescription and EdGraphPinType are not exposed in the current UE4.27 Python environment. |
| UMG delegate-binding authoring | Widget event-binding and text-binding helpers are excluded from the MCP surface. | DelegateEditorBinding is not exposed in the current UE4.27 Python environment. |
Licensed under the MIT License.
Be the first to review this server!
by Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
by Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
by mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.