TutorialStefan VaskevichStefan Vaskevich

Unreal Engine 5.8 Native MCP + Claude: The Setup That Actually Works

UE 5.8 ships a native MCP server (PCG, Niagara, Blueprints). The demo is staged - here's the real setup: native MCP + VibeUE + Claude, end to end.

Unreal Engine 5.8 just dropped, and the headline is huge: a native MCP server built right into the editor, with tools for PCG, Niagara, and Blueprints. You connect an agent - Claude, Codex, Cursor - and the demo shows it building a whole city, populating crowds, and art-directing the lighting from a few prompts.

Here is the honest part nobody tells you: the native MCP alone will not do that. The reel Epic showed was carefully prepared - modular assets and hand-built PCG graphs already in the project. Install Claude, flip on MCP, and try it cold, and you will almost certainly get garbage. But it is still a genuinely amazing tool. You just need the right setup around it - and in combination, it really can make magic. Here is exactly what that setup is.

The setup in one line
Unreal Engine 5.8 (native MCP) + the VibeUE plugin (updated for 5.8) + Claude Code opened in your project folder. The native MCP does the clean, native work; VibeUE fills every gap it cannot reach. Both speak MCP to the same agent.
A finished Japanese river town in Unreal Engine 5.8 at golden hour - pagoda, boats on the water, cherry blossoms - built with PCG through the native MCP and VibeUE
The end result: a controllable Japanese river town, built almost entirely from prompts in Unreal Engine 5.8 - native MCP for the native work, VibeUE for everything it can't reach.

1. What the native UE 5.8 MCP is genuinely great at

For the first time, the MCP server ships inside Unreal. No third-party bridge for the basics - the editor itself exposes an agent-facing API. And it opens up the tools that matter in a much more convenient way: PCG (procedural content generation), Niagara, Blueprints, and more. Placing objects, creating materials, and simply taking an annotated screenshot so the agent can see what it just did - none of that is a problem anymore.

This is exactly why Epic demoed a PCG-generated city. PCG is the powerful part, and giving the agent its full API and skills is the real unlock. The crowd sims, the instant city, the lighting passes you saw - all of that runs on PCG and native tool calls.

A massive crowd simulation populating an Unreal Engine scene, from the UE 5.8 native MCP demo
Native MCP demo: populate a world with crowds. Powerful - and powered by PCG.
Claude art-directing the lighting of a Japanese village in Unreal Engine - warm low-sun golden hour
Art-directing the whole lighting pass: sun angle, exposure, shadow fill - all from prompts through the native MCP.

2. Where it falls short (and why the demo lies a little)

Run the native MCP on its own and you hit the walls fast. In practice it cannot run arbitrary Python, it is limited on deep fine-tuning of materials and objects, and - the one that bites everyone working with AI-generated 3D - it can only import FBX or OBJ. Hand it an AI-generated .glb and it just asks you to import the asset yourself.

The Epic demo was staged
The “few prompts, whole city” reel was prepared in advance: modular buildings, a library of assets, and hand-authored PCG graphs already sitting in the project. The agent had access to PCG - but it did not invent those graphs on the spot. Other YouTubers calling it “impossible to reproduce” are half right: you cannot reproduce their scene cold, but you can absolutely build your own with the setup below.

And one more honest limit: don’t expect it to look at a concept image and recreate it. Spatial vision is the weak spot. Opus 4.8 (used throughout this build) is decent; Fable 5 has noticeably better spatial vision but is not miles ahead; and ChatGPT/Codex vision is better still for “read this screenshot and fix the placement” tasks. If you live in Codex, you will get cleaner screenshot-driven fixes than with Claude.

3. VibeUE fills the gaps - perfectly

VibeUE is the plugin from the previous Claude-Code-in-Unreal build - and as of a day before this video, it has a 5.8 release that works together with the native MCP, not against it. That combination is the answer. Here is what it adds on top:

Arbitrary Python execution
The agent is no longer boxed in by whatever methods the native API happens to expose. If a tool is missing, it scripts around it in the editor’s Python.
GLB import (not just FBX/OBJ)
Point Claude at a folder of AI-generated .glb files and it imports them straight into the project - the exact thing the native MCP refuses to do.
Deep fine-tuning + its own skills
Terrains, deeper material control, and an API into almost every Blueprint graph - including widgets - plus a skill library the native MCP lacks.
One rule: native methods first
VibeUE is more powerful, but that power can crash the editor. So the working order is simple: let the agent reach for native MCP tools first, and fall back to VibeUE only for what native can’t do (Python, GLB import, deep graph/material work). The downloadable setup files below encode exactly that priority.
A PCG Road Spline graph open in Unreal Engine, with nodes for civic radius, river clearance, and tree scatter - edited through VibeUE
VibeUE reaches deep into PCG graphs and node schemas - tapping the real node signatures instead of guessing. This is the layer the native MCP can't touch.

