MCP plugin process not terminated on disable, uninstall, or restart — causes browser tab spam (macOS)

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Related to the closed thread: MCP server process is not terminated

That bug was acknowledged in Nov 2025 but appears unresolved. My case adds three new data points:

  1. Plugin uninstall does not kill the process
    The original report covers the toggle. In my case, fully uninstalling the plugin via the Plugins panel also leaves the process running.

  2. Cursor restart relaunches the process
    The orphaned process is not just left running — Cursor actively relaunches it on the next startup, even after the plugin is uninstalled.

  3. Active user-facing damage (not just a memory leak)
    The Wix MCP plugin (@wix/mcp-remote) opens a browser tab on every auth retry with no backoff. Combined with Cursor relaunching the process on every restart, this produced continuous browser tab spam that made Cursor unusable until I manually killed the process with pkill -f “mcp-remote” and neutered the plugin’s .mcp.json cache file.

Steps to Reproduce

  1. Install the Wix plugin via Cursor Plugins panel
  2. Open any workspace — Cursor spawns: npx @wix/mcp-remote@latest https://mcp.wix.com/mcp on port 10775
  3. Disable the plugin toggle in the Plugins panel
  4. Run: lsof -i :10775 — process is still running
  5. Fully uninstall the plugin via the Plugins panel
  6. Process still running (confirmed via lsof and ps aux | grep wix)
  7. Restart Cursor — process is relaunched despite plugin being uninstalled
  8. Browser receives a new OAuth tab on every auth retry cycle with no rate limiting

Expected Behavior

Disabling or uninstalling a plugin should immediately terminate its associated MCP server process. At minimum, the process should not be relaunched after a full Cursor restart when the plugin is uninstalled.

Operating System

MacOS

Version Information

Version: 3.6.21 (Universal)
VS Code Extension API: 1.105.1
Commit: e7a7e93f4d75f8272503ecf33cedbaae10114a10
Date: 2026-05-28T21:45:36.072Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
xterm.js: 6.1.0-beta.220
OS: Darwin arm64 25.3.0

For AI issues: which model did you use?

n/a

Does this stop you from using Cursor

Yes - Cursor is unusable

This is a confirmed bug. Your report touches two related issues our team is actively fixing:

  1. MCP process not killed on disable/uninstall - there’s a bug in how Cursor cleans up MCP server processes during lifecycle events.

  2. Stale config causes re-spawn on restart - MCP server configurations are cached internally, separate from the plugin’s config files. After uninstalling, this cache causes Cursor to re-launch the server on next startup.

The browser tab spam is amplified by the Wix plugin’s @wix/mcp-remote OAuth retry loop (no backoff), but the root cause is on Cursor’s side.

If the process comes back after restart:

It sounds like your immediate fix (pkill + clearing the .mcp.json) worked. However, the stale internal cache may still trigger a re-spawn on your next restart. If that happens:

  1. Fully quit Cursor (Cmd+Q)

  2. Back up first: cp ~/Library/Application\ Support/Cursor/User/globalStorage/state.vscdb ~/Desktop/state.vscdb.backup — this file stores cached state including your chat history, so save a copy before deleting it.

  3. Delete it: rm ~/Library/Application\ Support/Cursor/User/globalStorage/state.vscdb

  4. Relaunch Cursor

This clears the stale internal cache that drives the re-spawn loop. Let me know if the issue persists after this.