Error message
When this error occurs
Everyurl under defaults.mcp_servers[] (and under config_override.mcp_servers[] on a run)
must be an absolute https:// URL with a host. The API validates this at conversation- and
run-create time, so a bad URL fails fast here rather than at run start as a
MCP Discovery Failed.
https is required because a public MCP server is called with no bearer — over plaintext http
the tool arguments (and, for a Narrative-owned server, a server-minted token) would travel in the
clear. Malformed values (no scheme, no host, or not a URL at all) are rejected for the same reason.
Reachability is a separate check that runs at outbound call time. Even if a URL passes
this validation, the platform’s egress guard refuses hosts that resolve to loopback,
private, link-local (including the
169.254.169.254 metadata IP), IPv6 unique-local,
unspecified, or multicast addresses. Those failures surface as
MCP Discovery Failed — not this error. The MCP server must be
publicly reachable on the internet.How to fix
Re-post the request with the corrected URLs. A URL that is well-formed but unreachable or not a
valid MCP endpoint surfaces later as MCP Discovery Failed.
See also
- Agent Conversations reference
— how
mcp_servers[]plugs into a run. - MCP Connections — how to attach an OAuth connection to an external MCP server that requires user authorization.
- MCP Discovery Failed — the run-time error for a URL that passes validation but cannot be reached (including hosts blocked by the SSRF egress guard).

