{"record":{"id":"d180e1a17e83d23d","repo":"BerriAI/litellm","slug":"dcr-bridge-is-only-supported-for-auth-type-true-pa","errorCode":null,"errorMessage":"dcr_bridge is only supported for auth_type true_passthrough or oauth_delegate (stored auth_type: {stored_auth_type_name!r}). Include the server's auth_type in the update payload or configure one of the client-forwarded token modes first.","messagePattern":"dcr_bridge is only supported for auth_type true_passthrough or oauth_delegate \\(stored auth_type: (.+?)\\)\\. Include the server's auth_type in the update payload or configure one of the client-forwarded token modes first\\.","errorType":"http","errorClass":"HTTPException","httpStatus":400,"severity":"error","filePath":"litellm/proxy/management_endpoints/mcp_management_endpoints.py","lineNumber":2561,"sourceCode":"            old_server_record_read_failed = False\n        except Exception as exc:  # noqa: BLE001 - advisory read; invalidation is best-effort end-to-end\n            verbose_logger.warning(\n                \"MCP server %s: could not snapshot the pre-update record; skipping the stale-token check: %s\",\n                payload.server_id,\n                exc,\n            )\n            old_server_record = None\n            old_server_record_read_failed = True\n\n        if (\n            payload.dcr_bridge\n            and payload.auth_type is None\n            and (old_server_record is not None or old_server_record_read_failed)\n        ):\n            stored_auth_type: Final = old_server_record.auth_type if old_server_record else None\n            stored_auth_type_name: Final = getattr(stored_auth_type, \"value\", stored_auth_type)\n            if stored_auth_type not in (MCPAuth.true_passthrough, MCPAuth.oauth_delegate):\n                raise HTTPException(\n                    status_code=status.HTTP_400_BAD_REQUEST,\n                    detail={\n                        \"error\": (\n                            \"dcr_bridge is only supported for auth_type true_passthrough or \"\n                            f\"oauth_delegate (stored auth_type: {stored_auth_type_name!r}). Include \"\n                            \"the server's auth_type in the update payload or configure one of the \"\n                            \"client-forwarded token modes first.\"\n                        )\n                    },\n                )\n\n        # try to update the mcp server\n        mcp_server_record_updated: Final = await update_mcp_server(\n            prisma_client,\n            payload,\n            touched_by=user_api_key_dict.user_id or LITELLM_PROXY_ADMIN_NAME,\n            fields_set=payload_fields_set,\n        )","sourceCodeStart":2543,"sourceCodeEnd":2579,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/proxy/management_endpoints/mcp_management_endpoints.py#L2543-L2579","documentation":"Error \"dcr_bridge is only supported for auth_type true_passthrough or oauth_delegate (stored auth_type: {stored_auth_type_name!r}). Include the server's auth_type in the update payload or configure one of the client-forwarded token modes first.\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/proxy/management_endpoints/mcp_management_endpoints.py:2561 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Include auth_type in the update payload set to true_passthrough or oauth_delegate.","Configure a client-forwarded token mode on the server before enabling dcr_bridge."],"exampleFix":null,"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-14T05:17:10.506Z"}