# Unreal from Codex: Unreal MCP setup, a session contract and a tested asset pipeline for coding agents

> Connect Codex, Claude Code, Grok Bot or Hermes to the Unreal MCP server in Unreal Engine 5.8 and keep every session in bounds: a session file with a checkpoint commit and a leave-out list, five risk tiers, owner approvals tied to file hashes, an action log with a verify result for every call, and recovery steps for editor restarts, stale tool lists, compiles and timeouts. Adds a generator to Blender to Unreal asset path with a headless Blender prep script, an import script that refuses changed files, a connection probe and a fifteen-check read-only checker.

- URL: https://paperchasewebb.ai/bots/marketplace/items/unreal-from-codex-mcp-session-contract-and-asset-pipeline/
- Type: Bot template
- Category: Games
- By: PaperChaseWebb
- Works with: Claude Code, Codex, Grok Bot, Hermes (named in the listing); Plain .md and five Python 3 scripts; Blender step tested headless on 5.2.3, Unreal Editor steps not run in Unreal
- Price: $24 USD
- Difficulty: Intermediate
- Setup time: 1 hr
- Time to result: Connected, probed and through a first read-only session in about an hour
- Format: Markdown (.md) file, unreal-from-codex-mcp-session-contract-and-asset-pipeline.md
- Version: 1.0, updated 2026-10-28
- License: Use on your own projects and on installs you do for clients and teams. Do not resell or republish the pack itself.

## What you end up with

Your agent works in a sandbox folder from a written objective, every write is checked and logged, nothing destructive or bulk runs without your yes, and every imported prop has a license, a triangle count and an approval for that exact file.

## What you get

- 21 sections in one .md file
- Unreal MCP setup: plugins, starting the server, client configs and the write-once Codex entry
- Connection notes for Codex, Claude Code, Grok Bot and Hermes, keeping the server on your own machine
- mcp_probe.py: checks the server answers and lists its tools without calling any
- SESSION.md: objective, leave-out list, checkpoint commit, engine version and triangle budget
- Five risk tiers and an approvals ledger tied to file hashes, with a separate release yes
- An action log format with a verify result for every call, and recovery steps for restarts, stale tools, compiles and timeouts
- blender_prep.py: headless cleanup with joined parts, applied transforms, bottom-center origin, a triangle cap and a prep report
- ue_import.py: imports only approved, unchanged files into /Game/_Agent, never replaces, with a dry run
- ue_check.py: fifteen read-only checks, with a fixture builder and the expected output
- A rules block for any harness, ten prompts and a failure table
- A look at five Unreal MCP tools and plugins, with sources

## Who it is for

Unreal 5.8 developers and technical artists who want a coding agent doing editor work and asset imports, and want to know exactly what it changed, with their yes before anything destructive or anything that leaves the machine.

## Tools needed

- Codex, Claude Code, Grok Bot or Hermes: makes editor calls through Unreal MCP inside the session file's limits, logs each call with a verify result, and asks before tier 3 and 4 calls
- Unreal Engine 5.8 with the Model Context Protocol and All Toolsets plugins: runs the MCP server inside the editor, on your machine only
- Blender 4.2 or newer: cleans generated or hand-made models headless before import; tested on 5.2.3 LTS
- Python 3: runs the probe, the read-only checker and the import dry run; standard library only
- You need: A coding agent (Codex, Claude Code, Grok Bot or Hermes)
- You need: Unreal Engine 5.8
- You need: Blender 4.2 or newer for the asset path
- You need: Python 3.8 or newer
- You need: Git or Perforce on the project

Cost to run: The pack is the only purchase. Unreal Engine, Blender and Python are free to start; model usage and generators such as Tripo or Meshy are billed by those vendors.

## How it works

1. **Test the check.** Save the scripts from the file, run make_fixture.py and run ue_check.py on the three fixture folders. Expected: 15 findings on seeded, 0 on fixed, 1 on broken-uproject; exit 2 on a missing folder.
2. **Turn on the server.** Commit the project, enable Model Context Protocol and All Toolsets, start the server and generate the client config for your agent. Expected: python3 mcp_probe.py prints the server name and its tools, exit 0.
3. **Write the session.** Copy the Agent and Pipeline folders, create /Game/_Agent, and fill SESSION.md with the engine, the checkpoint commit, the objective and the leave-out list. Expected: ue_check.py shows no U02 to U05 findings.
4. **Run a read-only session, then one small edit.** Add the rules block, use prompt 2 to map the level with tier 0 calls, then prompt 4 for one tier 1 edit you can see. Expected: Every call has a row in actions.csv with a verify result, and the edit reads back as asked.
5. **Bring in one prop.** Run blender_prep.py on a model in Pipeline/raw, approve the FBX by its hash, run ue_import.py with --dry-run, then for real in the editor. Expected: The asset is in /Game/_Agent/Imports, its bounds match size_cm, and ue_check.py prints 0 findings.

