MCP Unreal Server

by radial-hks
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Facilitates executing Python code remotely within Unreal Engine instances, supporting multiple execution modes including file execution and statement evaluation.

  • Enables remote Python code execution in Unreal Engine environments, supporting both attended and unattended execution modes, file execution, and statement evaluation through an automatic node discovery system.

MCP Unreal Server

A server implementation for interacting with Unreal Engine instances through remote Python execution.

Features

  • 🚀 Unreal Instance Management
    • Automatic discovery of Unreal nodes via multicast
    • Real-time node status monitoring
    • Resource listing through LSP-compatible clients
  • 💻 Remote Execution
    • Execute Python code in Unreal Engine environments
    • Support for both attended and unattended execution modes
    • File execution and statement evaluation modes
  • 📊 Logging & Monitoring
    • Detailed logging to file (mcp_unreal.log)
    • Console logging with different verbosity levels
    • Node connection health monitoring

Installation

# Clone repository git clone https://github.com/your-org/mcp-unreal-server.git cd mcp-unreal-server # Install dependencies pip install -r requirements.txt

Configuration

Network Settings

Configure multicast parameters in RemoteExecutionConfig:

# Default multicast settings (modify in server.py) config.multicast_group_endpoint = ("239.0.0.1", 6766)

Logging

Modify logging configuration in server.py:

# Adjust log levels file_handler.setLevel(logging.DEBUG) # File logging console_handler.setLevel(logging.INFO) # Console logging

Usage

Starting the Server

python -m src.mcp_server_unreal.server

Supported Tools

  1. Connect to Unreal Instance
{ "host": "239.0.0.1", "port": 6766 }
  1. Execute Python Code
{ "node_id": "<unreal-node-id>", "code": "print('Hello Unreal')", "unattended": true }

API Documentation

Resource Format

types.Resource( uri="unreal://<node_id>", name=f"Unreal Instance: {node_id}", description="Unreal Engine instance", mimeType="application/x-unreal" )

Execution Modes

ModeDescription
MODE_EXEC_FILEExecute Python file
MODE_EXEC_STATEMENTExecute Python statement
MODE_EVAL_STATEMENTEvaluate Python expression

Troubleshooting

Common Issues:

  • No nodes discovered: Verify Unreal instances are running with MCP plugin
  • Execution timeout: Check firewall settings for multicast traffic
  • Connection drops: Monitor mcp_unreal.log for node status changes

License

Apache-2.0 License

-
security - not tested
F
license - not found
-
quality - not tested

A server implementation that enables remote Python code execution in Unreal Engine environments, featuring automatic Unreal node discovery and management through a multicast network.

  1. Features
    1. Installation
      1. Configuration
        1. Network Settings
        2. Logging
      2. Usage
        1. Starting the Server
        2. Supported Tools
      3. API Documentation
        1. Resource Format
        2. Execution Modes
      4. Troubleshooting
        1. License