# LiteLLM v1.96.0-rc.1 - Product: LiteLLM (https://whatsnew.fyi/product/litellm) - Vendor: BerriAI - Date: 2026-08-03 - Version: v1.96.0-rc.1 - Original notes: https://github.com/BerriAI/litellm/releases/tag/v1.96.0-rc.1 - Permalink: https://whatsnew.fyi/product/litellm/releases/v1.96.0-rc.1 - Labels: Pre-release What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. --- - **fixed** — Annotate connected-app reachability on the gateway connect page - **fixed** — Recover the tool-name prefix boundary from registered prefixes - **fixed** — Exclude skipped tests from coverage-registry numerator - **added** — Expose classifier context window fields on Auto-Router screens - **fixed** — Deny MCP access when a named entitlement cannot be read - **added** — Add generic list handler for /management/v1 - **fixed** — Dispose recycled client sessions deterministically - **added** — Source the ID-JAG subject from the user's stored SSO assertion - **fixed** — Run bedrock guardrail on MCP tool calls in during_mcp_call mode - **fixed** — Drop unsupported prisma select kwarg from team lookup - **added** — Add GET /management/v1/budgets - **fixed** — Do not send duplicate thoughtSignature copies to Gemini - **added** — Show which log rows are the auto-router's own classifier calls - **fixed** — Nest source object in Claude Code marketplace settings snippet - **added** — Add sorting, filtering and search to the budgets page - **fixed** — Keep the session view open when selecting a log inside it - **fixed** — Enforce tool entitlements on every MCP tool dispatch path - **fixed** — Raise aiohttp floor to 3.14.2 to clear pooled-connection timeouts - **fixed** — Drop unsupported prisma select kwarg from key lookup - **fixed** — Stop model writes 500ing on another pod's delete - **fixed** — Show pass through route selections and match team id substrings in team search - **changed** — Gate all mock testing request params behind a single config flag - **fixed** — Align team member add with existing user provisioning rules - **added** — Add global exclude_metrics and exclude_labels options for prometheus - **added** — Let AI API keys read /model/info - **fixed** — Keep config-defined agents registered and accept the documented agents: key ##### Verify Docker Image Signature All LiteLLM Docker images are signed with [cosign](https://docs.sigstore.dev/cosign/overview/). Every release is signed with the same key introduced in [commit `0112e53`](https://github.com/BerriAI/litellm/commit/0112e53046018d726492c814b3644b7d376029d0). **Verify using the pinned commit hash (recommended):** A commit hash is cryptographically immutable, so this is the strongest way to ensure you are using the original signing key: ```bash cosign verify \ --key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \ ghcr.io/berriai/litellm:v1.96.0-rc.1 ``` **Verify using the release tag (convenience):** Tags are protected in this repository and resolve to the same key. This option is easier to read but relies on tag protection rules: ```bash cosign verify \ --key https://raw.githubusercontent.com/BerriAI/litellm/v1.96.0-rc.1/cosign.pub \ ghcr.io/berriai/litellm:v1.96.0-rc.1 ``` Expected output: ``` The following checks were performed on each of these signatures: - The cosign claims were validated - The signatures were verified against the specified public key ``` --- ##### What's Changed * fix(mcp): annotate connected-app reachability on the gateway connect page by @tin-berri in https://github.com/BerriAI/litellm/pull/34867 * fix(mcp): recover the tool-name prefix boundary from registered prefixes by @tin-berri in https://github.com/BerriAI/litellm/pull/34673 * fix(e2e): exclude skipped tests from coverage-registry numerator by @yuneng-berri in https://github.com/BerriAI/litellm/pull/35327 * feat(ui): expose classifier context window fields on Auto-Router screens (LIT-5036) by @tin-berri in https://github.com/BerriAI/litellm/pull/35315 * fix(mcp): deny MCP access when a named entitlement cannot be read by @yassin-berriai in https://github.com/BerriAI/litellm/pull/35160 * feat(proxy): add generic list handler for /management/v1 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/35308 * fix(aiohttp): dispose recycled client sessions deterministically by @yassin-berriai in https://github.com/BerriAI/litellm/pull/33428 * test(e2e): skip the three Datadog MCP tool-call tests pending LIT-5052 by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/35380 * feat(mcp): source the ID-JAG subject from the user's stored SSO assertion by @yassin-berriai in https://github.com/BerriAI/litellm/pull/35147 * test(e2e): skip the throughput SLO load test pending LIT-5054 by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/35381 * fix(guardrails): run bedrock guardrail on MCP tool calls in during_mcp_call mode by @yassin-berriai in https://github.com/BerriAI/litellm/pull/35149 * fix(tool-management): drop unsupported prisma select kwarg from team lookup by @yuneng-berri in https://github.com/BerriAI/litellm/pull/35293 * feat(proxy): add GET /management/v1/budgets by @yuneng-berri in https://github.com/BerriAI/litellm/pull/35310 * fix(gemini): do not send duplicate thoughtSignature copies to Gemini by @mgeorgaklis in https://github.com/BerriAI/litellm/pull/35004 * feat(ui): show which log rows are the auto-router's own classifier calls by @tin-berri in https://github.com/BerriAI/litellm/pull/35304 * fix(ui): nest source object in Claude Code marketplace settings snippet by @devin-ai-integration[bot] in https://github.com/BerriAI/litellm/pull/35322 * fix(type-discipline): exempt values frozen in place by tuple/frozenset/MappingProxyType from LIT002 by @mateo-berri in https://github.com/BerriAI/litellm/pull/35325 * feat(ui): add sorting, filtering and search to the budgets page by @yuneng-berri in https://github.com/BerriAI/litellm/pull/35309 * fix(ui): keep the session view open when selecting a log inside it by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/35399 * fix(mcp): enforce tool entitlements on every MCP tool dispatch path by @yassin-berriai in https://github.com/BerriAI/litellm/pull/35156 _[Truncated at 4000 characters — full notes: https://github.com/BerriAI/litellm/releases/tag/v1.96.0-rc.1]_