Summary
After the server has been moved to this repository (tracked in #25), update mcp-servers/python/data_analysis_server/ to target MCP SDK v2 and resolve the version conflict between pyproject.toml and requirements.txt.
Changes required
1. MCP SDK version bump
# pyproject.toml — Before
mcp>=1.28.1,<2
# pyproject.toml — After
mcp>=2,<3
2. Resolve requirements.txt conflict
requirements.txt currently declares mcp>=2.0.0 while pyproject.toml declares mcp>=1.28.1,<2 — these are contradictory. After the pyproject.toml bump to >=2,<3, align requirements.txt to match:
# requirements.txt — After
mcp>=2,<3
3. API changes required by MCP SDK v2
Per the MCP SDK v2 migration guide:
- Protocol type aliases using camelCase have been removed; use snake_case equivalents.
- Review any transport constructor parameters — these may need to move to
run()/app call sites.
- Validate that sync handler functions do not call
asyncio.get_running_loop().
Acceptance criteria
References
Summary
After the server has been moved to this repository (tracked in #25), update
mcp-servers/python/data_analysis_server/to target MCP SDK v2 and resolve the version conflict betweenpyproject.tomlandrequirements.txt.Changes required
1. MCP SDK version bump
2. Resolve requirements.txt conflict
requirements.txtcurrently declaresmcp>=2.0.0whilepyproject.tomldeclaresmcp>=1.28.1,<2— these are contradictory. After thepyproject.tomlbump to>=2,<3, alignrequirements.txtto match:3. API changes required by MCP SDK v2
Per the MCP SDK v2 migration guide:
run()/appcall sites.asyncio.get_running_loop().Acceptance criteria
mcpconstraint updated to>=2,<3inpyproject.tomlrequirements.txtaligned withpyproject.tomlReferences