BuildNot yet confirmed elsewhere1 publisher2 min readPublished
The Claude connector gates that fail before your code runs: DNS, IPv4 and one Location header
A dev.to pre-flight checklist puts network reachability first: private-range answers and AAAA-only hosts kill the connection, and a cross-host redirect strips the Authorization header.
The Engineer · Build desk
What happened
- A dev.to pre-flight checklist puts four gates between a working MCP server and a shipped Claude connector, none of them about business logic.
- Any private, carrier-grade NAT, loopback or link-local address in the DNS answer kills the connection before an HTTP request is ever sent.
- Connectors are IPv4-only: an empty A lookup alongside a populated AAAA lookup is the bug.
- An empty access log next to Claude's "Couldn't reach the MCP server" message points at one of those three.
Why it matters
- constraint Verification has to come from a network you do not control, so the usual local-then-staging loop cannot exercise the fault that fires first.
- cost The redirect fault charges the developer hours in the wrong gate, because it arrives dressed as an auth failure with nothing wrong in the OAuth config.
- decision Expected connection volume, not the first error message you happened to see, is what should pick dynamic registration or CIMD, since DCR writes an identity-provider row per connection.
- capability Filling in the read-only and destructive hints buys auto-permissions, so safe calls stop interrupting the user for approval.
Three lookups and one curl. That is the entire first gate [15], and none of it needs a deploy, which is the argument for running it before the first tool is written. The checklist's own framing is that desk tests prove almost nothing, because Claude dials in from Anthropic's servers [2]; the answer that decides whether you ship is the one a resolver outside your network returns [7].
The expensive fault is the redirect. RFC 9110 section 15.4 strips the Authorization header when a 301, 302, 307 or 308 crosses to a different host, so the 401 the user sees is generated by the redirect target rather than by your MCP endpoint [5]. Claude surfaces that as an auth failure, which sends the developer straight to the identity gate while the defect sits in the network gate [16]. The same checklist also lists cross-host redirects among the reasons your access log is empty while Claude reports that it could not reach the server [6], so both of the signals available to you point somewhere other than the Location header.
The identity gate has the same shape: a config detail that fails quietly. Claude selects a client ID metadata document only when the metadata advertises both `client_id_metadata_document_supported: true` and `token_endpoint_auth_methods_supported: ["none"]`. Miss the second and it falls back to dynamic registration and reports an incompatible auth server, with a perfectly good CIMD sitting right there [10]. `registration_endpoint` has to be absent rather than `null`, because `null` fails schema validation instead of being ignored [11].
Gate three is a human reviewer, and it has an automatic fail that plenty of servers ship on day one: a single tool whose schema accepts GET, POST and DELETE in one enum. Read and write must be separate tools, and no amount of description text rescues the combined version [12]. Worth knowing before anyone plans a launch date: the submission portal lives in Claude.ai org settings and requires a Team or Enterprise plan, so individual accounts cannot submit at all [14].
Gate four reverses advice many teams have already acted on. Tool search is on by default in Claude Code, loading only tool names and server instructions at session start and fetching full schemas on demand, and Anthropic's reference says additional servers have minimal impact on the window, with no fixed per-server tool cap [1]. If you split one server into three to protect context, that was work done for nothing.
What to watch
- Whether Anthropic adds IPv6 resolution for connectors, which would retire one of the three network checks outright.
- Whether directory review automates the tool-design checks (paired read/write tools, hints, name length) or keeps them with a human reviewer.
- Whether CIMD becomes the documented default path for public connectors and dynamic client registration is discouraged outright.
Clarity's read
What the record supports and how the coverage leans. The claims behind it follow.
Reality
- Evidence38
- Adoption34
- Hype gap+12
- Incentives30
- Confidence44
Claim ledger
Ranked by verification strength, evidence, and original report placement.
- [1]
Tool search ships on by default in Claude Code: only tool names and server instructions load at session start and full schemas arrive on demand, and Anthropic's reference says adding more servers has minimal impact on the context window, with no fixed per-server tool cap.
- [2]
Claude connects from Anthropic's servers, not from the developer's laptop, so tests run at your desk prove almost nothing; the checklist says to run the network checks from a network that is not yours.
ReportedSupportedSource: dev.to pre-flight checklist for shipping a Claude connectorView cited source - [3]
Any 10.x, 172.16-31.x, 192.168.x, 100.64.x, loopback or link-local address in the DNS answer kills the connection before an HTTP request is sent; every returned address must be globally routable.
- [4]
Claude connectors are IPv4-only: an empty result for dig +short A with a populated result for dig +short AAAA is the bug.
- [5]
A 301, 302, 307 or 308 redirect to a different host strips the Authorization header (RFC 9110 section 15.4); the redirect target answers 401 and Claude reports an auth failure.
- [6]
If the server's access log is empty while Claude says "Couldn't reach the MCP server", one of the three network causes (private-range DNS answer, missing A record, cross-host redirect) is why.
- [7]
The network checklist items are: DNS answer contains only public addresses when checked from outside your network, an A record exists and not just AAAA, and the MCP URL does not cross-host redirect.
- [8]
Shipping an MCP server as a Claude connector means passing four gates that have nothing to do with business logic: Anthropic's network can reach you, Claude can get an OAuth client identity, a human reviewer approves your tool design, and the server does not waste the user's context window.
- [9]
Dynamic Client Registration mints a fresh OAuth client on every new connection, which is a row per connection rather than per customer, so a busy connector slowly fills the identity provider with junk clients; the DCR versus CIMD choice should be made on expected connection volume rather than on which error message appeared first.
- [10]
Claude picks CIMD only when the metadata sets both client_id_metadata_document_supported: true and token_endpoint_auth_methods_supported: ["none"]; miss the second and Claude falls back to dynamic registration and fails with "Incompatible auth server: does not support dynamic client registration" even though the CIMD is fine.
- [11]
registration_endpoint must be omitted rather than set to null, because null fails schema validation rather than being ignored.
- [12]
A tool whose input schema accepts both safe and unsafe HTTP methods (for example a method enum of GET, POST and DELETE) is an automatic review fail; read and write must be separate tools, writes split further where possible, and no description text saves the combined version.
- [13]
Every tool needs a title plus readOnlyHint: true or destructiveHint: true; those hints drive auto-permissions, so read-only tools can run without prompting each time, and skipping them makes the connector both non-compliant and slower to use.
- [14]
Directory submission requires a Team or Enterprise plan, with the portal in Claude.ai org settings; individual plans cannot submit at all.
- [15]
The whole network gate is four shell commands run from an outside host: dig +short, dig +short A, dig +short AAAA, and curl -sSI grepped for a Location header.
- [16]
The cross-host redirect fault presents to the user as an OAuth failure, so the visible symptom points at the identity gate while the defect sits in the network gate.
Sources
1 independent publisher whose own reporting we read for this story.
- dev.toA pre-flight checklist for shipping a Claude connector
1 article · August 22, 2026
Topics and entities
Follow any of these and your For You feed starts watching them — no settings page required.
Topics
- OAuth Client Identity for AgentsFollow
- App Store Review ComplianceFollow
- Agent Context ManagementFollow
- MCP Servers and ConnectorsFollow
- Network Reachability DebuggingFollow