Skip to content

feat(mcp): backport the OBO token endpoint discovery stack (#31526, #31622, #31762) to 1.91.0rc1 - #32099

Closed
mateo-berri wants to merge 3 commits into
patch-1.91.0rc1from
litellm_backport_31762_191rc1
Closed

feat(mcp): backport the OBO token endpoint discovery stack (#31526, #31622, #31762) to 1.91.0rc1#32099
mateo-berri wants to merge 3 commits into
patch-1.91.0rc1from
litellm_backport_31762_191rc1

Conversation

@mateo-berri

Copy link
Copy Markdown
Contributor

Relevant issues

Backports #31762 to the 1.91.0rc1 patch line. #31762 is stacked on #31622, which in turn builds on #31526; neither parent was on this line, so the full three-PR OBO stack comes along, one cherry-pick commit per PR with original authorship preserved

Linear ticket

Pre-Submission checklist

Please complete all items before asking a LiteLLM maintainer to review your PR

  • I have added meaningful tests
  • My PR passes all CI/CD checks (e.g., lint, format, unit tests)
  • My PR's scope is as isolated as possible; it only solves 1 specific problem
  • I have requested a Greptile review by commenting @greptileai and received a Confidence Score of at least 4/5 before requesting a maintainer review

Delays in PR merge?

If you're seeing a delay in your PR being merged, ping the LiteLLM Team on Slack (#pr-review).

Screenshots / Proof of Fix

Tests were brought over as part of each cherry-pick; the full MCP/OBO battery on this branch passes locally: 564 passed across test_discoverable_endpoints.py, test_mcp_server_manager.py, test_mcp_stale_session.py, and outbound_credentials/. Live proof of the feature itself (real Keycloak IdP, discovery success and no-IdP-guess fail-closed) is on the source PRs #31622 and #31762

Type

🆕 New Feature

Changes

Conflict resolutions were kept minimal so this line only gains the OBO stack and nothing else that landed on staging since the rc cut. Specifically, hunks belonging to PRs not on this line were dropped during resolution: #31736's _raise_unless_oauth2_discovery_server discovery gating (this line keeps its existing fall-through for non-oauth2 servers), #31641's outbound-concurrency semaphore wrapper, and #31809's BYOM tests. In server.py, the list handler keeps this line's already-backported #31921 re-raise behavior rather than upstream's absorb variant; #31762's change there was comment-only

No version bump: rc lines keep pyproject at 1.91.0, the rc number is tag-only


Generated by Claude Code

tin-berri added 3 commits July 4, 2026 02:06
…31526)

Backport of #31526 to patch-1.91.0rc1 (prerequisite for #31762).
Cherry-picked from f19bf2c9846bd7ee0bd267946eb87083f025741f (litellm_internal_staging).
…eading + audit hardening + RFC 9728 challenge (#31622)

Backport of #31622 to patch-1.91.0rc1 (prerequisite for #31762).
Cherry-picked from 0e56fc3 (litellm_internal_staging).
Conflict resolutions drop context belonging to PRs not on this line
(#31736 discovery gating, #31641 outbound concurrency).
…no IdP guessing) (#31762)

Backport of #31762 to patch-1.91.0rc1.
Cherry-picked from c737789 (litellm_internal_staging).
Conflict resolutions drop context belonging to PRs not on this line
(#31809 byom tests, #31921's upstream absorb-variant of the list handler;
this line keeps its own backported #31921 re-raise behavior).
@mateo-berri mateo-berri changed the title backport: OBO token endpoint discovery stack (#31526, #31622, #31762) to 1.91.0rc1 feat(mcp): backport the OBO token endpoint discovery stack (#31526, #31622, #31762) to 1.91.0rc1 Jul 4, 2026
@mateo-berri mateo-berri closed this Jul 4, 2026
@mateo-berri
mateo-berri deleted the litellm_backport_31762_191rc1 branch July 4, 2026 18:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants