Skip to main content
Lead Developer · 2026 - Present

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.

PythonFastMCPC++Unreal Engine 5TCP BridgeBlueprintIR
before

Blueprint Node Graph

Event BeginOverlap
Branch
Cast To AChar
Is Valid?
Set Health
Compile
Print String

What designers see when they open UE5

after

With Loom

user prompt

“Create a health pickup that heals 25 HP on overlap”

→ Blueprint generated

result

HealthPickup_BP compiled
OnOverlapApplyDamage(−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.

raw blueprint data

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

blueprintir

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

create_blueprintadd_componentset_propertywire_pinscompile_blueprintget_blueprint_irlist_blueprintsdelete_nodeadd_variableset_variable_typeadd_functioncall_functionadd_eventbranch_nodefor_loop_nodewhile_loop_nodecast_nodeprint_stringget_actor_refspawn_actordestroy_actorget_componentadd_overlap_eventadd_hit_eventset_collisionplay_soundplay_animationset_timerclear_timerget_player_pawnget_game_modesave_blueprintopen_blueprintvalidate_graphanalyze_exec_chaindetect_antipatternsget_node_infoset_node_positionadd_commentreconnect_pinget_pin_typesremove_componentrename_variable

“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.

pythonloom/server/tools.py

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.