-
Notifications
You must be signed in to change notification settings - Fork 169
Quick Start
From an empty project to an AI assistant working in your editor, in about ten minutes: ① add the plugin, ② open the project, ③ connect a client, ④ try it.
| You need | |
|---|---|
| 🎮 | Unreal Engine 5.0 – 5.8 on Windows, macOS or Linux |
| 🧱 |
A project with C++ code, meaning it has a Source/ folder. Blueprint-only? Add any class through Tools › New C++ Class, or use prebuilt binaries. |
| 🤖 | An MCP client: Claude Code, Claude Desktop, Cursor, VS Code, … |
| 🟩 | Node.js 20.19 or later, only if you take Route B in step 3 |
- On the Releases page, open the newest
v0.6pre-release (v0.6.0-beta-b at the time of writing) and downloadMcpAutomationBridge-plugin-<version>.zip. - The zip contains
plugins/McpAutomationBridge/. Copy thatMcpAutomationBridgefolder into your project'sPluginsfolder:
MyGame/
├── MyGame.uproject
└── Plugins/
└── McpAutomationBridge/
├── McpAutomationBridge.uplugin
└── Source/
Open MyGame.uproject. When Unreal asks whether to rebuild the missing modules, choose Yes. The plugin is large, so the first build can take several minutes.
✅ Checkpoint: the status bar in the editor's bottom-right corner shows MCP off. That means the plugin loaded, and its built-in HTTP server is simply switched off for now.
Tip
"Engine modules cannot be compiled at runtime" instead of the rebuild prompt? Build the project once in Visual Studio, Rider or Xcode, then open it again. More in 🩺 Troubleshooting.
Pick one route:
|
🌐 Route A · Native HTTP The plugin serves MCP itself.
Best for: Claude Code, Cursor, VS Code |
🧩 Route B · stdio Your client launches a small Node.js server.
Best for: Claude Desktop, or clients that only launch local commands |
-
In the editor, open Edit › Project Settings › Plugins › MCP Automation Bridge. Under Native MCP, tick Enable Native MCP Server. The port defaults to
3000.
-
Restart the editor. ✅ Checkpoint: the status bar reads
MCP :3000 (0), meaning the port and the number of connected clients. -
Read the capability token the plugin generated for your project:
Get-Content "C:\Path\To\MyGame\Saved\MCP\capability-token"
cat /path/to/MyGame/Saved/MCP/capability-token
-
Add the server to your client and send the token in the
X-MCP-Capability-Tokenheader. For Claude Code:claude mcp add --transport http unreal-engine http://127.0.0.1:3000/mcp --header "X-MCP-Capability-Token: <paste token>"Cursor, VS Code and the rest: 🔌 Connecting Clients.
✅ Checkpoint: when the client connects, the count in the status bar goes up:

Important
Treat the token like a password. Anyone who has it can drive your editor. See 🔐 Security.
Add this to your client's MCP configuration. For Claude Desktop the file is %APPDATA%\Claude\claude_desktop_config.json on Windows, or ~/Library/Application Support/Claude/claude_desktop_config.json on macOS.
{
"mcpServers": {
"unreal-engine": {
"command": "npx",
"args": ["-y", "unreal-engine-mcp-server@beta"],
"env": {
"UE_PROJECT_PATH": "C:/Path/To/MyGame"
}
}
}
}UE_PROJECT_PATH is your project folder (or its .uproject file). The server uses it to find the capability token and the plugin's port, so there is nothing else to set. Restart the client after editing its config.
Warning
Keep the @beta tag. Without it, npm installs 0.5.30, which doesn't match a 0.6 plugin.
With the editor open, ask your assistant:
| Ask | What happens |
|---|---|
| "List the actors in the current level." | A read: nothing changes |
| "Spawn a point light 300 units above the origin." | A write: a new actor appears in the level |
| "Take a screenshot of the viewport." | The image comes back, so the model can check its own work |
Behind the scenes, each step is three calls to the unreal tool: search to find the capability, describe to read its exact parameters, and execute to run it. 🧭 Using the Gateway shows those calls.
Note
Deletes, and some other changes such as duplicating an asset, only run with a consent grant in the call. The assistant gets the grant from describe, so those take one extra step. See Security › Consent.
| Symptom | Go to |
|---|---|
| The client can't connect, or you get HTTP 401 | Native HTTP client cannot connect |
Every call answers NOT_CONNECTED
|
NOT_CONNECTED from the stdio server |
| The plugin doesn't build | The plugin does not build or load |
📖 This wiki covers the 0.6 line (dev branch, npm @beta) · ✏️ Something wrong or missing? Open an issue or start a discussion
🏠 Home
Get started
🚀 Quick Start
📦 Installation
🔌 Connecting Clients
Use it
🧭 Using the Gateway
🧰 Tools Reference
📚 Resources and Prompts
Set it up
⚙️ Configuration
🔐 Security
Help
🩺 Troubleshooting
💬 FAQ
⬆️ Upgrading from 0.5.x
Contribute
🛠️ Development
Covers the 0.6 line · Releases · Discussions