Skip to content

Release 1.4.0

Latest

Choose a tag to compare

@CoderGamester CoderGamester released this 24 Jul 08:44

🆕 What is New

  • Added the Unity Dashboard MCP App with Play Mode controls, scene hierarchy browsing, console and package views, GameObject selection, focus filtering, an inspector panel, and bidirectional agent context. The release includes the show_unity_dashboard tool, ui://unity-dashboard resource, and unity_dashboard prompt (#109).
  • Added get_play_mode_status and set_play_mode_status for starting, pausing, stepping, and stopping Play Mode, plus tool access to scene hierarchy and console data used by the dashboard (#109).
  • Added project-local auto-configuration for Cursor, Claude Code, and Codex CLI, with portable project-relative paths suitable for Git-shared MCP configuration (a32e47d).
  • Added OpenCode auto-configuration and relative-path support for GitHub Copilot, OpenCode, and manually copied workspace configurations (ec0e1e8, 320e443).
  • Added Unity bridge request diagnostics and expanded lifecycle, restart, tool, dashboard, resource, and release-metadata test coverage.

🛠️ What Was Fixed

  • Fixed update_component support for private serialized fields, inherited fields, nested property paths, and asset references resolved by path or GUID (#106).
  • Bounded deep and oversized get_gameobject responses with configurable depth/component scopes, a 5 MB safety ceiling, and explicit truncation markers instead of dropping the MCP connection (dfc623a).
  • Moved WebSocket request execution onto Unity's main thread to prevent Editor API access from corrupting the Inspector, then replaced cross-thread delayCall mutation with an update-drained concurrent queue so requests continue while the Editor is unfocused (#139, #151).
  • Kept the Windows Editor loop ticking while minimized or unfocused. The native timer now starts only after the WebSocket listener succeeds and stops on failed startup, shutdown, disposal, assembly reload, Editor quit, and Play Mode transitions; its callback is rooted, exception-guarded, and reports Win32 timer errors (#150).
  • Restarted the WebSocket server after entering Play Mode when domain reload is disabled, while preserving the existing reload-enabled lifecycle (#152).
  • Removed invalid WebSocket origin headers that prevented some Codex and MCP clients from connecting (#149).
  • Hardened WebSocket shutdown, restart cleanup, retry cancellation, failed-start handling, and request diagnostics to avoid stale listeners and duplicate restart attempts.
  • Fixed a Unity .meta GUID collision with Meta XR SDK and Unity AI Assistant packages (#133).
  • Updated object lookup and response IDs for Unity's newer EntityId API while retaining InstanceID behavior on older supported Editors, and migrated material inspection to Unity's public shader-property APIs to remove Unity 6 compatibility warnings.
  • Reduced noisy bridge logging, disabled info logs by default, and made batch-tool lookup independently testable.

🔄 What Changed

  • Clarified global versus project-local MCP configuration and documented portable, team-shared configuration variants (#140).
  • Synchronized the Unity package, Node server, and MCP runtime versions at 1.4.0.
  • Removed the invalid npm publication declaration from the legacy registry manifest.
  • Preserved Unity 2022.3 compatibility for this final custom WebSocket bridge release.

New Contributors

Full Changelog: 1.3.0...1.4.0