Getting Started
MifBridge lets an AI agent, an MCP client, or any HTTP client work inside Unreal Engine and Blender through typed calls, and it reads the editor back before it reports success. This page takes you from nothing to a first verified call.
The three pieces
| Piece | What it is | Do you need it? |
|---|---|---|
| MifBridge plugin | An editor-only C++ plugin for Unreal. It serves a local HTTP API from inside the running editor on 127.0.0.1:8791. |
Yes. Everything else builds on it. |
| MifBlender add-on | The Blender backend: typed operations on a local socket, 127.0.0.1:8792. |
Only if you work in Blender. |
| MCP server | A small Python process that exposes both backends as tools to an MCP client such as Claude Code. | Only if you drive MifBridge from an MCP client. Plain HTTP works without it. |
Each piece is useful without the next one, so you can install them in order and stop wherever you like.
Five minutes to a first call
Install the plugin into your project and build the Editor target. See Installation.
Open the editor. The bridge starts by itself, and the MifBridge panel opens a moment later.
Make one call. With the editor open:
curl -s -X POST http://127.0.0.1:8791/api/self_audit \ -H "X-Mif-Token: dev" -H "Content-Type: application/json" \ -d '{"summaryOnly": true}'The answer names the engine (
engineVersion), how many endpoints are live (endpointCount), and the safety state:writeMode,safetyGateActive, and from 1.2changeCap, the most things one call may change before it shows you a list instead.Optional: connect an MCP client. See MCP Server.
Check everything at once: run
python Content/Python/MifBridge/verify_install.pyfrom the plugin folder (tools/verify_install.pyin a copy from GitHub). It tells a wrong token apart from a stopped bridge and from another program on the port.
dev is the default token. Change it before you use MifBridge on anything real. See Configuration.
How to read a response
Every call answers with JSON, and the first field to read is ok.
ok: falsecomes with anerrorthat says what was wrong and how to proceed. For a parameter the endpoint does not accept, the error lists the parameters it does accept and names the likely correction.- An unknown parameter is refused, never silently ignored. A misspelled key tells you so instead of quietly doing nothing.
- A write reports what the editor holds afterwards, read back from the asset, not your request echoed. For example, ask
set_texture_settingsfor the compression settingUserInterface2Dand it reportsTC_EditorIcon: the same setting under the engine's own name, as the asset actually stores it.
That last point is the whole idea. A command is a claim, and the read-back is the evidence.
Where next
- Installation: the plugin, the Blender add-on and the MCP server, step by step.
- Safety and Write Modes: what the bridge will and will not do by default.
- MifBridge: calling conventions, discovering endpoints, and the in-editor panel.
- API reference: every endpoint and operation, searchable.