## Sample prompt: Map the level, read only (Codex, Claude Code, Grok Bot, Hermes)

```
Read Agent/SESSION.md. Using tier 0 calls only, list the actors in the level named in the objective, grouped by class, with their locations.
Log each call in Agent/actions.csv with what you saw.
```

Prompt 2 of 10. Runs after the rules block in section 15.

## Sample prompt: Plan a bulk change (Codex, Claude Code, Grok Bot, Hermes)

```
I want to rename every texture in {folder} to the T_ prefix. Do not do it yet.
List the old and new names, the number of assets, the referencers you found and how to undo, then ask me.
```

Prompt 5 of 10. A rename is tier 3, so it waits for your words.

## Free preview of unreal-from-codex-mcp-session-contract-and-asset-pipeline.md

````markdown
# Unreal from Codex: Unreal MCP setup, a session contract and a tested asset pipeline for coding agents

Version 1.0, 2026-10-28. By PaperChaseWebb. Works with Codex, Claude Code, Grok Bot and Hermes. Plain Markdown, five Python 3 scripts and a fixture builder, tested as described in section 14. The Blender step was run headless on Blender 5.2.3 LTS. The checker, the probe, the import dry run and the free sample checker were run on Linux against a seeded fixture and a mock MCP server. The Unreal Editor steps were not run in Unreal for this release, and each one is marked where it appears.

Unreal Engine 5.8 puts a lot of power one sentence away from your agent. Its Unreal MCP plugin lets a coding agent list actors, change materials, spawn things, run editor Python and, with the wrong prompt, delete folders. This pack is how to connect Codex (or Claude Code, Grok Bot or Hermes) to that server and keep the session boring: a written objective, a commit before the agent touches anything, a log of every tool call with a verify result, and your yes before anything destructive, bulk, or anything that leaves your machine.

The second half is the asset path most people try next: a model from Tripo, Meshy or your own Blender file goes through a headless Blender cleanup, gets a license row and a hash, waits for your approval, and only then is imported into a sandbox folder in your project. A read-only checker, ue_check.py, reads the project and tells you in fifteen checks where the sess
````

## Worth knowing

- The Unreal MCP plugin is labeled experimental by Epic in Unreal Engine 5.8, and tool names can change between builds. List and describe the tools at the start of every session.
- The Unreal Editor steps were not run in Unreal for this release. They follow Epic's 5.8 documentation and a public Codex setup tested on 5.8.3 under Windows. Start with a read-only session.
- Keep the MCP server on 127.0.0.1. Do not open its port to your network or the internet to reach a remote agent.
- Read your generator's current terms before using its models commercially, and write them in the license column.
- On 2026-10-28, ue_check.py reported the fifteen expected findings on the seeded fixture, 0 on the fixed one and 1 on the broken project file, with file hashes unchanged and exit 2 on a missing folder; blender_prep.py ran headless on Blender 5.2.3, refused over the cap, decimated to 4,850 triangles when asked and refused to overwrite; the import dry run planned one import and refused a changed file; the probe passed against a mock MCP server. Run the tests on your own machine first.

## Questions

**Do I need Codex?** No. The setup covers Codex, Claude Code, Grok Bot and Hermes, and the rules block is the same text for all of them. Codex is in the name because that is where the Unreal skills work people are sharing started.

**Can Grok Bot drive my editor?** Grok Bot's computer cannot reach the MCP server on your PC by itself, and it should not. Register your PC so Grok Bot can run the probe, checker and pipeline scripts there with your approval, or use Grok Bot as planner and reviewer while Codex or Claude Code makes the editor calls.

**Why tie approvals to a hash?** So your yes covers the file you looked at. If a model is re-exported after you approve it, the hash changes, the import script refuses it and the checker flags it.

**How is this different from Engine Agent Kits?** Engine Agent Kits sets Godot, Unity and Unreal up for an agent in general: rules files, build loops and editor scripting. This pack is the Unreal MCP layer on top: the server, the session limits, the approvals and the import gate.

## How to buy

$24 one time at https://paperchasewebb.ai/bots/marketplace/items/unreal-from-codex-mcp-session-contract-and-asset-pipeline/. Stripe checkout, then an instant download page; the download link is also in your emailed receipt.

Seller: PaperChaseWebb Inc., mgmt@paperchasewebb.com
