Unreal + AI
Drive Unreal Engine with an AI agent
Unreal 5.8 ships a first-party MCP server, so any MCP client can spawn actors and set up lighting in your open level. Here is how to turn it on, and where the agent gets models.

Unreal 5.8 quietly added the thing that makes agent-driven level building actually work: a first-party MCP server, in the editor, maintained by Epic. It arrived on 17 June 2026 as an Experimental feature, and it means any MCP-capable agent can drive the editor over a local connection instead of guessing at your project from its files.
It has the same blind spot as every other editor integration. It gives the agent hands, and no content.
Turn it on
Open Edit, then Plugins, and search for Unreal MCP. Enable it, and enable the All Toolsets plugin beside it, then restart the editor when prompted.
The plugin's identifier is ModelContextProtocol, which is what you will see in config files and logs; the Plugin Browser shows it as Unreal MCP.
Next, tell the editor to run the server when it starts: Edit, then Editor Preferences, then Model Context Protocol, and turn on auto-start.
Point an agent at it
Epic generates the client config for you. In the editor console:
1ModelContextProtocol.GenerateClientConfig ClaudeCode
That writes a .mcp.json into your project root describing the running server. Launch Claude Code from the project root and it reads that file and connects.
The server speaks HTTP and Server-Sent Events only, binds to http://127.0.0.1:8000/mcp by default, and accepts connections only from the same machine. Both the port and the URL path are configurable in the same preferences panel if 8000 is already taken.
Once connected, an agent can spawn actors, set up lighting, create material instances, inspect Slate widgets, run automation tests and call any custom tool your team chooses to expose.
One design detail explains most of its behaviour: the server exists to synchronise external requests with Unreal's game thread, executing tool calls on that thread serially. That is why an agent's actions land in a defined order and why a long-running tool call blocks the ones behind it. It is a queue into the editor, not a parallel API.
Give it something to place
The catalogue is a second MCP server and runs alongside Epic's:
1claude mcp add --transport http 3dassets https://3dassets.dev/mcp
No account and no key for reading. An MCP client merges the tools from every server it holds, so the agent now has "spawn an actor in the open level" and "find me a low-poly fuel depot" in the same tool list. That combination is the whole point.
Unreal reads glTF with its built-in importer, so files from the catalogue go in directly. Models are authored in metres with +Y up and sit on the ground plane, and every response carries the bounding box and size in metres, so an agent can place something without guessing whether it fetched a crate or a warehouse.
A prompt that uses both
1Block out a fuel depot exterior in the open level.23Content: use 3dassets.dev. Find a pack that covers industrial exteriors4rather than loose props, and show me the model list with triangle counts5before you fetch anything. Budget 400,000 triangles for the whole scene.67Layout: a place I can walk through. Tanks and pipework as the silhouette,8a road in, something at the far edge to walk towards. Not a grid.910Light it for overcast midday and leave the camera path clear.
Asking for the model list first is worth the extra turn in any engine, and more so here: spawning actors into a live level is quick to do and tedious to unpick.
Experimental means experimental
Epic's own wording is worth repeating rather than softening. Unreal MCP is an Experimental feature: many features are incomplete, and APIs and data formats can change at any time. Epic's guidance is to treat it as a development-workflow tool, not a production pipeline.
In practice that means two habits.
Commit before you hand over control. An agent working through a level can touch a lot of actors quickly, and a clean commit is a far better undo than trying to reverse forty spawns by hand.
Keep it on blockouts and tedium. Placing a set of props to a rule, standing up a rough level to walk around, running a batch of automation tests: all good. Art direction, final dressing and anything you would not want silently rewritten: keep those yours.
The local-only binding is a genuine safety property and worth not undoing. The server accepts connections only from the same machine by default, which is the right shape for a tool that can execute editor commands.
Community servers exist too
Epic's is not the only option, and it is the newest. There are mature community MCP servers for Unreal that predate it, generally working through a C++ automation bridge and exposing a hundred or more editor commands over a local socket. They are worth knowing about if you are on an engine version before 5.8, since the first-party plugin does not exist there.
On 5.8 and later, start with Epic's. It is maintained alongside the engine, it is the one that will track the editor's own changes, and it does not need a separate build step.
Next
The same pairing works elsewhere: Unity has two official agent plugins and Godot has several community MCP servers. If you want the catalogue side first, connecting an assistant to the models covers it without an engine involved.

