Releases: AnkleBreaker-Studio/unity-mcp-plugin
v2.26.0 — SpriteAtlas, self-test overhaul, Unity 6 compat, version fix
What's New
Added
- SpriteAtlas commands — New SpriteAtlas management commands (contributed by @zaferdace in #6)
- Self-test overhaul — Robust test runner with domain reload resume, timeout, try/catch, and probes for all 43 command modules (18 new categories)
Fixed
- Unity 6 compatibility — Resolved 43 CS0618 deprecation warnings: migrated to
FindObjectsByType,Shader.GetProperty*API,NamedBuildTarget, pragma suppression for NavMeshBuilder - Version display — Dashboard and update checker now read version dynamically from
package.jsoninstead of hardcoded value (Fixes AnkleBreaker-Studio/unity-mcp-server#9) - UMA probe — Wrapped in
#if UMA_INSTALLEDto matchMCPUMACommandsguard - Scenario probe — Handles missing MPPM package gracefully
Full Changelog: https://github.com/AnkleBreaker-Studio/unity-mcp-plugin/blob/main/CHANGELOG.md
v2.24.0 — Test Runner & Compilation Errors
What's New
Added
- Unity Test Runner integration — Run EditMode/PlayMode tests, poll results, list available tests via Unity Test Runner API (
testing/run-tests,testing/get-job,testing/list-tests) — by @vatanaksoytezer - Compilation error tracking — Real-time compilation error reporting via
CompilationPipeline, thread-safe with auto-clear on new compilation cycle — by @XuX26
Fixed
- Unity 2021.3 LTS compilation compatibility (
IndexOffor .NET Standard 2.0) - Operator precedence bug (
!IndexOf >= 0→IndexOf < 0)
Full Changelog: v2.23.0...v2.24.0
v2.23.1 - Meta File Fix
What's Changed
Bug Fix
- Added missing
.metafile forMCPWelcomeWindow.cs— The companion.metafile was not included in the previous release, which could cause Unity import issues. This patch adds the requiredMCPWelcomeWindow.cs.metawith a proper GUID.
Full Changelog
v2.23.0 — Welcome Window & Studio Info
What's New
Welcome Window
Added a new Welcome Window that appears on first editor startup, introducing users to:
- AnkleBreaker Studio — who we are and what we're building
- 200+ tools available through the Unity MCP bridge
- Long-term maintenance commitment — we use this plugin daily and will keep it updated
- Premium MCP Library — access to Discord, Jira, Git & GitHub, LinkedIn, Plastic SCM MCPs via GitHub Sponsors ($15/mo Backer tier)
- Quick links to our studio website, consulting site, and Discord community
The window can be permanently dismissed with the "Don't show this again" button and only shows once per editor session.
Links
- ⭐ Star this repo if you find it useful!
- 💜 Become a Sponsor
- 💬 Join our Discord
Full Changelog: v2.22.0...v2.23.0
v2.21.1 — Port Affinity & Heartbeat
Port Affinity & Registry Heartbeat
This release adds plugin-side support for reliable multi-project port management, working in tandem with server v2.22.2.
What's New
Port Affinity — The plugin remembers its last-used port via EditorPrefs and attempts to reclaim it on restart. Each editor consistently uses the same port across restarts, preventing port swaps when multiple Unity projects are open.
Enriched Ping — The /api/ping endpoint now returns projectPath alongside the existing projectName, enabling the MCP server to validate instance identity by both name and path.
Registry Heartbeat — A new heartbeat updates the lastSeen timestamp in the shared instance registry every 30 seconds. This lets the MCP server distinguish between:
- A compiling editor (fresh entry, temporarily unresponsive) → keep connection
- A crashed editor (stale entry, >5 minutes with no heartbeat) → clear and re-discover
Crash Resilience — If Unity crashes mid-compile and OnDisable never fires, the stale registry entry is detected and cleared by the server within 5 minutes.
Requires
- Server v2.22.2+ (for staleness detection and identity validation)
v2.18.0 — Comprehensive Terrain Tools + Dynamic Route Discovery
What's New
Comprehensive Terrain Tools (32 methods)
MCPTerrainCommands.cs expanded from 6 basic methods to 32 comprehensive terrain operations:
- Heightmaps: Set height, flatten, raise/lower with brush, smooth, Perlin noise generation, region get/set, import/export RAW16
- Splat Layers: Add/remove texture layers, paint with brush, fill entire terrain
- Trees: Add/remove prototypes, place trees (random scatter with steepness/altitude filters, or manual positions), clear, get instances
- Details/Grass: Add prototypes (texture or prefab), paint with brush, scatter randomly, clear
- Holes: Paint holes (transparent + non-collidable regions)
- Settings: Modify pixel error, base map distance, detail density, draw distances, etc.
- Infrastructure: Resize terrain, create multi-terrain grids, set neighbor connections, query steepness
_meta/routes Endpoint
New meta endpoint returns all registered routes grouped by category. Enables the MCP server to discover tools dynamically without restart.
Terrain Category
Added "terrain" to MCPSettingsManager (25 total categories).
Requires server v2.19.0+.
v2.17.0 — Response Size Limits & Pagination
What's New
- Response size validation —
SendJson()now checks serialized response size before sending. Warns at 8 MB (soft limit), returns a structured error at 16 MB (hard limit) directing agents to use pagination. - Hierarchy pagination —
GetHierarchy()acceptsmaxNodes(default 5000) andparentPathparameters. Tracks node count during recursion and stops at the limit. Returns pagination metadata. - Search result limits — All search handlers accept a
limitparameter (default 500). Results exceeding the limit are truncated with metadata.
Requires server v2.18.0+
v2.16.0 — Action History, execute_code Fix & Multi-Instance
What's New in v2.16.0
New Features
- Action History system — Track all MCP agent actions with a dedicated EditorWindow (
Window > AB Unity MCP > Action History)- View last 500 actions with timestamp, agent, category, status, and duration
- Filter by agent, category, or search text
- Click to select affected GameObjects in the hierarchy
- Undo actions directly from history
- Copy action details to clipboard
- Optional JSON persistence to
Library/MCPActionHistory.json - Dashboard integration with recent actions summary
Fixes
- execute_code race condition — Added
_executingTicketstracking dictionary to prevent 404 errors when Roslyn compilation takes longer than the ticket cleanup interval - Missing .meta files — Added Unity meta files for all new Action History scripts
Files Added
Editor/MCPActionRecord.cs— Structured action data classEditor/MCPActionHistory.cs— Static global history manager (ring buffer)Editor/MCPActionHistoryWindow.cs— Standalone EditorWindow with filtering & interactions- Dashboard integration in
MCPDashboardWindow.cs - Settings in
MCPSettingsManager.cs
Installation
Unity Package Manager → Add package from git URL:
https://github.com/AnkleBreaker-Studio/unity-mcp-plugin.git
Companion Server
Use with MCP Server v2.17.0 for best experience.
Full Changelog: v2.15.0...v2.16.0
v2.15.0 — Multi-Instance Support
What's New
v2.15.0 — Multi-Instance Support
Run multiple Unity Editor instances simultaneously, each on its own port. Designed for working on several projects at once or multiplayer development with ParrelSync clones.
New: MCPInstanceRegistry System
- Auto-port selection — Each Unity instance picks the first available port from
7890–7899on startup. No manual configuration needed. - Shared instance registry — Every running instance writes its metadata (port, project name, path, PID, Unity version) to
%LOCALAPPDATA%/UnityMCP/instances.json(macOS:~/Library/Application Support/UnityMCP/instances.json). - Automatic cleanup — Instances unregister on stop, quit, or domain reload. Stale entries from crashed processes are cleaned up on next startup.
- ParrelSync clone detection — Clones are automatically detected and labeled throughout the UI.
Dashboard & Toolbar Updates
- Connection status shows active port with auto/manual indicator
- ParrelSync clone indicator displayed below status bar (e.g. "ParrelSync Clone #0")
- New Use Manual Port toggle in Settings — override auto-selection when needed
- Toolbar tooltip and dropdown show port, mode, and clone info
- Settings reorganized into submenu (Auto-Start + Use Manual Port)
How It Works
┌─ Unity Instance A (port 7890)
Claude Cowork Agents ←→ MCP Server (Node.js) ←→───┤
↕ ↕ └─ Unity Instance B (port 7891)
Multiple agents Unity Hub CLI ↕
working in parallel Shared Instance Registry
Compatibility
- Fully backward compatible — single-instance setups work exactly as before
- Requires server v2.15.0+
v2.14.5 — Amplify Shader Editor Full Graph Manipulation
What's New
v2.14.0 — Amplify Shader Editor Expansion
- 14 new Amplify Shader Editor graph manipulation commands: AddAmplifyNode, RemoveAmplifyNode, ConnectAmplifyNodes, DisconnectAmplifyNodes, DisconnectAllAmplifyNode, GetAmplifyNodeInfo, SetAmplifyNodeProperty, MoveAmplifyNode, FocusAmplifyNode, DuplicateAmplifyNode, SaveAmplifyGraph, CloseAmplifyEditor, CreateAmplifyFromTemplate, GetAmplifyMasterNodeInfo
- Amplify toolset expanded from 9 to 23 commands
- Full graph manipulation: add/remove/connect/disconnect/duplicate nodes, set properties via reflection, templates (surface, unlit, URP lit, transparent, post-process)
- Total tool count: 268 tools across 24 categories
v2.14.1–v2.14.5 — Stability Fixes
- v2.14.1: Rewrote GetCurrentGraph to use correct ASE field/property names
- v2.14.2: Fixed reflection type initialization — resolved Object reference errors
- v2.14.3: CloseAmplifyEditor defaults to save=true; smart path detection for SaveAmplifyGraph
- v2.14.5: Cached assembly scanning for non-Amplify projects
Compatibility
- Projects without Amplify Shader Editor work perfectly — graceful degradation, no compile-time dependencies
- Requires server v2.14.5+