Changes in MCP Server not detected until cursor restart

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

When editing an MCP server—for example, when adding a new endpoint—the new endpoint is not detected if we disable and re-enable the server in the Customized MCP section or click Refresh.

Previously, perhaps one or two years ago, when this area looked different, it was possible to enable and disable individual MCP tools. There was a separate toggle button next to each tool, and this still worked at that time. In the current version, this option no longer exists. We can only enable or disable the MCP JSON, which I believe has the same effect as before.

However, the Refresh button at the top does not change anything. As soon as a new endpoint is added, it is not detected.

This is not an MCP-side issue. The endpoint is definitely available, and the MCP has been rebuilt. Something appears to be cached or is not being detected again.

Cursor must be restarted completely, and restarting just one window is not sufficient. For example, if three windows are open and only the window in which we want to use the endpoint is restarted, the endpoint is still not detected. All Cursor windows must be closed and restarted completely.

It seems that Cursor has some kind of internal caching or similar behavior that prevents the change from being detected. This is unacceptable, because if four windows are open, we must first close all of them before any changes to internal MCP servers are recognized.

Steps to Reproduce

see desc

Operating System

Windows 10/11

Version Information

Version: 3.22.7 (user setup)
VS Code Extension API: 1.128.0
Commit: 37076c6c3f9e253c0fa2305197e45befd13a2260
Date: 2026-09-24T05:01:24.589Z
Layout: IDE
Build Type: Stable
Release Track: Default
Electron: 42.10.0
Chromium: 148.0.7778.280
Node.js: 24.18.1
V8: 14.8.178.38-electron.0
xterm.js: 6.1.0-beta.291
OS: Windows_NT x64 10.0.26200

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey @ddd1345, thanks for the report!

This is a known issue we’re tracking, and I’ve added your report to it. Local MCP servers run in a single background process shared by all Cursor windows, and Refresh or toggling the server off and on currently reuses the tool list loaded earlier. That’s why only closing every window picks up your new endpoint.

Until it’s fixed, you can force a fresh tool list without restarting by changing that server’s entry in mcp.json. For example, add or bump a dummy environment variable:

"env": { "MCP_REV": "2" }

For a URL-based server, adding a dummy query parameter to url (like ?rev=2) does the same thing. Bump the value each time you rebuild. Cursor treats it as a new server config and reloads its tools.