{"record":{"id":"dccd3c27ba12c661","repo":"BerriAI/litellm","slug":"unsupported-protocolversion-version-supported","errorCode":null,"errorMessage":"Unsupported protocolVersion '{version}'. Supported versions: {', '.join(SUPPORTED_A2A_PROTOCOL_VERSIONS)}.","messagePattern":"Unsupported protocolVersion '(.+?)'\\. Supported versions: (.+?)\\.","errorType":"http","errorClass":"HTTPException","httpStatus":400,"severity":"error","filePath":"litellm/proxy/agent_endpoints/endpoints.py","lineNumber":64,"sourceCode":"    PatchAgentRequest,\n)\nfrom litellm.types.llms.custom_http import httpxSpecialProvider\nfrom litellm.types.proxy.management_endpoints.common_daily_activity import (\n    DailySpendMetadata,\n    SpendAnalyticsPaginatedResponse,\n)\n\n\ndef _proxy_base_url(http_request: Request) -> str:\n    \"\"\"Return the proxy's public base URL, preferring PROXY_BASE_URL when set.\"\"\"\n    return get_custom_url(str(http_request.base_url), route=None)\n\n\ndef _validate_protocol_version(upstream_card: AgentCard | None) -> None:\n    \"\"\"Reject an agent card pinning an unsupported A2A protocol version.\"\"\"\n    version: Final = upstream_card.get(\"protocolVersion\") if upstream_card else None\n    if version is not None and normalize_protocol_version(version) is None:\n        raise HTTPException(\n            status_code=400,\n            detail=(\n                f\"Unsupported protocolVersion '{version}'. \"\n                f\"Supported versions: {', '.join(SUPPORTED_A2A_PROTOCOL_VERSIONS)}.\"\n            ),\n        )\n\n\ndef _build_merged_agent_card(\n    upstream_card: AgentCard | None,\n    *,\n    agent_id: str,\n    http_request: Request,\n    agent_name: str | None = None,\n) -> dict[str, object]:\n    \"\"\"Apply the LiteLLM-fronting merge to ``upstream_card`` for ``agent_id``.\"\"\"\n    proxy_base: Final = _proxy_base_url(http_request)\n    _validate_protocol_version(upstream_card)","sourceCodeStart":46,"sourceCodeEnd":82,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/agent_endpoints/endpoints.py#L46-L82","documentation":"Validation of an upstream agent card before registration: its protocolVersion is not in SUPPORTED_A2A_PROTOCOL_VERSIONS (0.3/1.0), so LiteLLM cannot speak its dialect and the card is rejected with the supported list embedded.","triggerScenarios":"Thrown at litellm/proxy/agent_endpoints/endpoints.py:64 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use one of the listed supported A2A protocol versions."],"exampleFix":"protocolVersion='<a supported version>'","handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}