Comprehensive MCP server for Unreal Engine Remote Control API - Control actors, assets, levels, and editor through Claude and other AI assistants
Package Exports
@erhansiraci/ue-mcp
@erhansiraci/ue-mcp/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@erhansiraci/ue-mcp) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Unreal Engine MCP Server
A comprehensive Model Context Protocol (MCP) server that enables Claude and other AI assistants to interact with Unreal Engine through the Remote Control API.
Features
22 MCP Tools - Full control over actors, assets, levels, and editor
4 MCP Resources - Read-only data access to engine state
6 MCP Prompts - Workflow templates for common tasks
Remote Control API Integration - HTTP-based communication
Unreal Engine 5.x with Remote Control API plugin enabled
Enabling Remote Control in Unreal Engine
Open your project in Unreal Editor
Go to Edit > Plugins
Search for "Remote Control API" in the Messaging category
Enable the plugin and restart the editor
The Remote Control API server starts automatically on port 30010.
Installation
# Clone the repositorygit clone https://github.com/your-repo/ue-mcp.git
cd ue-mcp
# Install dependenciesnpminstall# Buildnpm run build
Usage
Start the server
# Default settings (connects to localhost:30010)npm start
# Mock mode (for testing without Unreal Engine)npm run start:mock
# Custom host/portnode dist/index.js --host192.168.1.100 --http-port 30010# Development mode with hot reloadnpm run dev
CLI Options
Option
Alias
Description
Default
--host
-h
Unreal Engine host address
127.0.0.1
--http-port
-p
Remote Control HTTP port
30010
--ws-port
-w
Remote Control WebSocket port
30020
--timeout
-t
Request timeout (ms)
5000
--mock
-m
Enable mock mode
false
--verbose
-v
Enable verbose logging
false
Claude Desktop Configuration
Add to your Claude Desktop configuration (~/.claude.json or .mcp.json):
Resources provide read-only access to Unreal Engine data via URI patterns.
Resource URI
Description
unreal://api/schema
Available Remote Control API endpoints
unreal://level/actors
All actors in the current level
unreal://editor/state
Current editor state (level, selection)
unreal://presets
List of Remote Control Presets
Available Prompts (6)
Prompts are workflow templates that guide common tasks.
Prompt
Description
spawn-actors-grid
Create a grid of actors at specified positions
batch-property-edit
Edit a property on multiple actors at once
debug-actor
Get comprehensive debug info about an actor
setup-level
Set up a new level with common elements
explore-blueprint
Explore a Blueprint's properties and functions
use-preset
Work with a Remote Control Preset
Example Interactions
You: Ping Unreal Engine to check if it's connected
Claude: [Uses ue_ping tool]
Successfully connected to Unreal Engine at http://127.0.0.1:30010
You: List all the lights in the level
Claude: [Uses ue_get_all_actors with classFilter="PointLight"]
Found 3 actors: PointLight_1, PointLight_2, SpotLight_1
You: Spawn a point light at position (500, 0, 200)
Claude: [Uses ue_spawn_actor tool]
Successfully spawned PointLight at (500, 0, 200)
You: Move it up by 100 units
Claude: [Uses ue_transform_actor tool]
Successfully set location on actor
You: Save the level
Claude: [Uses ue_save_level tool]
Level saved successfully
Development
# Install dependenciesnpminstall# Run in development modenpm run dev
# Type checkingnpm run typecheck
# Buildnpm run build
# Run testsnpmtest# Test with MCP Inspectornpm run inspector