David Sarno
4f9017d676
VSCode MCP: switch to mcp.json top-level servers schema; add type=stdio; robust parse/merge; Cursor/Windsurf UV gating UI; Claude Code UX polish and NVM detection
2025-08-12 20:56:22 -07:00
David Sarno
5965158533
Unity MCP: Claude Code UX improvements: dynamic not-found state with inline help link; NVM auto-detection; path picker override; hide picker after detection; remove auto-connect toggle.
2025-08-12 19:04:47 -07:00
dsarno
86198a0484
Merge pull request #206 from dsarno/feat/local-resolution-and-claude-cli
...
Feat: Local-only package resolution + Claude CLI resolver; quieter installer logs
2025-08-12 12:19:02 -07:00
David Sarno
bd6114b436
fix(claude): treat 'already exists' as success; improve IsClaudeConfigured using ExecPath on all OSes
2025-08-12 12:14:48 -07:00
David Sarno
efd146ab53
fix: Windows define UNITY_EDITOR_WIN; async stdout/stderr in TryRun and RepairPythonEnvironment; use EnvironmentVariables for PATH; prepend Unix PATH only on macOS/Linux; fix duplicate .meta GUIDs
2025-08-12 11:56:46 -07:00
David Sarno
f6f8b24371
chore(uv): prepend ~/.local/bin and common bins to PATH for 'which uv' in GUI env
2025-08-12 10:48:46 -07:00
David Sarno
6b3a20dd78
chore(package): add .meta files for new helpers and bump version to 2.0.1
2025-08-12 10:34:34 -07:00
dsarno
5b8c1a1cd0
Merge branch 'CoplayDev:main' into feat/local-resolution-and-claude-cli
2025-08-12 10:25:14 -07:00
David Sarno
8984ab95bc
feat: local-only package resolution + Claude CLI resolver; quieter install logs; guarded auto-registration
2025-08-12 08:32:51 -07:00
dsarno
642210cc2a
Merge pull request #202 from dsarno/fix-read-console
...
Fix: ReadConsole tool: stable log severity classification and reliable console reads across Unity versions
2025-08-11 17:43:15 -07:00
David Sarno
ae87e3f3b2
read_console: remove dead types.Contains("all") branch; compute want directly from unityType (Exception/Assert treated as errors)
2025-08-11 17:26:51 -07:00
David Sarno
46f616df90
read_console: correct compiler diagnostic categorization (CSxxxx), preserve Debug.Log as Log without mode fallback, add explicit Debug.Log detection helper
2025-08-11 16:57:41 -07:00
dsarno
6439902d8d
Merge branch 'CoplayDev:main' into fix-read-console
2025-08-11 13:59:17 -07:00
dsarno
0743e64a3c
Merge pull request #201 from dsarno/main
...
Update package.json version to 2.0.0
2025-08-11 12:32:02 -07:00
dsarno
a506f9b346
Update package.json version to 2.0.0
2025-08-11 12:30:36 -07:00
dsarno
bbbc26a17f
Merge pull request #192 from dsarno/feat/bridge-stability
...
Harden MCP Bridge: reliable reloads, sticky port, embedded server, cleaner Auto‑Setup UI
2025-08-11 11:46:01 -07:00
David Sarno
1938756844
server: centralize reload-aware retries and single-source retry_after_ms via config; increase default retry window (40 x 250ms); preserve structured reloading failures
2025-08-10 22:49:24 -07:00
David Sarno
dc6171dfe6
ReadConsole: lock Debug.Log classification to Log; avoid bit-based fallback when stacktrace shows Debug:Log
...
- Detect explicit Debug.Log in stacktrace (UnityEngine.Debug:Log)
- Do not downgrade/upgrade to Warning via mode bits for editor-originated logs
- Keeps informational setup lines (e.g., MCP registration, bridge start) as Log
2025-08-10 20:12:45 -07:00
David Sarno
a40db48132
ReadConsole: stable severity classification and filtering across Unity versions
...
- Classify severity via stacktrace/message first (LogError/LogWarning/Exception/Assertion), with safe fallback to mode-bit mapping
- Fix error/warning/log mapping; treat Exception/Assert as errors for filtering
- Return the current console buffer reliably and remove debug spam
- No changes outside ReadConsole behavior
2025-08-10 19:45:24 -07:00
dsarno
b179ce1ed8
Merge branch 'main' into feat/bridge-stability
2025-08-10 11:57:07 -07:00
dsarno
97614e7277
Update README.md
...
Added new image of MCP Editor window to README
2025-08-09 15:54:55 -07:00
dsarno
24ed3a2e2a
docs: update README(s) for Auto-Setup and dev cache path
2025-08-09 15:38:11 -07:00
David Sarno
07b35837b7
Bridge: deferred init, stop-before-reload, breadcrumb logs; stable rebinds.
...
Editor: auto-rewrite MCP client config when package path changes.
Server: heartbeat-aware retries, structured {state: reloading, retry_after_ms}, single auto-retry across tools; guard empty calls.
Repo: remove global *~ ignore (was hiding UnityMcpServer~), track tilde server folder (Unity still excludes it from assemblies).
2025-08-09 15:09:49 -07:00
David Sarno
32f513f10d
Merge branch 'feat/bridge-stability' of https://github.com/dsarno/unity-mcp into feat/bridge-stability
...
* 'feat/bridge-stability' of https://github.com/dsarno/unity-mcp :
Bridge logs: add bold blue UNITY-MCP prefix; gate PortManager logs behind Debug Logs toggle; improve Python and UV detection on Windows (flex versions, where.exe/Path scan); tidy installer messages
2025-08-09 13:00:26 -07:00
David Sarno
9da9739751
Package Python server under UnityMcpServer~; remove redundant .meta files; delete old root UnityMcpServer; update editor lookup for tilde path; adjust deploy/restore scripts; remove orphan meta
2025-08-09 12:49:32 -07:00
David Sarno
c0de38e1e7
Merge upstream/main: CoplayDev rebrand with bridge stability improvements
...
This merge combines upstream's organizational rebrand and updates with
our comprehensive bridge stability improvements:
**From Upstream:**
- CoplayDev organizational rebrand (README, LICENSE, documentation)
- Updated logo and deployment scripts
- Python version pinning (.python-version file)
**From Our Branch (Preserved):**
- Comprehensive bridge stability improvements (threading, heartbeat, retries)
- Enhanced debugging and diagnostic features
- Embedded server installation approach (more reliable than git-based)
- Broader Python compatibility (>=3.10 vs >=3.12)
- Advanced port management with per-project persistence
- Auto-setup and connection reliability features
- Robust error handling and recovery mechanisms
**Key Technical Decisions:**
- Used our comprehensive UnityMcpBridge.cs (625 lines vs 473) with all stability features
- Maintained embedded server approach over upstream's git-based installer
- Preserved broader Python compatibility (>=3.10) for better accessibility
- Used our optimized connection settings and retry logic
- Kept our user-centric server installation approach (on-demand vs automatic)
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-09 12:05:47 -07:00
Jos van der Westhuizen
22ca5a79b2
Merge pull request #194 from CoplayDev/jos/readme
...
Update README.md
2025-08-09 09:20:54 -07:00
Jos van der Westhuizen
9a5d62128a
Update README.md
2025-08-09 12:20:05 -04:00
dsarno
4c72309dc8
Bridge logs: add bold blue UNITY-MCP prefix; gate PortManager logs behind Debug Logs toggle; improve Python and UV detection on Windows (flex versions, where.exe/Path scan); tidy installer messages
2025-08-08 15:09:18 -07:00
David Sarno
f24e124c15
MCP: Embedded server reliability and UX\n\n- Embed-first installer: copies embedded server, adds RepairPythonEnvironment() (deletes .venv, runs 'uv sync'); robust uv path discovery; macOS install path -> Application Support\n- UI: Server Status shows Installed(Embedded); Python missing warning with install link; Repair button tooltip; header Show Debug Logs; cleaned layout\n- Python: unpin .python-version; set requires-python >=3.10 in both pyprojects\n- Dev: improved package/dev path resolution
2025-08-08 14:16:25 -07:00
Marcus Sanatan
3288418bbf
chore: update package metadata and license to CoplayDev organization
2025-08-08 15:54:43 -04:00
Marcus Sanatan
a0bef61224
Merge pull request #191 from msanatan/feature/update-package-and-docs
...
Update docs and package
2025-08-08 15:49:08 -04:00
Marcus Sanatan
49b0a5397d
docs: add Windsurf to list of supported code editors
2025-08-08 15:42:52 -04:00
Marcus Sanatan
7087797952
docs: improve README formatting and add note about package reinstallation
2025-08-08 15:39:12 -04:00
Marcus Sanatan
823bae624f
docs: fix escape character in README error message
2025-08-08 15:19:11 -04:00
Marcus Sanatan
94df819e61
fix: update package name from com.CoplayDev.unity-mcp to com.coplaydev.unity-mcp to comply with Unity package naming standards
2025-08-08 15:13:47 -04:00
Marcus Sanatan
5d148a7462
chore: update repository URLs and package name to use correct CoplayDev casing and main branch
2025-08-08 15:06:35 -04:00
Marcus Sanatan
6faa55f825
chore: update package namespace from justinpbarnett to coplaydev
2025-08-08 14:59:30 -04:00
Marcus Sanatan
cf86964d4d
chore: revise documentation
2025-08-08 14:58:41 -04:00
Marcus Sanatan
c08e4a42a8
Merge branch 'master' into feature/update-readme
2025-08-08 14:35:45 -04:00
David Sarno
06f271926b
feat(editor): 2x2 layout (Server/Bridge | Clients/Validation), Auto-Setup with Connected ✓ state; add Debug Logs toggle and gate verbose logs
...
fix(bridge): reuse stored port in StartAutoConnect; guard listener stop to avoid ObjectDisposedException
chore(clients): reorder dropdown to Cursor, Claude Code, Windsurf, Claude Desktop, VSCode
2025-08-08 11:23:45 -07:00
David Sarno
2f387d3417
chore(ui): rename 'Re-Run Client Setup' to 'Bind to Clients'
2025-08-08 10:49:01 -07:00
David Sarno
10903a2d48
fix(setup): reuse stored project port in StartAutoConnect to avoid port changes during client setup
2025-08-08 10:35:00 -07:00
David Sarno
f4bc7cd4fd
fix(ports): never hop to default when stored port busy; prefer stored port and let bind micro-retry handle release to avoid port swapping on recompiles
2025-08-08 08:37:02 -07:00
David Sarno
1b892dcf49
fix(ports): write both hashed and legacy port files; compare project paths case-insensitively to prevent sticky-port drift across reloads
2025-08-08 08:32:20 -07:00
David Sarno
85202d4ccb
fix(editor): only treat dev mode when manifest uses file: path for package; remove dev-mode logs under UPM
2025-08-08 08:24:50 -07:00
David Sarno
57592017ae
fix(bridge): prefer persisted project port at start to avoid initial 6400 blip after UPM import
2025-08-08 08:18:33 -07:00
David Sarno
5c632f0ab3
fix(package): add UnityMcpServer folder meta; remove stray egg-info meta
2025-08-08 08:12:57 -07:00
David Sarno
a65f10383a
feat(bridge): embed Python server into package and remove Git-based installer
...
- Switch ServerInstaller to embedded copy-only (no network)
- Simplify Editor UI server status to 'Installed (Embedded)'
- Vendor UnityMcpServer/src into UnityMcpBridge/UnityMcpServer/src for UPM distribution
- Keep bridge recompile robustness (heartbeat + sticky port)
2025-08-08 08:08:30 -07:00
David Sarno
a0fd9199bb
Add meta for PackageInstaller so Unity includes it in package cache
2025-08-07 19:09:52 -07:00