MCP servers appear duplicated when workspace root is the user's home directory

,

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Bug Description

When the workspace root is set to the user’s home directory (~), all MCP servers defined in ~/.cursor/mcp.json appear duplicated in the Tools & MCP settings panel — once as “Global” and once as “Project-level”.

Root Cause

Cursor loads MCP server configurations from two paths:

  1. Global config: ~/.cursor/mcp.json
  2. Project config: <workspace_root>/.cursor/mcp.json
    When the workspace root is the home directory (~), both paths resolve to the exact same file. Cursor reads it twice without deduplication, causing every server to appear twice in the UI.

Steps to Reproduce

Steps to Reproduce

  1. Open Cursor via SSH (or locally) with the home directory as the workspace root (e.g., /home/username or ~)
  2. Define one or more MCP servers in ~/.cursor/mcp.json
  3. Open Settings → Tools & MCP
  4. Every server appears twice — one enabled (from global scope) and one disabled (from project scope), or both shown side by side

Expected Behavior

Expected Behavior

Each MCP server should appear only once in the UI, regardless of whether the global and project config paths resolve to the same file. Cursor should deduplicate entries when both paths point to the same physical file (e.g., by comparing resolved/canonical paths).

Actual Behavior

Every server in ~/.cursor/mcp.json is listed twice — once under the global scope and once under the project scope.

Screenshots / Screen Recordings

Operating System

Linux

Version Information

Environment

  • Cursor version: Latest (SSH Remote)
  • OS: Linux (RHEL/CentOS 9 — kernel 5.14.0)
  • Connection: SSH Remote
  • Workspace path: /home/<username> (home directory)

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey, thanks for the detailed report with the root cause, it really helps. I can reproduce it and the bug is real: both paths ~/.cursor/mcp.json as global and <workspace>/.cursor/mcp.json as project resolve to the same file, but the IDE doesn’t dedupe by canonical path. That’s why you see duplicate entries in Tools & MCP. Interestingly, the CLI and agent loader already have this dedupe, but the IDE doesn’t. I’ve reported it internally to the team, but I can’t share an ETA for a fix yet.

A couple workarounds while we wait:

  • Open a subfolder as the workspace instead of ~, for example ~/projects/.... Then the paths won’t match and the duplicates go away.
  • If it works for you, keep the MCP config only at the project level <workspace>/.cursor/mcp.json, but this won’t help for the home dir for obvious reasons.

Functionally the servers work fine, it’s just UI cosmetics. Once I have an update on the fix, I’ll reply in the thread.