4. Install and connect the whole stack

Prerequisite: Unreal Engine 5.8 installed and Claude Code opened in your Unreal project folder (desktop app or terminal, your call). Run it in bypass-permissions mode so it can build and wire things without stopping every step.

1

Install VibeUE first (paste the link, let Claude do it)

On the VibeUE 5.8 page, copy the Git link and tell Claude to clone and install it. It pulls the repo into your project’s Plugins/ folder and builds the C++ module. Close the Unreal Editor while it builds (the install needs restarts anyway), and let it compile.

2

Make sure Git is set up

If Claude asks to initialize Git, say yes - Git is essential. An Unreal project is a big pile of code and assets; version control lets you revert cleanly the moment an experiment goes sideways. Commit at every working milestone.

3

Activate both plugins, then restart Unreal

Open Plugins and enable the two MCP plugins - the native one and VibeUE. They are not on by default. Confirm VibeUE shows installed and active, then restart the editor so they load.

4

Turn on Auto Start Server

Go to Editor Preferences → Model Context Protocol and enable Auto Start Server. Now every time Unreal launches, the MCP server starts listening on http://127.0.0.1:8000/mcp and your agent can connect. (You can start it on demand instead with the console command ModelContextProtocol.StartServer, but auto-start is far less fiddly.)

5

Generate the client config (.mcp.json)

From the editor console, write the agent config to your project root. For Claude Code that is ModelContextProtocol.GenerateClientConfig ClaudeCode. The official docs support the same for Cursor, VS Code, Gemini, Codex, or All at once if you run multiple agents. Then restart both Unreal and Claude, open a fresh session, and ask it to check the MCP connection.

Claude Code cloning and building the VibeUE C++ plugin into the Unreal project's Plugins folder for UE 5.8
Step 1: Claude clones VibeUE into Plugins/, confirms it targets EngineVersion 5.8.0, and builds the C++ module.
Editor Preferences in Unreal Engine showing the Model Context Protocol panel with Auto Start Server enabled on port 8000
Step 4: Editor Preferences > Model Context Protocol > Auto Start Server. The server binds to 127.0.0.1:8000/mcp.
The official Unreal MCP docs showing ModelContextProtocol.GenerateClientConfig for ClaudeCode, Cursor, VSCode, Gemini, Codex, or All
Step 5: one console command writes the .mcp.json for your agent. ClaudeCode, Cursor, VSCode, Gemini, Codex - or All.
# In the Unreal editor console (open with the backtick key):
ModelContextProtocol.GenerateClientConfig ClaudeCode   # writes .mcp.json to project root
# or wire every supported agent at once:
ModelContextProtocol.GenerateClientConfig All

# Start the MCP server on demand (if Auto Start is off):
ModelContextProtocol.StartServer        # default port 8000
ModelContextProtocol.StartServer 8000

# In Claude Code, the simplest check after restarting both:
#   "check the MCP connection"
Download my CLAUDE.md and AGENTS.md (the time-savers)

Drop one of these into your Unreal project root and the agent follows a known-good playbook for this exact stack: the native-MCP-first priority, the VibeUE skill library, the install order, and the hard-won UE 5.8 gotchas - so you don’t rediscover them. Use CLAUDE.md for Claude Code or AGENTS.md for Codex / Cursor / other agents.

5. The real test: build a Japanese river town with PCG

Rather than cherry-pick a useless demo, the goal here is something you can actually control. The plan: generate a town’s worth of modular assets, drop them in, and let the agent assemble a procedural city you can keep editing. First, the assets - about 60 of them (roads, bridges, plants, houses, river props), all generated in Tripo from concept images and kept optimized (roughly 25k polys each).

Concept art references for a Japanese river town - top-down aerial views used to plan the modular assets
Start with concept refs for the town, then generate the modular pieces. The agent assembles them - it does not invent the art.
Why Tripo HD mode for batch asset gen
Stefan generated the set in Tripo using HD model so he could set a poly budget (you can go as low as 5k) and bake the texture in one pass - more accurate in shape than smart-mesh for a varied set like this. One caveat: a big piece like a pagoda won’t fit a 20k limit. Tripo currently tops the top3d.ai leaderboard in texture, geometry, and low-poly - which is why it’s the workhorse here.
Tripo generating a wooden Japanese dock asset in HD mode, exported as a GLB for import into Unreal
Each modular piece comes out of Tripo as a GLB - which is exactly why you need VibeUE: the native MCP won't import GLB.

Now the build, one prompt at a time, committing after each:

1

Blank landscape, then a green grass material

Start trivially - create a blank landscape, give it a grass material. No issues; placing simple objects and materials is the native MCP’s comfort zone.

