Skip to content
Elliot Mousseau
All projects
Game AI Featured project

Project detail

Unity MCP Bridge

An MCP server that gives an AI agent full control of the Unity Editor.

An MCP server with 120+ validated tools that lets an AI agent drive the Unity Editor directly: animator graphs, particle systems, materials, profiling, builds, and scene editing.

Media and demos

See the work in motion

Generated visual treatment based on the project lanes.

Unity MCP Bridge

Case study

How the project was shaped

Problem

AI-assisted game development hits a ceiling because the AI can read a project but cannot act on it. To change a material, configure a particle system, set up an animator state machine, or run a build, the AI has to write code and ask the human to run it. The Unity MCP Bridge removes the human from that loop by exposing every Unity Editor operation as a tool the AI can call directly.

Architecture

Two-part system. A Node.js MCP server with stdio transport and Zod schema validation runs in the AI client. A Unity Editor C# package with 57+ command handlers and auto-registration runs inside Unity, connected over WebSocket. The MCP server exposes 120+ tools across animator and animation, particle systems, materials and shaders, profiler and performance, GameObject and component, asset database and prefabs, UI and transform, render pipeline, and build and test.

Outcomes

  • 120+ validated tools covering every major Unity Editor surface
  • 25 Animator and Animation tools (states, transitions, blend trees, sub-state machines)
  • 18 Particle System tools (module-by-module config, runtime control, performance analysis)
  • 11 Materials, Shaders, and Textures tools
  • 9 Profiler tools with AI-generated optimization recommendations
  • Orchestration tools: sequence, batch with Undo group rollback, autonomous sub-agent loop via OpenRouter

Hardest bits

  • SerializedObject property access pattern for safe Unity Editor mutation with full Undo support
  • Auto-registration of command handlers across all loaded assemblies for dynamic component types
  • JSON-encoded parameters compatible with Unity JsonUtility plus a 12-error type taxonomy
  • Atomic batch operations with Undo group rollback so multi-step edits succeed or fail together