Skip to content

Latest commit

 

History

History
67 lines (48 loc) · 4.63 KB

File metadata and controls

67 lines (48 loc) · 4.63 KB

Unity MCP Server

MCP OpenUPM Docker Image Unity Editor Unity Runtime r
Discord Stars License Stand With Ukraine

The MCP Server acts as the bridge between the AI Client (Claude, Cursor, etc.) and the Unity Editor/Game.

AI Client ↔️ MCP Server ↔️ Unity Plugin

Topology

  1. Client Connection: The AI Client connects to the Server using either stdio (standard input/output pipe) or streamableHttp.
  2. Plugin Connection: The Unity Plugin connects to the Server via TCP/WebSockets on a specified port (default: 8080).

Deployment Options

1. Local Automatic (Recommended)

The Unity Plugin automatically downloads and runs the appropriate server binary for your OS. No manual setup required. Configuration is done via the Unity Editor window.

2. Docker

See Docker Deployment. Best for cloud hosting or isolated environments.

3. Manual Binary

You can run the server manually if you need advanced control or debugging.

Download from Releases.

# HTTP mode (default transport)
./unity-mcp-server --port 8080 --client-transport streamableHttp

# STDIO mode (for piping to MCP clients like Claude Desktop)
./unity-mcp-server --port 8080 --client-transport stdio

CLI Arguments

All arguments can be provided as CLI flags or equivalent environment variables:

Environment Variable CLI Argument Description Default
MCP_PLUGIN_PORT --port Port for both the AI Client (HTTP) and Unity Plugin (SignalR) connections. 8080
MCP_PLUGIN_CLIENT_TRANSPORT --client-transport Protocol for AI Client connection: streamableHttp or stdio. streamableHttp
MCP_PLUGIN_CLIENT_TIMEOUT --plugin-timeout Timeout in ms for plugin responses. 10000
MCP_AUTHORIZATION --authorization Authentication mode for incoming Client connections: none or required. none
MCP_PLUGIN_TOKEN --token Bearer token required from the Client when --authorization=required. Ignored when none. (unset)

Architecture

The server is built on .NET 9, utilizing: