I’ve been building a workflow that lets an AI client drive the Unreal editor directly: a declarative statement goes in, real assets come out inside the editor — blueprints, materials, animation blueprints, Niagara, and so on. The editor-side work is actual editor work, not a simulation: nodes get wired, assets get created, the result compiles and saves. Earlier topics here were mostly blueprint graphs; this one stays on a material.
Workflow
The client sends a statement to ForgeMindServer over MCP; the server translates it and talks to the running editor through a local bridge; a Companion plugin performs the editor-side operations. From the editor’s point of view nothing exotic happens — the same asset creation and node wiring you would do by hand, just issued as one call. In the recording the small dark window on the left is the instruction stream, one line per tool call with a status dot on the right; the editor on the other side of the frame is responding in the same session, not a separate take stitched in afterwards.
What the demo shows
The demo stays on one material graph and builds it in the order you would build it by hand: create the material, add a Time node, add a Sine node, wire Time into Sine, wire the sine into Emissive, compile, then read the graph back so the editor itself reports what it now holds. The window stays open after the last line, so the compiled state can be read on screen instead of caught mid-frame.
Material work also has its own friction, and it is not the wiring — it is the stage rules. Data that only exists in the vertex stage cannot be dropped straight into a pixel-stage input, and some pins are rejected at compile time rather than at connect time. Those are the moments where a declarative approach has to actually know the engine’s rules instead of guessing at them.
The frames are a real execution screen and can back the claim that the instruction → tool → editor chain actually runs. They are not a verification result: no pass rate, no case count, and a recording does not change the status of any case behind it.
Measured difference
For the blueprint case I keep coming back to — a For Each with Break loop — 20 node builds by hand versus 11 DSL lines, roughly 75% fewer operations. A single call on one blueprint replaces 50+ node-by-node operations. Version coverage is UE 5.0–5.8. Current coverage spans 24 content-production domains through 16 MCP tools. Both an OpenSource (Apache-2.0) build and a Commercial build exist; the open build is not the whole product, so please read the licence before assuming otherwise.
Looking for scenarios
I’d rather test against real production pain than my own demo cases. If you have material work that is pure repetition — a family of instances that differ only in a few scalars, the same sampling chain repeated across a dozen graphs, a stack of vertex-animation setups — describe it in this thread: the scenario, roughly how many nodes or assets, and how long it takes you today. I’ll run what fits the current coverage and report back honestly, including the cases it cannot do yet.