Unreal Engine 5 · AI Blueprint Generator · v3.0.0 · C++ Node Placement

AI Blueprints,
Fully Wired,
Inside Unreal Engine

Describe game logic in plain English. The C++ plugin places nodes, wires pins, and compiles automatically — a docked chat tab inside Unreal Engine. No browser tab, no Output Log reading, no manual wiring.

⬇ Download Plugin v3.0.0 ⭐ GitHub Source
C++
Node Placement
🔗
Auto Pin Wiring
UE5
Compatible
Docked
Chat Tab in UE

How It Works

Everything happens inside Unreal Engine. You type a prompt in the docked chat tab — the AI generates a full node graph JSON, the C++ plugin places every node and wires every pin. Blueprint is compiled automatically.

💬
Docked Chat Tab
SWebBrowser inside UE
🐍
Python HTTP Server
port 8080 · OpenRouter
🧠
OpenRouter AI
Claude / Gemini / GPT-4o
⚙️
C++ TCP Server
port 55557 · UK2Node_*
📋
Blueprint
Nodes placed · Pins wired
⚙️ Why C++?   Unreal Engine's Python API has no bindings for UK2Node_* (the node classes that populate Blueprint graphs). The only way to programmatically place nodes and wire pins is to call FBlueprintEditorUtils, FKismetEditorUtilities, and Schema→TryCreateConnection from compiled C++ — exactly what v3 does.

What the Plugin Does

A compiled C++ + Python Unreal Editor plugin. You type a prompt; the AI generates a complete Blueprint graph JSON; the C++ module places every node, wires every pin, and compiles.

💬

Docked Chat Tab (inside UE)

The chat panel is an SWebBrowser widget registered as a dockable tab with FGlobalTabmanager. Opens automatically on startup. Re-open via the 🤖 MCP AI toolbar button. No browser window needed.

SWebBrowserFGlobalTabmanagerDocked · Nomad tab
🔗

Full Node Placement & Wiring

The C++ TCP server (port 55557) handles all graph operations: UK2Node_Event, UK2Node_CallFunction (Print, Delay), UK2Node_IfThenElse (Branch), UK2Node_VariableGet/Set, UK2Node_ExecutionSequence. Pins are wired via Schema→TryCreateConnection.

UK2Node_EventUK2Node_CallFunctionTryCreateConnection
📋

Blueprint Creation

Creates UBlueprint assets under /Game/MCP/ with any parent class. Initial compile runs immediately so variables and nodes can be added without errors.

UBlueprintFactoryIAssetTools/Game/MCP/
📦

Variable Management

Adds typed member variables (bool, int, float, string, name, text, vector, rotator, transform) via FBlueprintEditorUtils::AddMemberVariable with FEdGraphPinType construction. Default values set on the CDO.

FBlueprintEditorUtilsFEdGraphPinTypeCDO defaults

Auto Compile

Every compile_blueprint command calls FBlueprintEditorUtils::ReconstructAllNodes then FKismetEditorUtilities::CompileBlueprint. Asset is saved automatically. Compilation errors are returned in the JSON response.

FKismetEditorUtilitiesReconstructAllNodesError feedback
🔄

Multi-Model Support

Switch between 10 AI models in the chat panel: Claude Sonnet/Opus/Haiku, Gemini 2.5 Pro/Flash, DeepSeek V3/R1, GPT-4o. The updated system prompt instructs each model to output full node+wire JSON.

Claude Sonnet 4.5Gemini 2.5 ProDeepSeek R1

4 Steps. Including Compilation.

v3 requires compiling the C++ plugin once. After that it's drop-in: copy the folder, compile, open UE, type prompts.

✓ Full node placement
✓ Auto pin wiring
✓ Docked UE chat tab
⚙️ Requires Xcode + C++ project
✓ Unreal Engine 5.3+
1

Download and place the plugin folder

1a — Download and extract

Click the button below. Extract the zip. You'll get a folder called MCPBlueprint.

1b — Copy MCPBlueprint into your project's Plugins folder

YourGame/ ├── YourGame.uproject └── Plugins/ └── MCPBlueprint/ ← copy here ├── MCPBlueprint.uplugin ├── BUILD.md ├── Source/ ← C++ source └── Content/Python/ ← Python server

⚠️ Your project must have C++ source. Blueprint-only projects: Tools → New C++ Class inside the editor first.

2

Compile the C++ plugin (required once)

The plugin places UK2Node_* nodes — a C++ API with no Python bindings. Compile it once using Xcode or the UBT command line.

Option A — Xcode (Mac)

cd /path/to/YourGame "/Users/Shared/Epic Games/UE_5.7/Engine/Build/BatchFiles/Mac/GenerateProjectFiles.sh" \ -project="$(pwd)/YourGame.uproject" -game open YourGame.xcworkspace # then press ⌘B

Option B — Command line (Mac/Linux)

"/Users/Shared/Epic Games/UE_5.7/Engine/Build/BatchFiles/Mac/Build.sh" \ UnrealEditor Mac Development \ -Project="/path/to/YourGame/YourGame.uproject" \ -WaitMutex -NoHotReload

Option C — Windows

"C:\Program Files\Epic Games\UE_5.7\Engine\Build\BatchFiles\Build.bat" ^ UnrealEditor Win64 Development ^ -Project="C:\path\to\YourGame\YourGame.uproject"

