Quickstart
Once your agent is connected, you do not run anything by hand. You describe what you want in plain language, and the assistant does it in the editor.
1. Make sure your agent is connected
The most common snag is the agent not reaching the server. Check, in order:
- The Unreal Editor is open with the plugin enabled. The PinWright Setup window shows a green Server listening line.
- You connected the agent (clicked Install in that window, or set up the config). See Install.
- You restarted or reloaded the agent after connecting it. Most agents only read their MCP config at startup.
Launched the agent before the editor? Some agents (Claude among them) only check the
connection at startup, so they will not pick up the server if Unreal was not running yet. Once the
editor is up, run
/mcp in the agent and connect to pinwright. More
in Troubleshooting.
2. Ask for something
Just talk to your assistant. It works out which operations to run, reads the current state as text, and writes the change back. Here it edits a Blueprint graph through the text IR (simplified):
You: In BP_Door, add an OnInteract event that plays Open and disables collision.
call("blueprint.decompile_bpir", {path:"/Game/BP_Door"})
→ {bpir:"event BeginPlay() { ... }"}
call("blueprint.compile_bpir", {path:"/Game/BP_Door",
bpir:"event OnInteract() { PlayAnim('Open'); SetCollision(false) }"})
→ {ok:true, compiled:true}
Done. OnInteract added: plays Open, disables collision.
And here it edits a widget by reading its tree as XML first:
You: In the pause menu, rename Resume to Continue and make it green.
call("widget.export_xml", {path:"/Game/WBP_PauseMenu"})
→ "<Button name='Resume'> ... </Button>"
call("widget.rename", {path:"/Game/WBP_PauseMenu", from:"Resume", to:"Continue"})
→ {ok:true}
call("widget.set_style", {path:"/Game/WBP_PauseMenu", target:"Continue", color:"#3fb950"})
→ {ok:true}
Done. Renamed to Continue and recolored green.
Other things you might ask:
- “Create a BP_HealthComponent with a Health variable and a TakeDamage event.”
- “Dump everything under /Game/UI so you can see the current widgets.”
- “What references BP_EnemyBase before I refactor it?”
3. Review and keep it
The assistant makes real changes in your editor. Look at what it did, keep what works, and roll back the rest with your version control. You stay in control.