Repository navigation
Releases
v1.4.0 — Unity 6000.5 support & multi-project routing
Unity 6000.5 support
- Fix: the plugin failed to initialize on Unity 6000.5 because it used the now-obsolete instance-ID APIs (
Object.GetInstanceID(),SerializedProperty.objectReferenceInstanceIDValue). These are version-guarded to the newEntityIdAPIs on 6000.5+, and still compile on 2021.3+. - Fix:
execute_editor_scriptfailed 100% of the time on 6000.5 withThe filename or extension is too long. On 6000.5 Unity's bundled Roslyn compiler moved toDotNetSdk/sdk/<ver>/Roslyn/bincore/, so the plugin fell back to CodeDom, whose command line overflowed the Windows length limit with a real project's hundreds of assembly references. Roslyn discovery now finds the new layout, and all compiler arguments pass through a response file so large projects compile on every path. - Cleanup: the plugin now compiles with zero warnings on 6000.5 (deprecated
FindObjectsByType/FindFirstObjectByTypeoverloads migrated behind version guards; a serialization-analyzer warning resolved).
Multi-project routing
- The plugin now sends a
helloproject handshake on connect, so the MCP server can route to the correct editor when several Unity instances run at once (ports6605-6609), instead of the previous "last connection wins" behavior. Non-matching editors are closed with code4001and back off for 30s. Requires the matching MCP server from the v1.4.0 package.
Thanks to Ed for the detailed 6000.5 reports and Zee for the multi-project repro.
v1.3.2 — Roslyn compiler for full C# support
Fixed
execute_editor_scriptnow uses Unity's bundled Roslyn compiler via subprocess, giving full modern C# support (local functions, pattern matching, switch expressions, tuples, etc.) on all platforms. The previous CodeDom path silently failed on Linux where Mono's mcs only supports C# 6.- Fixed "defined multiple times" error storm in
execute_editor_scriptafter domain reloads — assembly references are now deduplicated by filename. - macOS Unity 6000.3+ path discovery: Roslyn binaries moved to
Resources/Scripting/and are now probed correctly. - Concurrent
execute_editor_scriptcalls no longer collide on temp files (per-call GUID subdirectory). - Pipe-buffer deadlock fixed when stderr fills before stdout is drained.
Thanks to @Sandersm90 for the comprehensive PR (#6).
v1.3.1 — Screenshot capture fix & async capture_frames
What's New
- Fix:
get_game_screenshot/capture_framesnow read directly from the Game View's internal RenderTexture via reflection, eliminating editor chrome and tiling artifacts that crept in when theScreenCapture.CaptureScreenshotAsTexture()timing was off - Rework:
capture_framesis now async — it returns acapture_idimmediately, and the newget_captured_framestool retrieves frames (including partial progress for long captures) - Graceful fallback to camera-render when the Game View isn't available (edit mode, etc.)
- Session auto-purge (60s TTL) skips in-flight captures, so long runs aren't evicted mid-flight
Thanks to @Sandersm90 for the contribution!
v1.3.0 — Cross-platform support & screenshot fix
What's New
- Fix:
simulate_key/simulate_mouse/simulate_axisnow work on Linux/macOS via Input System (QueueStateEvent) - Fix:
get_game_screenshotnow captures ScreenSpaceOverlay canvases in play mode - Win32 path unchanged for Windows users
Thanks to @Sandersm90 for the contribution!
v1.2.1
Bug Fixes
- Unity 2022.3 backward compatibility: Fixed compilation errors when importing the plugin in Unity versions prior to Unity 6
Rigidbody.linearDamping/angularDamping→drag/angularDrag(pre-Unity 6)Rigidbody2D.linearDamping/angularDamping→drag/angularDrag(pre-Unity 6)Collider2D.compositeOperation→usedByComposite(pre-Unity 6)- Uses
#if UNITY_6000_0_OR_NEWERpreprocessor directives
Tested on Unity 2022.3.62f3 and Unity 6.
v1.2.0
What's New
--lite mode for MCP clients with tool limits
The server now supports a --lite flag that registers only 76 core tools, staying well under the 100-tool limit imposed by some MCP clients (e.g., Antigravity).
Usage: Add --lite to server args in your MCP client config:
{
"mcpServers": {
"unity-mcp-pro": {
"command": "node",
"args": ["path/to/server/dist/index.js", "--lite"]
}
}
}Lite mode core tools (76 tools):
Project, Scene, GameObject, Script, Editor, Prefab, Material, Physics, Lighting, UI, Build, Debug, Screenshot
Full mode (275 tools):
All tools registered as before — no changes to full mode behavior.
Bug fixes (from v1.1.1)
- Timeline asmdef reference fix
- PostProcess reflection fix
- AI waypoint dependency fix
v1.0.0
Unity MCP Pro Plugin v1.0.0
147 tools | 24 categories | 6 resources for AI-powered Unity development via the Model Context Protocol.
Highlights
- 24 tool categories: Project, Scene, GameObject, Script, Editor, Prefab, Material, Physics, Lighting, UI, Animation, Build, Batch, Audio, Analysis, Navigation, Particle, Package, Terrain, Debug, Input, Screenshot, Runtime, Testing
- 6 MCP resources for live Unity state
- Dynamic C# execution (
execute_editor_script,execute_game_script) - Multi-editor support (ports 6605–6609)
- Unity 2021.3 LTS+ / Unity 6 compatible
Installation
This repository contains the Unity plugin only. Copy the Editor/ folder and package.json into your Unity project's Assets/ directory.
For the full package (plugin + MCP server), visit itch.io.