fix(python): cap mcp dependency to <2 across all Python servers - #4577
fix(python): cap mcp dependency to <2 across all Python servers#4577cyforkk wants to merge 2 commits into
Conversation
mcp 2.0.0 renamed McpError to MCPError, breaking imports in servers with no upper bound. Cap mcp to <2 in all three Python servers (time, fetch, git) and regenerate lockfiles with the default PyPI index. Closes modelcontextprotocol#4560, modelcontextprotocol#4570 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This comment was marked as spam.
This comment was marked as spam.
|
Independent confirmation that this reproduces and that the cap resolves it, covering both Unconstrained (uv resolves
One gotcha worth flagging for anyone verifying this: With
Also confirming the scope of the break, since it affects whether a cap is the right stopgap: on 2.0.0 |
|
Friendly bump on this — it's been ~2 weeks since the mcp SDK 2.0.0 breakage, and this is still the only PR covering all affected Python servers. A few things worth the maintainers' attention:
For anyone hitting this today, cc @olaservo @cliffhall @bryan-anthropic — would appreciate a review when one of you gets a cycle. Happy to rebase or adjust the cap range if there's a preferred approach. |
Description
Closes #4560, #4570
The
mcpSDK 2.0.0 renamedMcpErrortoMCPError, breaking imports in servers that had no upper bound on themcpdependency. All unpinned launchers (likeuvx) resolved to 2.0.0 and failed at startup.This PR caps the
mcpdependency to<2in all three Python servers:mcp-server-time:mcp>=1.23.0→mcp>=1.23.0,<2mcp-server-fetch:mcp>=1.1.3→mcp>=1.1.3,<2mcp-server-git:mcp>=1.0.0→mcp>=1.0.0,<2Lockfiles are regenerated with the default PyPI index to ensure CI compatibility.
Changes
src/time/pyproject.toml+src/time/uv.locksrc/fetch/pyproject.toml+src/fetch/uv.locksrc/git/pyproject.toml+src/git/uv.lockChecklist
Co-Authored-By: Claude Fable 5 noreply@anthropic.com