v1.87.0-rc.1
📦 litellmView on GitHub →
✨ 14 features🐛 22 fixes🔧 11 symbols
Summary
This release introduces Docker image signing via cosign for enhanced security and adds numerous fixes across providers like Gemini, Vertex AI, and Bedrock. Key features include new model cost maps, UI improvements, and support for the Microsoft Purview DLP guardrail.
Migration Steps
- If using Redis for spend counting, note that seeding is now done via SET NX.
- Users relying on Vertex AI Gemini 3.5+ tool calls should verify behavior due to omitting function_call id on tool turns.
- Users interacting with Vertex AI Gemma should be aware that `context_management` is stripped from the request body.
- Users utilizing Bedrock should note that STS region is now decoupled from Bedrock aws_region_name.
✨ New Features
- Added support for verifying LiteLLM Docker image signatures using cosign.
- Added gemini-3.1-flash-lite model cost map.
- Added team passthrough routes parity and edit load fix for the UI.
- Migrated interactions to Google Interactions API steps schema (May 2026).
- Added native MCP OAuth support for cursor.
- Exposed Prisma idle/connect timeout and extra DB URL parameters for the proxy.
- Added behavior-pinning harness and Key Tier-1 matrix for tests.
- Added tool call and tool list support via UI for Oauth mcps.
- Added persist allowlisted OIDC claims in CLI SSO poll.
- Added Microsoft Purview DLP guardrail.
- Added error_description and hint for oauth flows.
- Added granian as an ASGI compliant web server for better throughput stability.
- Added Speech STT config support for Azure.
- Encrypted callback_vars in key/team metadata in DB.
🐛 Bug Fixes
- Seeded Redis counter via SET NX to prevent cross-pod double-seeding in spend_counter.
- Normalized batch file IDs before ManagedObjectTable write in proxy.
- Used forwarded model_id for native Azure container IDs in router.
- Restored log filter loading indicator in UI.
- Fixed JWT on tools/list and REST tools/call server resolution in mcp.
- Never dropped streamed text deltas; always emitted terminal completion in interactions.
- Serialized guardrail_response to JSON in OTEL traces.
- Hydrated wildcard discovery credentials in proxy.
- Stripped `context_management` from request body for vertex_gemma.
- Recalculated cost after router retry failures.
- Emitted guardrail span on violation, surfaced status + categories in otel.
- Tolerated transient 500 in google maps grounding test for vertex_ai.
- Restored npm to non_root builder image in docker.
- Forwarded LITELLM_LICENSE to UI e2e proxy for tests.
- Fixed conflicts and UI issues.
- Used OpenAI SSEDecoder for Responses API streaming.
- Fixed reading PEP 639 license-expression metadata in check_licenses.
- Sent native Cohere embed payload to Cohere SageMaker endpoints.
- Applied black formatting to fix lint CI.
- Decoupled STS region from Bedrock aws_region_name in bedrock.
- Tolerated Vertex 429 wrapped in MidStreamFallbackError during streaming tests.
- Forwarded upstream initialize instructions on cold gateway init in mcp.