UnrealEngine Bridge
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| 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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- 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