You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
host/pyproject.toml currently caps the SDK at mcp[cli]>=1.0.0,<2. The cap is a holding action, not a decision: mcp 2.0 removed from mcp.server.fastmcp import FastMCP, which is what server.py is built on, and CI had been silently resolving to 2.2.0 and failing the type-check on unrelated changes.
Porting is the real fix. Until it happens the project is pinned to a major version that will stop receiving attention.
What the port has to cover
server.py builds the entire tool surface — 137 tools plus 14 namespace dispatchers — through the 1.x FastMCP decorators. The registration shape is the bulk of the work.
The 8 MCP resources under the amiga:// scheme.
Whatever 2.x changes about stdio transport startup, since that is how every client launches the server.
--list-tools / --list-resources introspect the live registry; they will need to follow whatever replaces it.
Worth doing alongside
Decide Decide whether to commit host/uv.lock #4 (committing host/uv.lock) first. With a lock, the port can be a deliberate uv lock --upgrade rather than something CI discovers on an unrelated PR.
Once ported, the pydantic>=2.0,<3 cap should be revisited too — it was added defensively at the same time, not because anything was known to break.
Verification is straightforward: the full host test suite plus a real session against a live target, since tool registration is the part unit tests exercise least.
host/pyproject.tomlcurrently caps the SDK atmcp[cli]>=1.0.0,<2. The cap is a holding action, not a decision: mcp 2.0 removedfrom mcp.server.fastmcp import FastMCP, which is whatserver.pyis built on, and CI had been silently resolving to 2.2.0 and failing the type-check on unrelated changes.Porting is the real fix. Until it happens the project is pinned to a major version that will stop receiving attention.
What the port has to cover
server.pybuilds the entire tool surface — 137 tools plus 14 namespace dispatchers — through the 1.xFastMCPdecorators. The registration shape is the bulk of the work.amiga://scheme.--list-tools/--list-resourcesintrospect the live registry; they will need to follow whatever replaces it.Worth doing alongside
host/uv.lock) first. With a lock, the port can be a deliberateuv lock --upgraderather than something CI discovers on an unrelated PR.pydantic>=2.0,<3cap should be revisited too — it was added defensively at the same time, not because anything was known to break.Verification is straightforward: the full host test suite plus a real session against a live target, since tool registration is the part unit tests exercise least.