[BUG] Custom connectors with identical MCP serverInfo.name are deduplicated, even when their endpoint URLs differ

Open 💬 0 comments Opened Jul 7, 2026 by kuboon

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?

When registering two different MCP servers as separate custom connectors, if both servers return the same serverInfo.name (and possibly version) in their initialize response, only one of the two connectors ends up usable — even though they have distinct endpoint URLs and distinct OAuth issuers.

This happens with any MCP server implementation that hardcodes a static serverInfo.name (e.g. just the product name, like "outline"), which is common — the MCP spec describes serverInfo.name as identifying the server software, not a specific deployment/instance. Two different deployments of the same open-source server (e.g. two self-hosted instances of the same product at different domains) will legitimately return identical serverInfo.

What Should Happen?

Each custom connector should be tracked independently by its connector/endpoint URL (and/or OAuth issuer, which per the OAuth discovery metadata — /.well-known/oauth-authorization-server — is already unique per deployment). serverInfo.name/version from the MCP initialize handshake should not be used as a dedup key, since the MCP spec does not guarantee these values are unique per deployment — only per server software.

Error Messages/Logs

Steps to Reproduce

Stand up two independent instances of the same MCP-server-backed product at different URLs (e.g. https://a.example.com and https://b.example.com), where both instances report the same serverInfo: { name: "some-product", version: "1.2.3" } in their initialize response.
Add instance A as a custom connector in Claude (claude.ai connector settings), complete OAuth.
Add instance B as a separate custom connector, complete OAuth.
Observe: only one of the two connectors is actually usable/listed with its tools — the other appears to have been treated as a duplicate of the first.

Claude Model

Not sure / Multiple models

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

Claude 1.18286.2 (b682d9) 2026-07-07T00:03:05.000Z

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