UnrealEngine Bridge
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ue_duplicate_actorB | Duplicate an actor with an optional position offset. |
| ue_execute_pythonA | Execute Python code inside the UE5 editor. The code has access to the 'unreal' module and all editor APIs. Use print() to return output. This is the most powerful tool - use it when no specific tool exists for your operation. |
| ue_get_world_infoA | Get detailed world information: streaming levels, world settings, game mode. |
| ue_create_clonerB | Create a ClonerEffector actor that instances a mesh in a layout pattern. Requires the ClonerEffector plugin to be enabled. |
| ue_viewport_perceptA | Capture the UE5 editor viewport -- returns the rendered frame as an image plus camera, selection, and scene metadata. Gives the AI situated visual awareness. |
| ue_viewport_watchB | Start or stop continuous viewport awareness at the specified rate. When active, the perception system captures frames continuously. |
| ue_viewport_configB | Configure the viewport perception system (resolution, format, capture rate). |
| ue_viewport_diffA | Capture two viewport snapshots with a delay and return a structural diff showing what changed (actors, camera, selection). Useful for verifying that scene modifications took effect. |
| ue_get_actor_hierarchyB | Get the parent-child attachment tree for an actor. Shows all attached children recursively (max depth 10). |
| ue_ground_traceA | Line-trace straight down at world (x, y) to find the ground/surface. Returns the hit point, surface normal, distance, and which actor was hit. Use before placing props so you know where the floor is. |
| ue_snap_to_groundA | Drop an actor (by label) onto the surface directly beneath it so its bounding-box bottom rests on the ground. Optionally tilt it to match the surface slope, and apply a vertical offset. One fast transaction. |
| ue_spatial_queryA | Reason about actor positions and volumes. Modes: 'nearest' (N closest actors to a point), 'overlap' (do two actors' bounding boxes intersect, + penetration depth), 'combined_bounds' (union AABB of a filtered set — its footprint), 'box_contents' (which actors sit inside an axis-aligned box). Filter the candidate set with class_filter / tag_filter. |
| ue_setup_sky_atmosphereA | Build or update the sky/atmosphere rig in one call: find-or-spawn the DirectionalLight (sun), SkyAtmosphere, SkyLight, fog, and clouds, then recapture the sky. sun_elevation is degrees above the horizon, sun_azimuth is the compass heading. Idempotent — reuses existing rig actors. |
| ue_set_time_of_dayA | Set the time of day (hour 0-24) — drives sun elevation, compass azimuth, colour temperature (warm near the horizon, neutral high, cool moonlight at night), and intensity. Builds/reuses the sky rig and recaptures. |
| ue_list_mood_presetsA | List the built-in cinematic mood/look-dev presets and their descriptions. |
| ue_apply_mood_presetA | Apply a named cinematic mood as a coordinated package — sun angle/colour, fog, clouds, and a full post-process colour grade. Call ue_list_mood_presets for available names (e.g. golden_hour, noir, overcast, midday_clear). |
| ue_blend_mood_presetsA | Blend two mood presets and apply the result. t=0 is preset_a, t=1 is preset_b; numeric/colour values interpolate, toggles snap at t>=0.5. Great for dialing a look between two references. |
| ue_console_commandB | Execute a UE console command and capture output. Blocked commands: exit, quit, crash, gpf, open, servertravel, killall. |
| ue_x3d_exportA | Serialize the current level to X3D text (the x3d_bridge thin-slice grammar). Reads each actor's quaternion transform, static mesh, material, and attach parent; converts UE (Z-up, cm) to X3D (Y-up, m). mesh_only=True (default) exports only actors with a static mesh. Returns {actor_count, x3d}. |
| ue_x3d_validateA | Validate an X3D document against the closed thin-slice grammar without touching the editor: rejects out-of-grammar nodes, dangling USE references, wrong numeric arity, non-X3D roots, and NaN/inf. Returns {ok, errors}. Run this on model-edited X3D before apply. |
| ue_x3d_applyA | Apply an X3D document's actor transforms back to the live level. Validates the document, then for each Transform (addressed by its DEF = the actor's object path) sets location/rotation/scale in the editor. Actors must already exist. Returns {applied} or an error. v0.4.0 applies transforms only. |
| ue_x3d_previewA | Render an X3D document to a standalone HTML page that views it in a browser via the X_ITE runtime (no editor needed). Returns {chars, html}. The page references X_ITE from a CDN, so viewing it needs network access; the X3D payload is embedded inline. |
| ue_statusA | Check if the UE5 editor is running and the Remote Control API is reachable. |
| ue_health_checkA | Get bridge health: version, uptime, circuit breaker state, request metrics (counts, latencies, error rates). Use this to diagnose connection issues. Pass deep=true to also run the capability preflight (can the bridge actually execute, not just connect). |
| ue_preflightA | Capability preflight: probe whether the bridge can ACTUALLY execute against the editor, not merely connect. Runs a ladder -- reachable, remote function calls permitted, a value round-trips, full Python round-trip -- stops at the first failure, and returns the named cause plus the one-line fix (with the raw Remote Control error body as evidence). Use this whenever tools error but ue_status says connected -- e.g. UE 5.8's bAllowAnyRemoteFunctionCall block. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JosephOIbrahim/UnrealEngine_Bridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server