UE5 MCP Server
An MCP (Model Context Protocol) server that bridges AI assistants to Unreal Engine 5's editor, enabling direct manipulation of levels, actors, Blueprints, and Animation Blueprints.
Why a Standalone Repository?
This MCP server was originally part of the UnrealClaude plugin, but has been moved to its own repository because:
- Expanded Scope: The MCP protocol is an open standard now supported by many AI providers
- Easier Forking: Developers can fork and adapt this bridge for other AI services without pulling the entire Unreal plugin
- Community Contributions: Standalone repo makes it easier to accept PRs for new features, bug fixes, and support for additional MCP clients
Compatible AI Clients
This server uses the standard Model Context Protocol and works with any MCP-compatible AI client, including:
- Claude Code (CLI)
- Claude Desktop App
- OpenAI ChatGPT Desktop (MCP support added March 2025)
- Cursor (AI-powered IDE)
- Replit (AI coding platform)
- Sourcegraph Cody
- Windsurf
- And any other MCP-compliant tool
The protocol was donated to the Linux Foundation in December 2025 and continues to see broad adoption across the AI industry.
Important: What This Tool Is (and Isn't)
This is NOT a "text-to-game" tool. It will not generate 3D models, textures, animations, or replace the work of artists, animators, and asset creators.
This IS a workflow accelerator for Unreal Engine developers. It helps with:
- Project setup monotony: Quickly scaffold Blueprints, set up state machines, configure input bindings
- Repetitive editor tasks: Spawn actors, set properties, organize levels using natural language
- Rapid prototyping: Test ideas faster by describing what you want instead of clicking through menus
- Learning UE5: Query the built-in API documentation while working
The goal is to speed up the tedious parts of game development so you can focus on the creative work that actually matters.
Requirements
- Node.js 18.0.0 or higher
- An HTTP endpoint that implements the expected REST API (default:
http://localhost:3000)
Note: This MCP server is designed to work with the UnrealClaude plugin, but can be adapted for other HTTP backends that implement the same API.
Quick Start
1. Install
git clone https://github.com/Natfii/unrealclaude-mcp-bridge.git
cd unrealclaude-mcp-bridge
npm install
2. Configure Your MCP Client
Add to your MCP client's configuration:
Claude Code (~/.claude/settings.json):
{
"mcpServers": {
"unreal": {
"command": "node",
"args": ["/path/to/unrealclaude-mcp-bridge/index.js"],
"env": {
"UNREAL_MCP_URL": "http://localhost:3000"
}
}
}
}
Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"unreal": {
"command": "node",
"args": ["/path/to/unrealclaude-mcp-bridge/index.js"],
"env": {
"UNREAL_MCP_URL": "http://localhost:3000"
}
}
}
}
Other MCP Clients: Consult your client's documentation for MCP server configuration. The server uses stdio transport.
3. Use It
Once connected, you can interact with Unreal Editor through natural language:
"Spawn a point light at position 0, 0, 500"
"List all StaticMeshActors in the level"
"Create a new Actor Blueprint called BP_Enemy"
"Add a float variable called Health to BP_Player"
"Create a state machine called Locomotion in my Animation Blueprint"
Available Tools
Connection & Context
Level & Actor Tools
Asset Tools
Script Execution
Viewport
Blueprint Tools
Animation Blueprint Tools
Character Tools
Material Tools
Enhanced Input Tools
Async Task Queue
Animation Blueprint Operations
The unreal_anim_blueprint_modify tool provides comprehensive control over Animation Blueprints:
State Machine Operations
Transition Operations
Transition Condition Graph
Node/Pin Introspection
Animation Assignment
Batch Operations
UE 5.7 Context System
The server includes built-in UE 5.7 API documentation that can be queried:
Available Categories
Usage
// Get specific category
{ "category": "animation" }
// Search by keywords
{ "query": "state machine transitions" }
// List all categories
{}
Automatic Context Injection
Enable automatic context injection by setting:
{
"env": {
"INJECT_CONTEXT": "true"
}
}
Configuration
Troubleshooting
Tools show "NOT CONNECTED"
- Ensure your HTTP backend is running and accessible
- Verify the
UNREAL_MCP_URLenvironment variable points to the correct endpoint - Check that the endpoint responds to
/mcp/status
stdin/stdout errors
- Ensure Node.js 18+ is installed and in PATH
- Run
npm installto ensure dependencies are present - Verify the path in your MCP client config points to the correct
index.js
Running the Test Suite
This repo includes a Vitest test suite (87 tests) that validates bridge behavior without a running Unreal Editor:
npm install
npm test # run all tests
npm run test:watch # watch mode
npm run test:coverage # with coverage report
Tests mock the Unreal HTTP server and cover schema conversion, HTTP client logic, context loading, tool listing, and call routing.
Contributing
Contributions are welcome! Feel free to:
- Add support for additional MCP client configurations
- Improve the UE5 context documentation
- Fix bugs or add new features
- Submit documentation improvements
License
MIT with Attribution - see LICENSE for details.
Attribution Required: If you use this project, please credit:
- Project: UE5 MCP Server
- Author: Natali Caggiano (Natfii)
- Link: https://github.com/Natfii/unrealclaude-mcp-bridge
Disclosure Required: If you build another MCP server or AI integration using this code, please disclose its use in your documentation.
Related
- UnrealClaude Plugin - Unreal Engine plugin that provides the HTTP backend for this MCP server
- Model Context Protocol - The protocol specification
- MCP GitHub - Official MCP repositories and SDKs