Allow disabling claude.ai MCP connectors per-client (Claude Code vs Chat)
Problem
Claude.ai MCP connectors (e.g., Canva, Clinical Trials, CMS Coverage, PubMed) are managed exclusively at the account level via the claude.ai web interface. When enabled on your account, they automatically connect in every Claude Code session — there is no local setting to disable specific connectors for Claude Code only.
This means if you want connectors available in Claude.ai Chat/Cowork but not in Claude Code (or vice versa), you're out of luck. The only option is to remove them from your entire account, which affects all clients.
What I tried (none of these work)
permissions.denyin~/.claude/settings.json— only blocks tool calls; servers still connect and appear in the status bardeniedMcpServerswithserverName— the regex constraint (^[a-zA-Z0-9_-]+$) cannot match the actual server names which contain dots and spaces (e.g.,"claude.ai Clinical Trials")deniedMcpServerswithserverUrl— had no effect on cloud connectors
Root cause
At startup, Claude Code unconditionally fetches all connectors from https://api.anthropic.com/v1/mcp_servers and connects to every one returned. No local configuration is consulted before or after this fetch to filter which connectors should actually connect.
Proposed solution
Add a local setting (in ~/.claude/settings.json or per-project settings) to disable specific claude.ai connectors by name, e.g.:
{
"disabledCloudMcpServers": [
"claude.ai Canva",
"claude.ai Clinical Trials",
"claude.ai CMS Coverage",
"claude.ai PubMed"
]
}
Alternatively, extend deniedMcpServers to support the actual server names used by cloud connectors (dots and spaces), or filter by the server ID (e.g., mcpsrv_01KYB5Pia7hUhU1EEJRVruaa).
Why this matters
- Cloud connectors add startup latency (each one needs a connection handshake)
- Irrelevant connectors clutter the status bar and the tool/context window
- Users may want different connector sets for different workflows (coding vs. research)
- The current behavior is surprising — users expect local config to control local behavior
Environment
- Claude Code v2.1.45
- macOS (Darwin 25.2.0)
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