[BUG] Preview MCP dev server killed silently after ~1h idle — regression in Claude Desktop 1.22209.3 (was fine on 1.21459.0)

Status Open
Reported on v2.1.187
Maintainer reply None cached
Activity 0 comments · opened Jul 21, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

A background Vite dev server launched via the Preview MCP preview_start tool is being killed silently after ~1 hour of idle time. Nothing is logged — the Preview pane shows no error and the underlying terminal shows no error. First symptom is navigating to another route in the served app returning "unable to reach" (connection refused). preview_list at that point reports the server as stopped. Happened 2× today; the machine was awake the entire time (no sleep, no lid close).

What Should Happen?

A background dev server started via Preview MCP should stay running until either (a) I explicitly preview_stop it, (b) it crashes with an error surfaced in the Preview pane, or (c) the harness kills it and reports why (idle threshold, resource pressure, etc.). Silent death with no log entry is the problem.

Error Messages/Logs

None. Preview pane and terminal both had no output at the time of death. The only observable signal was the browser's "unable to reach" on next navigation and preview_list showing the server stopped.

Steps to Reproduce

  1. In a Vite/React project, add a .claude/launch.json entry:

{ "name": "vite-dev-design", "runtimeExecutable": "npm", "runtimeArgs": ["run", "dev:design"], "port": 5173, "autoPort": true }

  1. In Claude Code (Desktop), call preview_start for that entry and confirm the served page renders in the Preview tab.
  2. Leave the machine awake (no sleep, no lid close) and do not interact with the Claude conversation or the Preview tab for ~1 hour.
  3. Navigate to another route in the served app → "unable to reach".
  4. preview_list → server is stopped. No log entry indicating why.

Reproduced 2× today on the same launch.json + repo that ran fine for weeks on the prior Claude Desktop version.

Claude Model

Opus

Is this a regression?

Yes, this worked in a previous version

Last Working Version

1.21459.0

Claude Code Version

2.1.187 (Claude Code)

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

PowerShell

Additional Information

Ask
Is there an idle-based process reaper in Preview MCP? If so, what's the threshold, and is it configurable in launch.json / user settings?

View original on GitHub ↗