Linux web app, separate dev servers from the base and head checkouts; fresh isolated databases, T3CODE_DEV_SEED=0. Real Cursor SDK using injected account credentials. Browser viewport 1280x800, light theme, device scale 2. Published media crops the bottom 150 CSS pixels to remove private runtime model labels; conversation results are unmodified.
The issue's minimal line-delimited JSON-RPC fixture was extended with one callable proof_marker tool and a second server, so live discovery and disabled-server handling could both be observed. No Cursor IDE validation was performed.
Run seed.py once before the two sides. The scripts use their own directory as the synthetic fixture root. Enable Cursor in each isolated server's settings. run-side.sh documents the exact two prompts and CLI operations used (the actual capture run sent asynchronously to show streaming in the browser). Before the second turn, disable-secondary.py writes secondary to the project-specific Cursor mcp-disabled.json. Only these synthetic projects are affected.
Head first turn: both servers initialized, listed tools, and received tools/call. Head second turn: only repro initialized, listed tools, and received tools/call. Base first turn: live discovery error; tools/call reports server does not exist. Base second turn: same enabled-server failure, disabled secondary unavailable.
AI-assisted; verified with the tests and tools listed above.
