fix(ci) pin mcp below its 2.0.0 API rewrite for the agent-e2e mcp-testkit install - #149
Merged
Conversation
… install mcp-testkit's own mcp[cli]>=1.0.0 bound is unbounded upward, and this Python setup installs nothing else that would cap it -- so an unpinned `pip install mcp-testkit` picks up whatever mcp is newest on the day the lane runs. mcp 2.0.0 (released 2026-07-28) is a real break, not just a rename: FastMCP moved from mcp.server.fastmcp to mcp.server.mcpserver.MCPServer, dropped the stateless_http constructor kwarg, and removed the streamable_http_app()/run() methods mcp-testkit 1.0.3's server.py calls directly. Every mcp-testkit invocation in CI (the shared instance and both suite-spawned ones) has been crashing on import since, which suite4/suite5 report as a 15s "not ready on port" timeout since the process never comes up at all. python-sdk's own agent-e2e workflow has the identical unpinned line but is accidentally shielded: it installs google-adk/openai-agents first, which pin mcp<2 themselves, so mcp-testkit's install just inherits the already-resolved 1.x mcp instead of upgrading it. This repo's Python setup is mcp-testkit-only, so it has no such accidental guard -- pin it explicitly instead.
Codecov Report✅ All modified and coverable lines are covered by tests.
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
v1r3n
approved these changes
Jul 29, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request type
NOTE: Please remember to run
./gradlew spotlessApplyto fix any format violations.Changes in this PR
mcp-testkit's ownmcp[cli]>=1.0.0bound is unbounded upward, and this workflow's Python setup installs nothing else that caps it, so an unpinned install picked upmcp2.0.0 (released 2026-07-28), which removedmcp.server.fastmcp.FastMCP— every mcp-testkit process in CI has since crashed on startup, surfacing astest_suite4/test_suite5's "not ready on port" timeouts.pip install mcp-testkit "mcp<2.0.0"in.github/workflows/agent-e2e.ymlto keep resolving the samemcp1.x line the tests were passing against.Issue #
Alternatives considered
Porting
mcp-testkititself tomcp2.0's newMCPServerAPI and releasing a new version — larger, separate change in theagentspan-ai/mcp-testkitrepo; not needed just to unblock CI.