2

A river you can move - on a spline

Ask it to bring in Unreal’s Water plugin and lay a river as a controllable curve. It runs a little off the landscape at first, but because it’s a spline, you just drag it into place. That control is the whole point of PCG.

3

A cobblestone road - texture generated on the fly

Add a road, also on a spline. No cobblestone texture handy? The agent reaches out to fal.ai (Patina), generates the texture, and builds the material from it - you just hand it an API key. First pass came back stretched (that weak spatial vision again); one follow-up prompt fixed the UVs.

Claude capturing a viewport screenshot of the PCG road and diagnosing a stretched-UV cobblestone texture
The self-review loop: the agent screenshots its own work, spots the stretched texture, and fixes it. Annotated screenshots are a native MCP strength.
4

Houses along the roads - from GLB

Prompt: put the buildings near the roads. The houses came in as GLB - imported with no fuss thanks to VibeUE (the native MCP alone would have asked you to drop them in yourself). Because it’s spline + PCG, nudging the road re-flows the houses automatically.

5

Keep houses off the water, then add procedural bridges

A screenshot plus “don’t place houses where the river runs’ and it clears the banks in one prompt. For crossings, generate a short bridge tile so PCG can repeat it - now every place a road crosses the river gets a bridge, and extending the spline spawns more.

6

Crossroads, so the city can actually branch

Add a second spline and crossroad logic so streets can intersect without houses landing in the middle of a junction. This one needed an explicit nudge to get right - but once it works, the town can grow as complex as you like.

A PCG road spline through a green landscape with modular Japanese houses populated along it, next to a river
Spline-driven and fully procedural: move the road or river and the houses, bridges, and props recalculate to match.

6. Grass, trees, and golden-hour lighting

With the layout working, the finishing passes are all PCG too: lay grass, then scatter trees - and because everything is procedural, adjusting a road later re-flows the foliage with it. The agent can also pull in outside tools when it needs them: it reached fal.ai for that road material, and in testing it even fired up Blender to model grass blades, export them as GLB, and import them back into Unreal.

Then the part the native demo never mentioned: lighting. Ask for a golden-hour pass and it sets the sun, the shadows, and the sky fill. The first attempt came out a touch dark; one “brighten it” prompt later, the reflections and warm low sun pulled the whole scene together.

A top-down view of the finished procedural Japanese town - road network, houses, cherry blossoms, river, and a central pagoda
The whole town from above - roads, houses, foliage, and river all driven by PCG splines you can keep editing.

7. The honest verdict

When it shines, and when it doesn't
  • It builds controllable, procedural worlds beautifully - splines for the river and streets, PCG for houses, bridges, and foliage, all re-flowing when you edit.
  • It will not replicate a concept image. Spatial vision is the ceiling - you drive the composition, it executes the build.
  • The Blueprint/PCG graphs are spaghetti. The logic works; the node layout is a mess you may need to tidy by hand. (Per State of Unreal, UE6 may lean away from Blueprints toward code anyway - which agents handle well.)
  • Budget the time and the vision tool. The full build is ~2 hours, roughly 5-10 minutes per prompt. Codex/ChatGPT vision beats Claude on screenshot-driven fixes if that’s your bottleneck.
A character running through the finished Japanese town streets in Unreal Engine, past stilted houses and cherry blossoms
Not a cherry-picked render - a real, walkable town you built and can keep shaping. That's the maximum this setup can offer right now.

Is this the “few prompts, whole city” fantasy from the keynote? No - and anyone who tells you it is, is selling. But it is the real, practical version: with native MCP + VibeUE + Claude, you get a procedural world you genuinely control, and that is far more useful than a staged demo you can never reproduce.

What you actually get

A native + VibeUE MCP bridge
UE 5.8’s built-in MCP for native work, VibeUE for Python, GLB import, and deep graph/material control - both on one agent.
A controllable PCG world
Rivers, roads, houses, bridges, and foliage on splines - edit one and the rest recalculates.
A self-reviewing agent
Annotated screenshots so it sees its own work, diagnoses a stretched texture, and fixes it.
Drop-in setup files
CLAUDE.md and AGENTS.md that encode the install order, the native-first priority, and the UE 5.8 gotchas.

That is the whole pipeline: install UE 5.8 with VibeUE, wire Claude (or Codex) over MCP, generate your modular assets, and let the agent assemble a procedural world while you steer. New AI-3D tools that feed this kind of workflow land constantly - when they do, they go straight into the Arena so you can compare them before you commit. For the previous chapter of this story, see Claude Code + Unreal Engine 5 and the no-code Aura workflow.

Want to compare these tools yourself?

Unreal Engine 5.8 Native MCP + Claude: The Setup That Actually Works | Top 3D AI