⚠️ Xcode 16+ / 26+: Edit Apple_SDK.json to raise MaxVersion — see BUILD.md.

✓ Done when you see Plugins/MCPBlueprint/Binaries/ with a .dylib or .dll.

3

Open the project — the chat tab appears automatically

Open your project in Unreal Engine.
Go to Edit → Plugins, search "MCP Blueprint Generator", enable it, click Restart Now.

After restart, the MCP Blueprint AI docked tab opens automatically inside the editor. You'll also see in the Output Log:

[MCPBlueprint] TCP server listening on port 55557 [MCPBlueprint] Server started → http://localhost:8080/chat [MCPBlueprint] UI module ready (docked tab mode).

✓ Plugin is running. The chat panel is docked inside UE — no browser window.

Re-open the tab at any time via the 🤖 MCP AI toolbar button or Window → MCP Blueprint AI.

4

Enter your OpenRouter API key and start prompting

The docked chat tab opens at localhost:8080/chat. Click ⚙️ Settings to enter your key.

Get a free OpenRouter key → openrouter.ai/keys — one key gives access to Claude, Gemini, DeepSeek, and GPT-4o. Keys start with sk-or-v1-.

Type your Blueprint description — the AI now generates full node + wiring JSON:

🤖 Building BP_Enemy: Character with Health variable, BeginPlay print, and Tick-driven Branch. ✅ create_blueprint: Created /Game/MCP/BP_Enemy ✅ compile_blueprint: Compiled /Game/MCP/BP_Enemy ✅ add_variable: Health (float) added ✅ add_node: Event_0 (BeginPlay) ✅ add_node: CallFunction_0 (Print "Enemy spawned!") ✅ connect_nodes: Event_0.then → CallFunction_0.execute ✅ add_node: Event_1 (Tick) ✅ add_node: IfThenElse_0 (Branch) ✅ connect_nodes: Event_1.then → IfThenElse_0.execute ✅ compile_blueprint: Compiled /Game/MCP/BP_Enemy Blueprint /Game/MCP/BP_Enemy is ready — open it to see the wired graph.

✓ Open Content Browser → /Game/MCP/ and double-click BP_Enemy to see the wired, compiled graph.

🔑
Get your OpenRouter API key

Go to openrouter.ai/keys → sign in → click Create Key. One key gives you access to Claude, Gemini, DeepSeek, GPT-4o and 300+ other models. Keys start with sk-or-v1-.

🙋 Stuck?

See BUILD.md for Xcode fixes and compilation details, or open an issue on GitHub. Prefer no compilation? Use v2.0.1 (Python-only).

MCP JSON → Executable Format

Paste raw MCP Blueprint commands on the left. The translator normalises node names, assigns unique IDs, makes all fields explicit, and ensures compile_blueprint always runs last — ready for POST /unreal/execute.

Raw MCP Input MCP JSON
Executable Output
Blueprint Manager JSON
← Paste MCP JSON and click Translate to see the normalised executable format.

Command Schema (v3)

All commands the AI generates. Routed: add_node + connect_nodes → C++ TCP server (port 55557); others → Python executor or C++.

📦

create_blueprint

{ "action": "create_blueprint", "name": "BP_MyActor", "parent_class": "Actor", "path": "/Game/MCP" }
📋

add_variable

{ "action": "add_variable", "blueprint_path": "/Game/MCP/BP_MyActor", "var_name": "Health", "var_type": "float", "default_value": "100.0" }

add_node (C++)

{ "action": "add_node", "blueprint_name": "BP_MyActor", "node_type": "Event", "event_type": "BeginPlay", "pos_x": 0, "pos_y": 0 } // → returns { "node_id": "Event_0" } // node_type values: // Event · Print · Branch // VariableGet · VariableSet // Sequence · Delay · CallFunction
🔗

connect_nodes (C++)

{ "action": "connect_nodes", "blueprint_name": "BP_MyActor", "source_node_id": "Event_0", "source_pin": "then", "target_node_id": "CallFunction_0", "target_pin": "execute" } // pins: then · execute // true · false · condition

compile_blueprint

{ "action": "compile_blueprint", "path": "/Game/MCP/BP_MyActor" } // Calls: // FBlueprintEditorUtils::ReconstructAllNodes // FKismetEditorUtilities::CompileBlueprint // UEditorAssetLibrary::SaveAsset
🔍

get_status

{ "action": "get_status" } // Returns: // { "success": true, // "version": "3.0.0", // "server": "MCPBlueprint C++ TCP server", // "port": "55557" }
🤖

Option A — Claude Desktop Recommended · No compilation

Chat with Claude Desktop → it builds Blueprints inside your open UE project. Works with any OpenRouter key. Model picker included: Claude, Gemini, DeepSeek, GPT-4o.

Also works with Cursor · Windsurf · Cline · any MCP client · OpenRouter key required · UE 5.x

Option B — C++ Plugin Docked panel inside UE · Requires compilation

Full C++ plugin with a docked chat tab inside the Unreal Editor. Places every node and wires every pin. One-time compile required.

Unreal Engine 5.3+ · C++ + Python · MIT License · localhost:8080 · See BUILD.md for compile instructions