MCP-ERR-004
The retired -32042 code is never emitted
“-32042 — URL elicitation required (2025-11-25 only).” — spec anchor
How to fix this
Never emit `-32042`. It existed only in 2025-11-25 and has no meaning here.
Example: failing and passing
{
"jsonrpc": "2.0",
"id": 2,
"error": {
"code": -32042,
"message": "URL elicitation required"
}
}{
"jsonrpc": "2.0",
"id": 2,
"result": {
"resultType": "input_required",
"inputRequests": {
"api_key": {
"method": "elicitation/create",
"params": {
"mode": "url",
"url": "https://mcp.example.com/ui/set_api_key",
"message": "Please provide your API key to continue."
}
}
}
}
}How the validator checks this
Probe P2.1, against a streamable-http server on the modern protocol. What it reports:
- pass
- No response used the retired -32042 code
- fail
- Emitted -32042, which existed only in 2025-11-25 (seen in probe …)
Quoted from the probe that runs this check, so it cannot drift from what the validator actually reports.
This rule is checked deterministically: a fail here is a certain violation, not an inference.
Checked in the same request as MCP-HDR-008, MCP-HDR-009, MCP-RES-003, MCP-RES-006, MCP-RES-007, MCP-ERR-003, MCP-ERR-005, MCP-ERR-008, MCP-CAC-001, MCP-CAC-002, MCP-CAC-003, MCP-CAC-004, MCP-CAC-005, MCP-SCH-001, MCP-SCH-002, MCP-SCH-003, MCP-SCH-004, MCP-SCH-005, MCP-SCH-006, MCP-SCH-007, MCP-SEC-004, MCP-SEC-005, MCP-SEC-006, MCP-DEP-005.
Check your own server against MCP-ERR-004
Probe P2.1 checks MCP-ERR-004 in the same request as 24 other rules, so one run shows your server's result for this rule next to the rest. Validate a server or read how the validator works.
Background on this topic: MCP error codes explained.
Other Error codes rules
- MCP-ERR-001Unsupported version returns -32022 with data.supported[]
- MCP-ERR-002Unknown method returns HTTP 404 and JSON-RPC -32601
- MCP-ERR-003Resource-not-found uses -32602, not the retired -32002
- MCP-ERR-005No undefined code is emitted in the reserved -32020…-32099 range
- MCP-ERR-006Missing required _meta field returns HTTP 400 + JSON-RPC -32602
- MCP-ERR-007Missing client capability returns -32021 with data.requiredCapabilities
- MCP-ERR-008New implementation-defined codes avoid the legacy -32000…-32019 range