
Blueprint setup is tedious for everyone. Loom handles the wiring.
Unreal Engine Blueprints are powerful but the setup is repetitive. Every node, every connection, every property has to be wired by hand. Loom lets you describe what you want in plain English and handles the rest. It helps experienced devs skip the tedium and helps newer team members learn why things connect the way they do. The whole Hiraeth team uses it daily.
Blueprint Node Graph
What designers see when they open UE5
With Loom
user prompt
“Create a health pickup that heals 25 HP on overlap”
result
HealthPickup_BP compiled
OnOverlap → ApplyDamage(−25)
2 nodes · 1 event · validated
What a designer types into an AI assistant
the bottleneck
The setup tax
Every gameplay idea funneled through one person. Designers and artists opened the node graph and closed it. AI assistants could write code but had no way to touch UE5 Blueprints.
the result
Six people creating Blueprints independently
Designers, artists, and writers describe behavior in plain English. Loom handles the translation. The programmer ships features instead of answering questions.
layer 1
MCP Server
43 tools exposed via FastMCP. Any MCP-compatible AI calls them with plain-language parameters.
layer 2
BlueprintIR
Turns raw Blueprint binary graphs into typed, machine-readable structure AI can reason about.
layer 3
C++ Plugin
40 Blueprint commands compiled into UE5. Validates every operation before execution to prevent graph corruption.
the core abstraction
BlueprintIR
A structured intermediate representation of Blueprint graphs that AI can reason about. Other MCP tools for UE5 pass raw node data to AI. The AI can move things around without understanding what the graph does. BlueprintIR gives AI the context to understand control flow, catch mistakes, and reason about behavior.
What AI normally sees
{
"nodes": [
{
"id": "K2Node_Event_42",
"pos_x": -208,
"pos_y": 16,
"pins": [
"ED43A1...", "B7F902..."
]
},
{
"id": "K2Node_CallFunc_87",
"pos_x": 304,
"pos_y": 16,
"pins": [
"A9C3D4...", "E1F5B8..."
]
}
],
"connections": [
["ED43A1...", "A9C3D4..."]
]
}Node IDs, pixel positions, opaque pin arrays
What AI sees with Loom
{
"graph": "BP_HealthPickup",
"exec_chain": [
{
"node": "EventBeginOverlap",
"type": "event",
"fires_on": "actor_overlap",
"then": "ApplyHealing"
},
{
"node": "ApplyHealing",
"type": "function_call",
"target": "OverlappingActor",
"function": "AddHealth",
"args": { "amount": 25 }
}
],
"data_flow": [
"BeginOverlap.OtherActor → ApplyHealing.Target"
]
}Typed nodes, execution order, connection semantics
43 tools · one for every operation
“Describe what you want. Get a working Blueprint.”
The entire Hiraeth team uses Loom as their primary Blueprint workflow
MCP Tool Registration
Each of the 43 tools follows this pattern. FastMCP exposes the function to any MCP-compatible AI assistant, and the TCP bridge forwards the command to the C++ plugin inside UE5. The AI calls tools against BlueprintIR data, so it is working with meaning rather than coordinates.
One of 43 MCP tools. The AI calls this with parameters from the conversation; the TCP bridge forwards the command to the C++ plugin running inside UE5. The result comes back through BlueprintIR, so the AI gets structured confirmation of what changed.
daily use
What the team actually does with it
Designer
A designer describes a health pickup that heals 25 HP on overlap. Loom generates the Blueprint, validates it, and compiles it in the editor.
Sound Designer
A sound designer wants footstep audio to change based on surface type. Loom wires the material check, switch statement, and audio components.
New Team Member
A new team member asks Loom to explain an existing Blueprint. BlueprintIR traces the execution chain and describes what each node does and why it connects the way it does.
Writer
A writer needs a dialogue trigger that fires when the player enters a volume. Loom sets up the overlap event, dialogue widget, and input binding to advance lines.