Railway MCP custom domain: Claude concludes no TXT record is needed, domain never verifies
Summary
When setting up a Railway custom domain through the Railway MCP server inside Claude Code, Claude repeatedly concludes that no TXT verification record is required and tells the user to only create the CNAME. Railway actually requires both a CNAME and a TXT ownership record (shown only in the Railway dashboard). The result is a domain stuck in CERTIFICATE_STATUS_TYPE_VALIDATING_OWNERSHIP / verified: false for a long time while Claude keeps attributing it to DNS propagation or Cloudflare proxy settings. The user reports this has happened across several projects.
Environment
- Claude Code 2.1.278 (VS Code extension), model claude-fable-5-1
- Railway MCP server (
mcp__railway__*), toolsgenerate-domainanddomain-status - macOS
What happened
- Claude called
generate-domainwith a custom domain. The response listed a single DNS record:DNS_RECORD_TYPE_CNAME→<id>.up.railway.app. - Claude told the user to create only that CNAME.
- The domain stayed unverified.
domain-statuskept returningdnsRecords: [CNAME ... DNS_RECORD_STATUS_PROPAGATED],certificate.status: CERTIFICATE_STATUS_TYPE_VALIDATING_OWNERSHIP,verified: false, with no error message. - Claude explicitly stated "Railway only requires the CNAME, no TXT record" based on that tool output, and recommended waiting up to an hour per the Railway SSL troubleshooting docs.
- The user opened the Railway dashboard, which shows a required TXT record for the same domain. Adding it is what verification was waiting for.
Railway's own troubleshooting doc says: "Both are required - a missing TXT record will prevent Railway from verifying the domain, and the domain will return a 404 instead of routing to your service."
Expected
Either the Railway MCP domain-status / generate-domain responses should include the TXT record (this part is on the MCP server side), or Claude should not infer "no TXT needed" from a tool response that omits it, and should tell users to copy both records from the Railway dashboard whenever a custom domain sits in "validating ownership" with the CNAME already propagated.
Reproduction
- In Claude Code with the Railway MCP connected, ask Claude to add a custom subdomain to a Railway service.
- Create only the DNS record Claude reports.
- Observe the domain never verifies; ask Claude why. It attributes it to propagation / Cloudflare rather than the missing TXT record.
Reported on behalf of the user, who has seen the same behavior in several projects.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