UnrealAI Documentation
UnrealAI is the most comprehensive AI copilot plugin for Unreal Engine 5.6. It enables you to generate C++ classes, Blueprints, UMG Widgets, Materials, Textures, 3D Meshes, Audio, Behavior Trees, and Animation Blueprints using natural language prompts — and build entire scenes, spawn interactive objects, create AI characters, set up cinematics, and configure atmosphere, all from chat.
The plugin supports 9 AI providers (Claude, OpenAI, Gemini, Ollama, GLM, Claude Code, Codex, Gemini CLI, OpenClaw), provides 100+ MCP tools for deep editor integration, and works both as a standalone editor panel and as an MCP server that external AI tools can connect to.
Key Features
- 9 Content Generators — C++, Blueprint, Widget, Material, Texture, 3D Mesh, Audio, Behavior Tree, Animation Blueprint
- 9 AI Providers — Claude, OpenAI, Gemini, Ollama (local), GLM, Claude Code, Codex, Gemini CLI, OpenClaw
- 100+ MCP Tools — File management, Blueprint editing, scene building, mesh modeling, cinematics, AI characters, and more
- Scene Powers — Build entire scenes, spawn interactive objects, create AI NPCs, set up cameras and atmosphere
- Mesh Modeling — Create, boolean, simplify, UV, deform meshes using GeometryScript
- Built-in Chat — Streaming responses, tool call visualization, multi-session support, @ mentions
- MCP Server — Connects Claude Code, Claude Desktop, Cursor, Codex, Gemini CLI, and any MCP-compatible tool
- Security — DPAPI-encrypted credential storage, path validation, parameter sanitization
Installation
From Fab Marketplace
- Purchase UnrealAI from the Fab Marketplace
- In the Epic Games Launcher, go to your Library
- Find UnrealAI and click "Install to Engine" or "Add to Project"
- Open your UE5.6 project
- Go to Edit → Plugins, search for "UnrealAI", and enable it
- Restart the editor when prompted
Manual Installation
- Download the plugin ZIP file
- Extract it to your project's
Plugins/folder - Your folder structure should look like:
YourProject/Plugins/UnrealAI/UnrealAI.uplugin - Open your project in Unreal Engine 5.6
- The plugin will be detected and compiled automatically
UnrealAI requires Unreal Engine 5.6 on Windows. macOS and Linux support is planned for a future release.
Quick Start
Get up and running in under 5 minutes:
1. Open the UnrealAI Panel
After enabling the plugin, find the UnrealAI button in the editor toolbar, or go to Window → UnrealAI.
2. Configure a Provider
Click the Settings icon and navigate to the Providers tab. Enter an API key for at least one provider:
- Claude: Get a key from console.anthropic.com
- OpenAI: Get a key from platform.openai.com
- Gemini: Get a key from aistudio.google.com
- Ollama: Install from ollama.com (no key needed, runs locally)
- GLM: Get a key from open.bigmodel.cn
- Claude Code: Install Claude Code CLI (uses your CLI subscription, no API key)
- Codex: Install Codex CLI (uses your ChatGPT subscription, no API key)
- Gemini CLI: Install Gemini CLI (uses your Google account, no API key)
- OpenClaw: Install OpenClaw local gateway from github.com/nicepkg/openclaw
Your API keys are encrypted with Windows DPAPI and stored locally. They never leave your machine except when making API calls to your chosen provider.
3. Start Chatting
Go to the Chat workspace and type a natural language prompt:
"Create a Blueprint for an actor that rotates continuously and bobs up and down using a sine wave"
The AI will use the available tools to create the Blueprint directly in your project.
4. Use Specialized Workspaces
For specific content types, use the dedicated workspaces in the sidebar: Blueprints, Materials, Textures, 3D, Audio, Behavior Trees, Animations, and Widgets. These provide tailored UIs with more options for each generator.
Configuration
The Settings panel has 5 tabs:
General
- Auto-Save Sessions — Automatically save chat sessions to disk
- Default Save Path — Where to save generated files
Providers
Configure API keys and select models for each provider. You can switch providers at any time.
Generation
- Temperature — Controls randomness (0.0 = deterministic, 1.0 = creative). Default: 0.7
- Max Output Tokens — Maximum response length. Default: 4096
Connections
MCP server settings, external tool configuration.
Advanced
Debug options, logging level, retry settings.
AI Providers Overview
UnrealAI supports 9 AI providers. Each provider implements the same interface, so you can switch between them without changing your workflow.
| Provider | API Key Required | Local/Cloud | Tool Calling |
|---|---|---|---|
| Claude (Anthropic) | Yes | Cloud | Yes |
| OpenAI | Yes | Cloud | Yes |
| Gemini (Google) | Yes | Cloud | Yes |
| Ollama | No | Local | Yes |
| GLM (Z.AI) | Yes | Cloud | Yes |
| Claude Code CLI | No (CLI subscription) | Cloud | Yes (external agent) |
| Codex CLI | No (ChatGPT subscription) | Cloud | Yes (external agent) |
| Gemini CLI | No (Google account) | Cloud | Yes (external agent) |
| OpenClaw | Optional token | Local gateway | Yes (external agent) |
Claude (Anthropic)
Anthropic's Claude models are excellent for code generation and complex reasoning tasks.
Setup
- Create an account at console.anthropic.com
- Generate an API key under Settings → API Keys
- In UnrealAI Settings → Providers, paste your key in the Claude field
Available Models
- claude-opus-4-6 — Most capable, best for complex generation tasks
- claude-sonnet-4-6 — Balanced capability and speed
- claude-haiku-4-5 — Fastest, good for simple tasks
OpenAI
GPT models with strong function calling support.
Setup
- Create an account at platform.openai.com
- Generate an API key
- In UnrealAI Settings → Providers, paste your key in the OpenAI field
Available Models
- gpt-4o — Latest multimodal model
- gpt-4-turbo — Fast and capable
- o1-mini — Reasoning-focused model
Gemini (Google)
Google's multimodal AI with strong code generation capabilities.
Setup
- Go to Google AI Studio
- Generate an API key
- In UnrealAI Settings → Providers, paste your key in the Gemini field
Available Models
- gemini-2.0-flash — Fast and efficient
- gemini-1.5-pro — Extended context window
Ollama (Local)
Run AI models completely offline on your own hardware. No API key needed, no data leaves your machine.
Setup
- Install Ollama from ollama.com
- Pull a model:
ollama pull llama3 - Ollama runs a local server at
localhost:11434 - In UnrealAI Settings, select Ollama as your provider — it will auto-detect available models
Recommended Models
- llama3 — Best all-around local model
- codellama — Optimized for code generation
- mistral — Fast and efficient
- Any model available on Ollama works with UnrealAI
Local models require significant GPU VRAM. For best results, use a GPU with 8GB+ VRAM for 7B parameter models, or 16GB+ for larger models.
GLM (Z.AI)
Access 15 GLM models through Z.AI's Anthropic-compatible proxy. Includes vision models and specialized variants.
Setup
- Create an account at open.bigmodel.cn
- Generate an API key
- In UnrealAI Settings → Providers, paste your key in the GLM field
Available Models
- glm-5 — Latest flagship model
- glm-4.7 / glm-4.7-flash — Balanced performance
- glm-4.6v — Vision-capable model
- 15 models total including flash, air, and vision variants
GLM Services
The GLM provider includes additional services beyond chat:
- Image Generation — Generate images from text descriptions
- Video Generation — Generate short videos from prompts
- Web Search — Search the web for context
- Web Reader — Read and extract content from URLs
- OCR — Extract text from images
- Audio Transcription — Convert speech to text
- File Upload — Upload files for AI processing
Claude Code CLI
Use your Claude Code CLI subscription directly — no separate API key needed. Claude Code runs its own agentic loop with full tool access.
Setup
- Install Claude Code CLI:
npm install -g @anthropic-ai/claude-code - Authenticate:
claude login - In UnrealAI Settings, select "Claude Code" as your provider
How It Works
When you send a message with Claude Code selected:
- UnrealAI spawns a Claude Code CLI subprocess
- Claude Code runs its own agentic loop (not the built-in agentic loop)
- It has access to all MCP tools and can make multi-step decisions
- Sessions persist across messages using
--resume
First-Time Setup
On first use, UnrealAI automatically creates the environment files Claude Code needs:
.mcp.json— MCP server configuration pointing to UnrealAI.claude/CLAUDE.md— Project instructions for Claude Code.claude/commands/— 9 slash commands for common UE tasks.claude/settings.json— Permission settings
Claude Code provider requires an active Claude Code CLI subscription. It does not use an API key.
Codex CLI
Use your ChatGPT subscription directly with OpenAI's Codex CLI agent. No API key required — it uses your existing ChatGPT plan.
Setup
- Install Codex CLI:
npm install -g @openai/codex - Authenticate with your OpenAI/ChatGPT account
- In UnrealAI Settings, select "Codex" as your provider
How It Works
Codex CLI runs its own agentic loop with full access to all MCP tools. When you send a message:
- UnrealAI spawns a Codex subprocess in fully autonomous mode
- Codex can make multi-step decisions, call tools, and iterate on results
- It automatically detects the MCP server and connects to Unreal Editor
Available Models
- Auto — Uses your subscription's default model
- o4-mini — Fast reasoning model
- o3 — Advanced reasoning
- gpt-4.1 — Latest GPT model
Gemini CLI
Use Google's Gemini CLI with your Google account. No API key required — it works with your existing Google login.
Setup
- Install Gemini CLI:
npm install -g @anthropic-ai/gemini-cli - Authenticate with your Google account
- In UnrealAI Settings, select "Gemini CLI" as your provider
How It Works
Gemini CLI runs its own agentic loop with MCP tool access. On first use, UnrealAI creates the necessary configuration files so Gemini CLI knows how to connect to the editor.
Available Models
- gemini-2.5-pro — Most capable Gemini model
- gemini-2.5-flash — Fast and efficient
- gemini-2.0-flash-thinking — Reasoning-focused
- gemini-2.0-flash — Balanced speed and quality
OpenClaw
OpenClaw is a local AI gateway framework that routes your requests through configurable agents. It runs on your machine and provides an OpenAI-compatible API that UnrealAI connects to.
Setup
- Install OpenClaw from github.com/nicepkg/openclaw
- Start the OpenClaw server (default:
localhost:18789) - In UnrealAI Settings, select "OpenClaw" as your provider
- Optionally set an auth token if your OpenClaw instance requires one
Features
- Route requests through custom AI agents
- Local gateway — your data stays on your machine
- Configurable agent routing with
agent:idmodel syntax - OpenClaw handles its own tool calling and MCP integration
Agent Routing
Select specific OpenClaw agents by choosing model names like agent:main or openclaw:main. Or use "Auto" to let OpenClaw decide which agent to use.
Chat Workspace
The Chat workspace is the primary interface for interacting with AI. It supports streaming responses, tool call visualization, and multi-session management.
Sending Messages
Type your prompt in the input field and press Enter or click Send. The AI will process your request and may use tools to interact with your project.
Tool Call Cards
When the AI uses tools (like creating a Blueprint or spawning an actor), you'll see tool call cards in the chat showing what actions were taken and their results.
@ Mentions
Type @ in the chat input to search for any asset in your project (Blueprints, Materials, Textures, Meshes, etc.). When you mention an asset, its full details are automatically included as context in your message, so the AI knows exactly what you're referring to.
Provider Switching
Switch providers mid-conversation using the dropdown in the chat header. Your conversation history is preserved when switching.
Tool Calling & Agentic Loop
UnrealAI uses tool calling to let the AI interact directly with the Unreal Editor. When you ask the AI to create something, it doesn't just generate text — it actually creates the content in your project.
How It Works
- You send a message (e.g., "Create a rotating cube Blueprint")
- The AI decides which tools to use and calls them
- Tools execute in the editor (create files, spawn actors, modify Blueprints)
- Results are sent back to the AI
- The AI can make additional tool calls based on results (agentic loop)
- Final response summarizes what was created
Retry Logic
If a tool call fails (e.g., network timeout), UnrealAI automatically retries with exponential backoff:
- Normal failures: Retry after 2s, 4s, 8s
- Rate limits (429): Retry after 5s, 10s, 20s
- Maximum 3 retries per request
Sessions & History
UnrealAI supports multiple concurrent chat sessions and saves your history.
- Multi-Session: Up to 8 chat tabs open simultaneously
- Auto-Save: Sessions are automatically saved (when enabled in settings)
- History Panel: Search, sort, load, rename, export, and delete past sessions
- Session Resume: Pick up where you left off with full context
C++ Code Generator
Generate complete C++ header (.h) and implementation (.cpp) files with proper Unreal Engine macros.
What It Generates
- Proper
UCLASS(),UPROPERTY(),UFUNCTION()macros - Correct API export macro for your project
#pragma onceheader guards- Standard Unreal naming conventions (A prefix for Actors, U for UObjects, F for structs)
Example Prompt
"Create a C++ Actor class that spawns particles on overlap and applies damage to the overlapping actor"
Features
- Automatic hot reload after generation
- Compilation error detection with auto-fix suggestions
- Generated files are tracked for easy management
Blueprint Generator
Create full Blueprint assets from natural language descriptions. The most powerful generator in UnrealAI.
Three Generation Modes
- AI Generate — Describe what you want in plain English. The AI creates the entire Blueprint.
- Definition — Use a structured definition format for precise control over variables, functions, and logic.
- Raw Text — Paste a raw Blueprint text format for direct node-level creation.
Supported Parent Classes
| Actor | Pawn | Character |
| PlayerController | GameModeBase | GameStateBase |
| ActorComponent | SceneComponent | HUD |
Blueprint Logic
The AI can create complex Blueprint logic including:
- Function calls, variable get/set, math operations
- Flow control: Branch, Sequence, ForLoop, ForEachLoop, WhileLoop, DoOnce, FlipFlop, Gate
- Events: BeginPlay, Tick, Overlap, Hit, Custom Events
- Casts, validity checks, comparisons, boolean operations
- Automatic pin connections with schema validation
- Collision-aware auto-positioning of nodes
Example Prompts
"Create an actor that follows the player, speeds up when far away, and stops when close"
"Make a pickup item that rotates, bobs, and gives the player 10 health on overlap"
"Build a door Blueprint with timeline-based smooth opening animation triggered by player overlap"
Widget Generator (UMG)
Generate UMG Widget Blueprints for HUDs, menus, inventories, and any UI you need.
What It Creates
- Widget hierarchies with proper parent-child relationships
- Anchoring and layout settings
- Data bindings for dynamic content
- Button click handlers and event dispatchers
Example Prompts
"Create a main menu with Play, Settings, and Quit buttons centered on screen"
"Build an inventory grid widget with 24 slots, drag-and-drop support, and item tooltips"
"Make a health bar with gradient fill, numeric display, and damage flash animation"
Material Generator
Create PBR materials with proper node graphs. Supports all Unreal Engine shading models and blend modes.
Shading Models
| Default Lit | Unlit | Subsurface |
| Subsurface Profile | Clear Coat | Two Sided Foliage |
| Hair | Cloth | Eye |
Blend Modes
Opaque, Masked, Translucent, Additive, Modulate, Alpha Composite
Built-in Templates
12 templates for common materials: Basic Color, Metallic, Glass, Emissive, Brick, Wood, Fabric, Water, Ice, Hologram, Dissolve, Fresnel Glow.
Example Prompts
"Create a glowing holographic material with scanlines and fresnel edge effect"
"Make a PBR brick wall material with normal mapping and ambient occlusion"
"Build a dissolve material that burns away from the edges with an emissive border"
Texture Generator
Generate textures using multiple AI image generation providers.
Supported Providers
| Provider | Description | Key Features |
|---|---|---|
| DALL-E (OpenAI) | OpenAI's image generation | High quality, fast generation |
| Stable Diffusion | Open-source image generation | Full parameter control, many models |
| Gemini | Google's image generation | Integrated with Google AI |
| NanoBanana | Specialized texture generator | Game texture focused |
Stable Diffusion Parameters
When using Stable Diffusion, you have full control over: model selection, steps, CFG scale, sampler, seed, negative prompt, image size, and more.
Gallery
Generated textures are displayed in a gallery view where you can preview, import to your project, and manage generated assets.
3D Mesh Generator
Generate 3D models from text or images using Meshy and Tripo APIs.
Generation Modes
- Text-to-3D — Describe a 3D object in text and get a mesh
- Image-to-3D — Upload a reference image to generate a matching 3D model
- Multi-Image — Use multiple reference images for better reconstruction
- Retexture — Apply new textures to existing meshes
- Remesh — Optimize mesh topology
- Rigging — Auto-rig generated meshes for animation
Example Prompts
"Generate a low-poly medieval sword with leather grip"
"Create a stylized treasure chest with gold trim"
"Make a sci-fi crate with glowing panel details"
Audio Generator
Generate voice, sound effects, and music directly in the editor.
Voice / TTS
Uses ElevenLabs for high-quality text-to-speech. Features:
- Multiple voice models (Multilingual v2, Turbo v2.5, English v1)
- Voice selection from your ElevenLabs library
- Advanced sliders: Stability, Similarity Boost, Style, Speaker Boost
Sound Effects
Generate game sound effects from text descriptions. Explosions, footsteps, ambient sounds, UI clicks, and more.
Music
Generate background music and game soundtracks from descriptions.
Audio generation requires an ElevenLabs API key. Set it up in Settings → Providers.
Behavior Tree Generator
Generate complete AI Behavior Trees with Blackboard setup for enemy AI, NPCs, and complex AI behaviors.
What It Creates
- Behavior Tree asset with full node hierarchy
- Matching Blackboard asset with typed keys
- Composite nodes (Selector, Sequence)
- Task nodes (MoveTo, Wait, custom tasks)
- Decorator nodes (Blackboard checks, cooldowns)
- Service nodes (distance checks, target updates)
Example Prompts
"Create a patrol AI that walks between waypoints, chases the player when spotted, and returns to patrol after losing sight"
"Build an NPC behavior tree: idle animation, greet player on approach, give quest dialog, return to idle"
"Make a boss AI with phases: ranged attack at distance, melee when close, heal when low HP"
Animation Blueprint Generator
Create Animation Blueprints with state machines, blend spaces, and transitions.
What It Creates
- AnimBP asset linked to your Skeleton
- State machines with named states
- Transitions between states with conditions
- Animation slot references
- Blend space integration
Example Prompts
"Create an animation blueprint with Idle, Walk, Run, and Jump states with speed-based transitions"
"Build a character AnimBP: locomotion blend space with idle/walk/run, plus jump and fall states"
Scene Building
Build entire scenes from a single prompt. Instead of manually placing actors one by one, describe what you want and the AI assembles it for you.
How It Works
The build_scene tool lets you spawn multiple actors at once — primitives (cube, sphere, cylinder, cone, plane), lights, cameras, and existing meshes from your project. Each actor gets positioned, rotated, and scaled as specified.
Automatic Materials
Every primitive in a scene gets an auto-generated PBR material based on the color, metallic, and roughness values you provide. No need to create materials separately.
Using Project Assets
Use search_project_assets to find meshes already in your project (including Quixel Megascans), then reference them by path in your scene. This lets you build scenes with high-quality assets instead of just primitives.
Scene Management
- Scene Names — Every scene gets a name, and all its actors are organized in an Outliner folder
- Delete Scenes — Remove all actors from a scene by name with
delete_scene - Iterate — Delete and rebuild scenes as you refine your vision
Example Prompts
"Build a medieval courtyard with stone walls, wooden barrels, and torches"
"Create a sci-fi control room with glowing panels, chairs, and a central hologram table"
"Make a forest clearing with trees around the edges and a campfire in the center"
Interactive Actors
Create pre-built interactive objects with a single command. These are ready-to-use Blueprint templates that come with meshes, collision, and components already configured.
Available Templates
| Template | What It Creates |
|---|---|
| Door | A door with mesh, collision box, and timeline-ready setup for open/close animation |
| Pickup | A collectible item with mesh, collision sphere, rotating motion, and overlap detection |
| Light Switch | A wall switch with mesh, point light, and toggle interaction |
| Button | A pressable button with mesh, collision, and event dispatching |
| Ambient Sound | A sound emitter with audio component and spatial attenuation |
| Rotating | A continuously rotating object (fans, gears, decorative elements) |
Workflow
- Create the interactive actor from a template
- Optionally add custom Blueprint logic (the AI can wire it up for you)
- Place it in your scene using the scene builder or manually
Example Prompts
"Create an interactive door that opens when the player approaches"
"Make a health pickup that rotates and heals the player on overlap"
"Create a light switch that toggles a room light on and off"
AI Characters
Create AI-driven NPCs with full navigation and behavior. The AI sets up everything needed for characters that can move around your level autonomously.
What Gets Created
- Character Blueprint — A character with mesh, capsule collision, and movement component
- AI Controller — An AI Controller Blueprint wired to run a Behavior Tree automatically
- Navigation Mesh — A NavMesh volume for pathfinding (the AI can spawn one for you)
Workflow
- Create a Behavior Tree (use the BT generator or create manually)
- Use
create_ai_characterto create the Character + AI Controller - Use
spawn_nav_mesh_boundsto add navigation to your level - Place the character in the level — it will start running its Behavior Tree
Customization
Use set_blueprint_default to tweak character properties like walk speed, AI controller class, or any other Blueprint default value.
Example Prompts
"Create an NPC that patrols between waypoints and chases the player when close"
"Build a guard character with patrol behavior and a 10-meter detection range"
"Set up an AI character ecosystem: 3 different NPC types with unique behaviors"
Cinematics & Cameras
Create cinematic sequences and camera setups for cutscenes, trailers, and in-game cameras.
Level Sequences
Use Level Sequences to animate actors, cameras, and properties over time:
- Create sequences — Set up a Level Sequence asset with play range
- Bind actors — Add any actor to the sequence for animation
- Add tracks — Transform tracks (location, rotation, scale) and float tracks
- Keyframe animation — Set keyframes at specific times with cubic, linear, or constant interpolation
Cinematic Cameras
Spawn professional-grade cameras with full control over:
- Focal Length — Wide angle to telephoto (default: 35mm)
- Aperture (f-stop) — Controls depth of field blur (default: f/2.8)
- Sensor Size — Width and height in mm (default: Super 35mm)
- Focus Distance — Where the camera focuses (default: 100cm)
Example Prompts
"Create a cinematic flythrough camera that orbits around the castle"
"Set up a cutscene: camera starts wide, zooms into the character's face over 3 seconds"
"Spawn a cinematic camera with shallow depth of field for close-up shots"
Atmosphere & VFX
Set up the mood and visual atmosphere of your scenes with fog, post-processing, lighting, and Niagara particle effects.
Atmosphere Elements
| Element | What It Does |
|---|---|
| Fog | Exponential height fog with density, falloff, color, and start distance |
| Post Process Volume | Color grading, bloom, exposure, and visual effects |
| Directional Light | Sun/moon light with intensity, color, and shadow control |
| Sky Light | Ambient lighting that fills shadows with color |
Post-Processing Effects
Fine-tune the visual look of your scene with 16+ adjustable settings:
- Bloom — Glow intensity and threshold
- Exposure — Compensation, min/max auto-exposure
- Color Grading — Saturation, contrast, tint, white balance temperature
- Depth of Field — Focal distance and f-stop
- Vignette — Dark edges intensity
- Film Grain — Cinematic grain effect
- Ambient Occlusion — Contact shadow intensity
- Motion Blur — Movement blur amount
- Chromatic Aberration — Color fringing effect
Niagara VFX
Spawn particle systems from your project's Niagara assets. Adjust parameters like color, size, and spawn rate in real time.
Spatial Audio
Place ambient sound emitters in your scene with spatial audio, distance attenuation, volume, and pitch control. Perfect for environmental sounds like wind, water, fire, and machinery.
Example Prompts
"Add thick fog to the graveyard scene with a blue-gray tint"
"Set up cinematic post-processing: high bloom, slight vignette, warm color grading"
"Create a rainy atmosphere: dark sky light, volumetric fog, and rain particle effects"
"Add ambient fire sounds near the torches with 500cm attenuation radius"
Gameplay Setup
Configure your level's gameplay settings to turn a scene into a playable prototype.
World Settings
Use set_world_settings to configure:
- Game Mode — Set which GameMode Blueprint controls your level
- Gravity — Adjust world gravity (negative = down, 0 = zero-G, positive = up)
- Time Dilation — Slow motion or speed up the entire game (0.5 = half speed, 2.0 = double speed)
- Kill-Z — The Z height where actors are destroyed (fall-off-the-map protection)
Making a Playable Prototype
The recommended workflow for creating a playable level:
- Create a GameMode Blueprint (sets rules for your game)
- Set the default pawn class (what the player controls)
- Apply the GameMode to your level with
set_world_settings - Hit Play!
Material Assignment
Apply any material to actors already in your scene using assign_material. Specify which mesh slot to apply it to, or apply to all slots at once. Works with both static meshes and skeletal meshes.
Example Prompts
"Set up this level as a playable prototype with third-person controls"
"Change gravity to zero-G for a space station level"
"Apply the brick material to all the wall actors in the scene"
"Set time dilation to 0.3 for a slow-motion effect"
Asset Discovery
Find and use assets that are already in your project. Perfect for discovering Quixel Megascans, marketplace assets, or anything you've imported.
Searching Assets
Use search_project_assets to search by keyword across all asset types:
- Meshes, materials, textures, sounds, Blueprints, and more
- Returns asset paths you can use directly in scene building
- Shows mesh bounding box dimensions so you know how big things are
Fab Marketplace
If you need assets that aren't in your project, use open_fab_browser to open the Fab marketplace directly in your browser. Download free high-quality assets and they'll be available for scene building immediately.
Example Prompts
"Search for rock meshes in my project"
"Find all tree assets from Megascans"
"Open the Fab marketplace so I can download some furniture assets"
Procedural Mesh Creation
Create meshes from code using UE5's built-in GeometryScript API. Build shapes, boolean-cut holes, merge pieces, and save as StaticMesh assets — all from natural language.
"Create a box with a cylindrical hole cut through the center"
"Make a torus mesh and hollow it out with 5mm wall thickness"
Tools
| Tool | Description |
|---|---|
create_mesh_primitive | Create box, sphere, cylinder, cone, torus, capsule, disc, or stairs as a StaticMesh asset |
mesh_boolean | Union, subtract, or intersect two meshes. Use subtract to cut holes, windows, doorways |
mesh_combine | Merge multiple meshes into a single StaticMesh asset |
Mesh Operations
Modify, optimize, and repair meshes with professional modeling tools.
| Tool | Description |
|---|---|
mesh_simplify | Reduce triangle count for optimization |
mesh_subdivide | Increase mesh detail with tessellation |
mesh_smooth | Smooth rough/jagged surfaces |
mesh_generate_uvs | Auto-generate UV coordinates for texturing |
mesh_recompute_normals | Fix lighting with smooth/faceted/split normals |
mesh_fill_holes | Repair meshes with missing faces |
mesh_deform | Bend, twist, flare, or add noise |
mesh_hollow | Make solid meshes hollow (vases, bowls) |
mesh_plane_cut | Cut mesh along a plane |
mesh_mirror | Mirror mesh along X/Y/Z axis |
mesh_extrude | Extrude mesh faces in a direction |
mesh_get_info | Query vertex count, triangles, bounds, volume |
Landscape & Terrain
Create and sculpt terrain landscapes programmatically.
| Tool | Description |
|---|---|
create_landscape | Create a flat landscape terrain actor |
sculpt_landscape | Raise, lower, smooth, or flatten terrain |
paint_landscape_layer | Paint material layers on landscape |
Foliage Scattering
Scatter trees, grass, rocks, and other instances efficiently over terrain.
| Tool | Description |
|---|---|
spawn_foliage | Scatter instanced foliage in an area with random scale/rotation |
clear_foliage | Remove foliage instances by type or area |
Fracture & Destruction
Convert meshes into destructible Geometry Collections for Chaos physics.
| Tool | Description |
|---|---|
fracture_mesh | Convert StaticMesh to destructible Geometry Collection |
MCP Server
UnrealAI runs a Model Context Protocol (MCP) server inside the Unreal Editor on localhost:9090. This allows external AI tools to connect and interact with your project.
What Is MCP?
MCP (Model Context Protocol) is an open standard that lets AI tools communicate with external systems. UnrealAI implements the 2025-03-26 spec with Streamable HTTP transport.
Connection Methods
- Direct HTTP — Any tool can POST JSON-RPC to
http://localhost:9090 - Claude Code CLI — Connects via
.mcp.jsonconfiguration - Claude Desktop — Connects via the Python bridge script
- Cursor / Windsurf — MCP-compatible editors can connect directly
- Custom Agents — Build your own tools that talk to the server
Protocol
The server accepts JSON-RPC 2.0 requests over HTTP:
POST http://localhost:9090
Content-Type: application/json
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "create_blueprint",
"arguments": {
"name": "BP_MyActor",
"parent_class": "Actor"
}
}
}
MCP Tools Reference
UnrealAI provides 100+ tools organized by category:
File Tools
| Tool | Description |
|---|---|
read_file | Read file contents |
write_file | Write/create files |
list_files | List directory contents |
delete_file | Delete a file |
Blueprint Tools
| Tool | Description |
|---|---|
create_blueprint | Create a new Blueprint asset |
list_blueprints | List all Blueprints in project |
compile_blueprint | Compile a Blueprint |
generate_blueprint_from_definition | Generate from structured definition |
generate_blueprint_from_raw_text | Generate from raw text format |
add_logic_node | Add a logic node to a Blueprint |
connect_blueprint_pins | Connect pins between nodes |
add_blueprint_variable | Add a variable with optional default |
search_blueprint_actions | Search for Blueprint functions/macros |
get_available_actions | Context-aware action palette |
get_pin_compatible_actions | Find nodes with compatible pins |
Widget Tools
| Tool | Description |
|---|---|
create_widget | Create a Widget Blueprint |
generate_widget_from_definition | Generate from definition |
add_widget_element | Add UI element to widget |
set_widget_parent_class | Set widget parent class |
Material Tools
| Tool | Description |
|---|---|
create_material | Create a new Material |
create_material_instance | Create a Material Instance |
generate_material_from_definition | Generate from definition |
assign_material | Apply a material to an actor's mesh in the level |
Texture Tools
| Tool | Description |
|---|---|
generate_texture | Generate texture via AI |
import_texture_from_url | Import texture from URL |
import_texture_from_base64 | Import from base64 data |
3D Mesh Tools
| Tool | Description |
|---|---|
generate_mesh | Generate 3D mesh from text/image |
get_mesh_status | Check async mesh generation status |
import_mesh_from_url | Import mesh from URL |
spawn_mesh | Spawn mesh in level |
Audio Tools
| Tool | Description |
|---|---|
generate_voice | Generate voice/TTS audio |
generate_sfx | Generate sound effects |
generate_music | Generate music |
spawn_ambient_sound | Place spatial audio emitter in the level |
Actor Tools
| Tool | Description |
|---|---|
spawn_actor | Spawn an actor in the level |
get_selected_actors | Get currently selected actors |
delete_actor | Delete an actor |
set_actor_transform | Set actor position/rotation/scale |
Editor Tools
| Tool | Description |
|---|---|
editor_get_context | Get current editor state |
get_selection | Get current selection |
open_blueprint | Open Blueprint in editor |
capture_asset_thumbnail | Capture asset thumbnail as image |
Project Tools
| Tool | Description |
|---|---|
get_project_info | Get project information |
list_classes | List project C++ classes |
run_console_command | Execute a console command |
Asset Reader Tools
| Tool | Description |
|---|---|
read_asset | Read detailed asset information |
read_asset_references | Get asset dependency graph |
list_assets_by_type | List all assets of a given type |
AI System Tools
| Tool | Description |
|---|---|
generate_behavior_tree | Generate complete BT + Blackboard |
generate_animation_blueprint | Generate AnimBP with state machines |
create_ai_character | Create Character + AI Controller with auto-wired Behavior Tree |
spawn_nav_mesh_bounds | Spawn navigation mesh and rebuild pathfinding |
set_blueprint_default | Set Blueprint default properties (walk speed, AI controller, etc.) |
Scene Builder Tools
| Tool | Description |
|---|---|
build_scene | Batch spawn entire scenes (primitives, lights, meshes with auto PBR materials) |
delete_scene | Delete all actors from a previously built scene |
create_interactive_actor | Create interactive Blueprint from template (door, pickup, switch, button, etc.) |
Cinematics Tools
| Tool | Description |
|---|---|
create_level_sequence | Create a Level Sequence for animation/cutscenes |
add_sequence_binding | Bind an actor to a sequence |
add_sequence_track | Add transform or float track to a binding |
add_sequence_keyframe | Add keyframes to tracks (location, rotation, scale at time) |
spawn_cine_camera | Spawn cinematic camera with focal length, aperture, sensor size |
Atmosphere & VFX Tools
| Tool | Description |
|---|---|
spawn_atmosphere | Spawn fog, post-process volumes, directional lights, sky lights |
set_post_process | Configure bloom, exposure, color grading, vignette, DOF, and more |
spawn_niagara_system | Spawn Niagara particle system in the level |
set_niagara_parameter | Adjust Niagara VFX parameters |
Gameplay Tools
| Tool | Description |
|---|---|
set_world_settings | Set GameMode, gravity, time dilation, kill-Z on current level |
Asset Discovery Tools
| Tool | Description |
|---|---|
search_project_assets | Search project assets by keyword (meshes, materials, sounds, etc.) |
open_fab_browser | Open Fab marketplace to download free assets |
Geometry Modeling Tools
| Tool | Description |
|---|---|
create_mesh_primitive | Create box, sphere, cylinder, cone, torus, capsule, disc, or stairs as a StaticMesh asset |
mesh_boolean | Union, subtract, or intersect two meshes |
mesh_combine | Merge multiple meshes into a single StaticMesh asset |
mesh_simplify | Reduce triangle count for optimization |
mesh_subdivide | Increase mesh detail with tessellation |
mesh_smooth | Smooth rough/jagged surfaces |
mesh_generate_uvs | Auto-generate UV coordinates for texturing |
mesh_recompute_normals | Fix lighting with smooth/faceted/split normals |
mesh_fill_holes | Repair meshes with missing faces |
mesh_deform | Bend, twist, flare, or add noise |
mesh_hollow | Make solid meshes hollow (vases, bowls) |
mesh_plane_cut | Cut mesh along a plane |
mesh_mirror | Mirror mesh along X/Y/Z axis |
mesh_extrude | Extrude mesh faces in a direction |
mesh_get_info | Query vertex count, triangles, bounds, volume |
Landscape Tools
| Tool | Description |
|---|---|
create_landscape | Create a flat landscape terrain actor |
sculpt_landscape | Raise, lower, smooth, or flatten terrain |
paint_landscape_layer | Paint material layers on landscape |
Foliage Tools
| Tool | Description |
|---|---|
spawn_foliage | Scatter instanced foliage in an area with random scale/rotation |
clear_foliage | Remove foliage instances by type or area |
Fracture Tools
| Tool | Description |
|---|---|
fracture_mesh | Convert StaticMesh to destructible Geometry Collection for Chaos physics |
GLM Service Tools
| Tool | Description |
|---|---|
glm_web_search | Search the web via GLM |
glm_read_webpage | Read webpage content |
glm_ocr | Extract text from images |
glm_generate_image | Generate images via GLM |
glm_generate_video | Generate videos via GLM |
glm_get_video_status | Check video generation status |
glm_transcribe_audio | Transcribe audio to text |
glm_upload_file | Upload file for GLM processing |
Claude Code CLI Integration
Use Claude Code from your terminal to interact with Unreal Engine through the MCP server.
Setup
- Make sure UnrealAI plugin is running (MCP server on port 9090)
- In your project root, UnrealAI creates
.mcp.jsonautomatically - Open a terminal in your project directory
- Run
claudeto start Claude Code - Claude Code will detect the MCP server and connect
Slash Commands
9 pre-configured slash commands are available:
| Command | Description |
|---|---|
/ue-context | Get current editor state (open files, selected actors) |
/ue-create-bp | Create a Blueprint from description |
/ue-create-material | Create a Material from description |
/ue-create-widget | Create a UMG Widget |
/ue-create-ai | Create a Behavior Tree for AI |
/ue-analyze | Analyze project structure |
/ue-spawn | Spawn actors in the level |
/ue-scene | Build a complete scene |
/ue-fix | Diagnose and fix Blueprint/C++ issues |
Claude Desktop Integration
Connect Claude Desktop to Unreal Editor using the Python bridge script.
Setup
- Make sure Python is installed
- Open Claude Desktop's configuration file
- Add the MCP server configuration pointing to
Plugins/UnrealAI/Content/Python/mcp_server.py - Restart Claude Desktop
- The MCP tools will appear in Claude Desktop's tool list
The Python bridge acts as a stdio-to-HTTP translator. Claude Desktop communicates with the bridge via stdio, and the bridge forwards requests to the UnrealAI MCP server on localhost:9090.
Settings Reference
General
| Setting | Default | Description |
|---|---|---|
| Auto-Save Sessions | Enabled | Automatically save chat sessions |
| Default Save Path | Project/Saved | Where generated content is saved |
Generation
| Setting | Default | Description |
|---|---|---|
| Temperature | 0.7 | AI randomness (0.0-1.0) |
| Max Output Tokens | 4096 | Maximum response length |
Connection
| Setting | Default | Description |
|---|---|---|
| MCP Server Port | 9090 | Port for the MCP server |
| MCP Auto-Start | Enabled | Start MCP server with editor |
Advanced
| Setting | Default | Description |
|---|---|---|
| Max HTTP Retries | 3 | Maximum retry attempts for failed requests |
| Debug Logging | Disabled | Enable verbose logging for troubleshooting |
Security
UnrealAI takes security seriously. Your credentials and project data are protected.
Credential Encryption
All API keys are encrypted using Windows DPAPI (Data Protection API). This means:
- Keys are encrypted with your Windows user profile
- Only your Windows account can decrypt them
- Keys are stored in
Saved/UnrealAI/Credentials.ini(encrypted) - Keys are never stored in plain text or in project config files
Path Validation
All file operations go through path validation to prevent directory traversal attacks. The MCP server only allows access to files within your project directory.
Parameter Sanitization
All tool parameters are validated and sanitized before execution. JSON input is checked for proper types, bounds, and malicious content.
MCP Server
The MCP server only listens on localhost. It is not accessible from other machines on your network by default.
Troubleshooting
"API key not working"
- Verify the key is correct in Settings → Providers
- Check that you have billing/credits set up with the provider
- Try the key directly with curl/Postman to confirm it works
- For Ollama: ensure the Ollama service is running (
ollama serve)
"MCP server not connecting"
- Verify the plugin is enabled and the editor is running
- Check that port 9090 is not in use by another application
- Check the Output Log for MCP server startup messages
- Try restarting the editor
"Blueprint generation failed"
- Check the Output Log for detailed error messages
- Try compiling the Blueprint manually to see compilation errors
- Ensure the parent class is available in your project
- For complex Blueprints, try breaking the request into smaller steps
"Claude Code not connecting"
- Ensure Claude Code CLI is installed and authenticated
- Check that
.mcp.jsonexists in your project root - Verify the MCP server is running (check Output Log)
- Try running Claude Code with
--verbosefor detailed logs
"DLL locked / can't rebuild"
- Close CrashReportClientEditor if it's running
- Close any debugger attached to the editor
- For a clean rebuild: delete
Plugins/UnrealAI/Intermediate/andPlugins/UnrealAI/Binaries/
FAQ
What Unreal Engine versions are supported?
UnrealAI requires Unreal Engine 5.6. Support for older versions may be considered in the future.
Do I need my own API keys?
Yes, you need API keys from the cloud AI providers you want to use. However, several providers work without an API key: Ollama runs locally, Claude Code and Codex use your CLI subscriptions, Gemini CLI uses your Google account, and OpenClaw runs as a local gateway. UnrealAI does not include API credits.
Is my code/project data sent to AI providers?
When you use the chat or generators, your prompts and relevant project context are sent to your chosen AI provider. If you're concerned about data privacy, use Ollama for fully local processing.
Can I use multiple providers at the same time?
You can configure all providers but use one at a time per chat session. You can switch providers between messages.
Does UnrealAI work with C++ projects?
Yes. UnrealAI works with both Blueprint-only and C++ projects. The C++ generator creates properly structured source files.
Is the source code included?
Yes. UnrealAI is distributed as a source code plugin, so you have full access to the implementation.
Can the AI build entire scenes, not just individual assets?
Yes! UnrealAI can build complete scenes with multiple actors, lights, materials, interactive objects, AI characters, cameras, atmosphere, and post-processing — all from a single prompt or a series of chat messages.
Can I use the CLI providers (Claude Code, Codex, Gemini CLI) from the terminal too?
Yes. These CLI providers work both inside the UnrealAI chat panel and from your terminal. When used from the terminal, they connect to the MCP server running inside the editor, giving you the same 100+ tools.
Will I get updates?
Yes. Your purchase includes lifetime updates. New features, providers, and generators will be added over time.