NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #48 most downloaded on PyPI
Library to easily interface with LLM API providers
Last release today
28 Sep 2026
Ships on a steady schedule
a new release about every 8 days
Nearly every release is documented
notes for 59 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
3 years old
1228 releases · first in 2023
One column per quarter.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.88.0-rc.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.88.0-rc.2/cosign.pub \
ghcr.io/berriai/litellm:v1.88.0-rc.2
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.88.0-rc.1...v1.88.0-rc.2
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.88.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.88.0-rc.1/cosign.pub \
ghcr.io/berriai/litellm:v1.88.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.88.0-dev.1...v1.88.0-rc.1
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.88.0-dev.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.88.0-dev.1/cosign.pub \
ghcr.io/berriai/litellm:v1.88.0-dev.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
context_management from request body by @mateo-berri in https://github.com/BerriAI/litellm/pull/28438llm_api_routes virtual keys to list MCP servers by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/28442Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.0...v1.88.0-dev.1
chore(release): backport #31029 to stable/1.87.x and cut 1.87.5 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/31159
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.87.4...v1.87.5
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.4
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.4/cosign.pub \
ghcr.io/berriai/litellm:v1.87.4
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.87.3...v1.87.4
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.3
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.3/cosign.pub \
ghcr.io/berriai/litellm:v1.87.3
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.87.2...v1.87.3
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.2/cosign.pub \
ghcr.io/berriai/litellm:v1.87.2
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.87.1...v1.87.2
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.1/cosign.pub \
ghcr.io/berriai/litellm:v1.87.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.87.0...v1.87.1
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.0
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.0
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
context_management from request body by @mateo-berri in https://github.com/BerriAI/litellm/pull/28438Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.0...v1.87.0
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.0-rc.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.0-rc.2/cosign.pub \
ghcr.io/berriai/litellm:v1.87.0-rc.2
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
context_management from request body by @mateo-berri in https://github.com/BerriAI/litellm/pull/28438Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.0...v1.87.0-rc.2
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.0-rc.1/cosign.pub \
ghcr.io/berriai/litellm:v1.87.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
context_management from request body by @mateo-berri in https://github.com/BerriAI/litellm/pull/28438Full Changelog: https://github.com/BerriAI/litellm/compare/v1.87.0-dev.1...v1.87.0-rc.1
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.87.0-dev.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.87.0-dev.1/cosign.pub \
ghcr.io/berriai/litellm:v1.87.0-dev.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.0-rc.1...v1.87.0-dev.1
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.7
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.7/cosign.pub \
ghcr.io/berriai/litellm:v1.86.7
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.6...v1.86.7
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.6
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.6/cosign.pub \
ghcr.io/berriai/litellm:v1.86.6
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.5...v1.86.6
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.5
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.5/cosign.pub \
ghcr.io/berriai/litellm:v1.86.5
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.4...v1.86.5
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.4
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.4/cosign.pub \
ghcr.io/berriai/litellm:v1.86.4
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.3...v1.86.4
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.3
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.3/cosign.pub \
ghcr.io/berriai/litellm:v1.86.3
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.2...v1.86.3
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.2/cosign.pub \
ghcr.io/berriai/litellm:v1.86.2
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.1...v1.86.2
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.1/cosign.pub \
ghcr.io/berriai/litellm:v1.86.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.86.0...v1.86.1
> Two things to be aware of about the non-root image in this release:
[!NOTE] Two things to be aware of about the non-root image in this release:
- Dockerfile build patch. The non-root Dockerfile failed to build at the v1.86.0 tag, and a patch was applied to produce
ghcr.io/berriai/litellm-non_root:v1.86.0. The non-root image was built from commita13cd212c82f00d73456a375dd0d89cef85244a8.- No cosign attestation. The non-root image was published without a cosign signature. If you run
cosign verifyon images before deploying, this image will not pass verification and you will not be able to upgrade to it.The
ghcr.io/berriai/litellm:v1.86.0andghcr.io/berriai/litellm-database:v1.86.0images are signed normally. v1.86.1 ships early next week with signed builds of all three images.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.0
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.0
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.0...v1.86.0
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.86.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.86.0-rc.1/cosign.pub \
ghcr.io/berriai/litellm:v1.86.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.0...v1.86.0-rc.1
chore(release): backport #30480, #30787, #30788, #31035, #31133, #31122 to stable/1.85.x and cut 1.85.7 by @yuneng-berri in https://github.com/BerriAI
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.6...v1.85.7
chore(release): backport the 1.84.8 patch set + deps bump to stable/1.85.x and cut 1.85.6 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.5...v1.85.6
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.5
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.5/cosign.pub \
ghcr.io/berriai/litellm:v1.85.5
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.4...v1.85.5
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.4
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.4/cosign.pub \
ghcr.io/berriai/litellm:v1.85.4
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.3...v1.85.4
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.3
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.3/cosign.pub \
ghcr.io/berriai/litellm:v1.85.3
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.2...v1.85.3
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.2/cosign.pub \
ghcr.io/berriai/litellm:v1.85.2
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.1...v1.85.2
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.1/cosign.pub \
ghcr.io/berriai/litellm:v1.85.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.85.0...v1.85.1
[Fix] Tests: Replace deprecated openrouter/claude-3.7-sonnet with claude-sonnet-4.5 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/27149
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.0
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.0
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
claude-4-sonnet-20250514 alias in multiturn tool-call test by @mateo-berri in https://github.com/BerriAI/litellm/pull/27077thinking_blocks from chat messages before Fireworks API call by @milan-berri in https://github.com/BerriAI/litellm/pull/27881litellm_remaining_tokens_metric for Bedrock and Vertex by @mateo-berri in https://github.com/BerriAI/litellm/pull/27705Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.0...v1.85.0
[Fix] Tests: Replace deprecated openrouter/claude-3.7-sonnet with claude-sonnet-4.5 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/27149
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.85.0-rc.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.85.0-rc.2/cosign.pub \
ghcr.io/berriai/litellm:v1.85.0-rc.2
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
claude-4-sonnet-20250514 alias in multiturn tool-call test by @mateo-berri in https://github.com/BerriAI/litellm/pull/27077thinking_blocks from chat messages before Fireworks API call by @milan-berri in https://github.com/BerriAI/litellm/pull/27881litellm_remaining_tokens_metric for Bedrock and Vertex by @mateo-berri in https://github.com/BerriAI/litellm/pull/27705Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.0-rc.1...v1.85.0-rc.2
Nothing published for this version
Nothing published for this version
Nothing published for this version
chore(release): backport #30787, #30788, #31035, #31122, #31133 to stable/1.84.x and cut 1.84.10 by @yuneng-berri in https://github.com/BerriAI/litell
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.9...v1.84.10
chore(release): backport #30480 to stable/1.84.x and cut 1.84.9 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/30591
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.8...v1.84.9
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.8
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.8/cosign.pub \
ghcr.io/berriai/litellm:v1.84.8
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.7...v1.84.8
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.7
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.7/cosign.pub \
ghcr.io/berriai/litellm:v1.84.7
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.6...v1.84.7
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.6
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.6/cosign.pub \
ghcr.io/berriai/litellm:v1.84.6
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.5...v1.84.6
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.5
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.5/cosign.pub \
ghcr.io/berriai/litellm:v1.84.5
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.4...v1.84.5
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.4
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.4/cosign.pub \
ghcr.io/berriai/litellm:v1.84.4
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.3...v1.84.4
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.3
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.3/cosign.pub \
ghcr.io/berriai/litellm:v1.84.3
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.1...v1.84.3
chore(proxy): cherry-pick #28547 onto patch/v1.84.1 by @yuneng-berri in https://github.com/BerriAI/litellm/pull/28967
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.1...v1.84.2
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.1/cosign.pub \
ghcr.io/berriai/litellm:v1.84.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.84.0...v1.84.1
> ⚠️ Heads up — this release contains breaking changes.
⚠️ Heads up — this release contains breaking changes. Read the full release notes here: v1.84.0 release notes
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.0
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.0/cosign.pub \
ghcr.io/berriai/litellm:v1.84.0
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.83.14-stable.patch.3...v1.84.0
fix(tests): replace deprecated Bedrock Claude 3.7 Sonnet model ID by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/26721
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:1.84.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.84.0-rc.1/cosign.pub \
ghcr.io/berriai/litellm:1.84.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.83.14-stable...v1.84.0-rc.1
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:1.84.0-dev.2
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/1.84.0-dev.2/cosign.pub \
ghcr.io/berriai/litellm:1.84.0-dev.2
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
Full Changelog: https://github.com/BerriAI/litellm/compare/1.84.0-dev.1...1.84.0-dev.2
fix(tests): replace deprecated Bedrock Claude 3.7 Sonnet model ID by @ryan-crabbe-berri in https://github.com/BerriAI/litellm/pull/26721
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:1.84.0-dev.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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/1.84.0-dev.1/cosign.pub \
ghcr.io/berriai/litellm:1.84.0-dev.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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.83.14.rc.1...1.84.0-dev.1
chore(deps): bump vulnerable dependencies by @stuxf in https://github.com/BerriAI/litellm/pull/26365
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.83.14-stable
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.83.14-stable/cosign.pub \
ghcr.io/berriai/litellm:v1.83.14-stable
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.83.13-nightly...v1.83.14-stable
Nothing published for this version
Nothing published for this version
Nothing published for this version
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.83.10-stable
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.83.10-stable/cosign.pub \
ghcr.io/berriai/litellm:v1.83.10-stable
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.83.10-nightly...v1.83.10-stable
Nothing published for this version
Nothing published for this version
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.83.7-stable
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.83.7-stable/cosign.pub \
ghcr.io/berriai/litellm:v1.83.7-stable
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
Full Changelog: https://github.com/BerriAI/litellm/compare/v1.83.3-stable...v1.83.7-stable
Nothing published for this version
Nothing published for this version
Nothing published for this version
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit `0112e53`.
All LiteLLM Docker images are signed with cosign. Every release is signed with the same key introduced in commit 0112e53.
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/0112e53046018d726492c814b3644b7d376029d0/cosign.pub \
ghcr.io/berriai/litellm:v1.83.3-stable
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:
cosign verify \
--key https://raw.githubusercontent.com/BerriAI/litellm/v1.83.3-stable/cosign.pub \
ghcr.io/berriai/litellm:v1.83.3-stable
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
axios=1.13.6 by @ishaan-berri in https://github.com/BerriAI/litellm/pull/24829Full Changelog: https://github.com/BerriAI/litellm/compare/v1.82.3-stable...v1.83.3-stable
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →