Repository navigation
Debugging via MCP 0.4.0
Pre-release
Pre-release
0.4.0 — Several Visual Studios (preview)
Added
- Several Visual Studios, one agent each. The MCP server picks the Visual Studio whose solution folder relates to the
folder the agent runs in (the agent in the repository root, the solution insrc\, works too);vs_selectstill
overrides. - An agent whose folder is not the solution's must be approved once by the Visual Studio owner (info bar), per
connection. - One agent at a time per Visual Studio: the first state-changing command (breakpoint, build, start, attach, ...) takes
it, a second agent getsin_use.vs_release, a closed connection or Disconnect AI frees it. The status bar and
vs_instancesshow who holds it. - The extension carries the MCP server. When Visual Studio starts it copies the server to
%LOCALAPPDATA%\DebugViaMcp\bin\<build>and writes a launcher,%LOCALAPPDATA%\DebugViaMcp\debugviamcp.cmd, whose path
never changes. There is no separate tool to install (the server needs the .NET 10 runtime), updates do not touch a
server an agent is still running, and uninstalling the extension is never blocked by a running agent. - Extensions → Debugging via MCP → Set Up AI Agent… opens a window: it checks the .NET runtime and the installed
server, lists AI clients (Claude Code, Codex, Cursor, another MCP client) and, for the one you pick, shows the command or
configuration to copy. It runs nothing and changes no client's settings. The separate Copy MCP Setup Command is gone. - Visual Studio only: Visual Studio Code is not supported, and the documentation says so.
scripts\reinstall-vsix.ps1stops a stuck VSIXInstaller after-InstallerTimeoutSeconds(default 180) instead of
hanging, and refuses to start while another VSIXInstaller runs.- The Log retention (days) option now also applies to the MCP server's own log files (
mcp-*.log), not only to the
extension's logs and the audit trail. debug_start(project)starts the named project and leaves the solution's startup project as it was.debug_start,debug_attachandbp_setreturnwarningswhen the build is older than the sources; Visual Studio
offers an optional Build bar (hidden while debugging, gone once the project is up to date).
Fixed
- The out-of-date check no longer compares
deps.json/runtimeconfig.json(incremental builds do not rewrite them) with the
sources: only the assembly and the symbols count. Found in a real Visual Studio run. - A refused connection approval or a disconnected AI ends the call instead of being asked twice; a read that waited for an
answer is refused if another agent took the Visual Studio meanwhile. debug_statusbrings the agent's session state in step with Visual Studio after a period in which another agent held it.debug_start(project)keeps a "Multiple startup projects" setting intact.- The Visual Studio taskbar button flashes when a consent question appears while Visual Studio is in the background; the status
bar shows plain text when Visual Studio 2026 hides its custom status bar panel. - A timed-out
evalexplains the 5-second limit and what to do instead. - Set Up AI Agent never tries to update a running tool (it would fail halfway); it names the running agent sessions.
Changed
- The out-of-date bar says "Debugging via MCP: … is out of date: the built program does not match the sources. Build it now?" and its
button runs a normal incremental Build of that project (it used to clean and rebuild, which a stale output does not need). - The consent question bar also starts with "Debugging via MCP:", so both bars show which extension is asking.
- No out-of-date warning and no Build bar while nothing is running and Visual Studio builds by itself as debugging starts (its option
On Run, when projects are out of date = Always build, the default): it would be a false alarm. They stay when a program is running
(it keeps its old binary) or when that option is Never build / Prompt to build. - The product is now called Debugging via MCP. The MCP server (command
debugviamcp) travels inside the extension, which
shows as "Debugging via MCP", and the data folder is%LOCALAPPDATA%\DebugViaMcp. - The settings moved to Visual Studio's settings experience: Tools → Options → All Settings → Debugging → Debugging via
MCP. The setup window stays in Extensions → Debugging via MCP (Set Up AI Agent…). - Settings apply as soon as they change. A stored Mutate = Allow counts only after you confirm it in a dialog (also at
startup); until then Visual Studio keeps asking, so a value written to the settings file never silently lets the agent
change program state. - Two new settings cap how long an agent may keep Visual Studio waiting: Longest wait for a break (
debug_start,debug_continue,
debug_step,debug_run_to,debug_wait; 5–600 s, default 120) and Longest wait for a build (vs_build; 30–1800 s, default 600).
The agent may ask for less, never for more; a longer build keeps running and the agent can ask again. Together with the existing
Consent timeout they are in the settings page of Visual Studio. - Wire protocol 2.3 (additive): the handshake carries the two limits. Older extensions or servers keep the built-in 120 s / 600 s.
- Wire protocol 2.2 (additive). A 2.1 extension keeps working with the 0.4 tool; the new tools then report
unsupported. - Break and mode events go only to the agent that holds the Visual Studio.
vs_instanceslists availability (free/in_use), the holder and whether the folder matches.