Skip to content

chore(fastmcp): pin fastmcp to >=3.2,<4#4

Closed
RobertoIskandarani wants to merge 1 commit into
mainfrom
chore/fastmcp-pin-3x
Closed

chore(fastmcp): pin fastmcp to >=3.2,<4#4
RobertoIskandarani wants to merge 1 commit into
mainfrom
chore/fastmcp-pin-3x

Conversation

@RobertoIskandarani

Copy link
Copy Markdown

Summary

  • The adapter consumes the v3 surface (fastmcp.FastMCP plus fastmcp.server.auth.require_scopes); the current fastmcp>=2.0 pin would resolve against fastmcp 2.x and crash at import.
  • Tighten the lower bound so resolution fails fast, and cap the upper bound at <4 until we re-verify the surface against fastmcp 4.x (when it ships for Python — currently latest is 3.2.4 stable, 3.3.0b2 beta).

Verification

  • pytest — 33/33 against fastmcp==3.2.4, 33/33 against fastmcp==3.3.0b2.
  • demo/mcpserver.py boots against a real authserver, exposes the protected-resource metadata, and rejects unauthenticated /mcp requests with the correct WWW-Authenticate header on both versions.

Notes

  • No change to the public API of the adapter; this is a metadata-only fix.
  • Heads-up for follow-up: mcp 1.28 (not yet released) will revert elicitationId to snake_case, which will require an update to authplane-mcp (the sibling adapter), as noted in its pyproject comment.

Test plan

  • CI runs the adapter test suite against the new pin range
  • Conformance suite still green

🤖 Generated with Claude Code

The adapter consumes the v3 surface (`fastmcp.FastMCP` plus
`fastmcp.server.auth.require_scopes`); resolving against fastmcp 2.x
fails at import. Tightening the lower bound makes the failure show up
at resolution time instead of runtime, and adding an upper bound keeps
fastmcp 4.x out until we re-verify the surface.

Verified: 33/33 unit tests on fastmcp 3.2.4 and 3.3.0b2, and the
calculator demo boots end-to-end against a local authserver with both
versions.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@RobertoIskandarani RobertoIskandarani requested a review from a team as a code owner May 14, 2026 18:11
@RobertoIskandarani RobertoIskandarani deleted the chore/fastmcp-pin-3x branch May 14, 2026 18:18
@AuthPlane AuthPlane deleted a comment from RobertoIskandarani May 14, 2026
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.

1 participant