Skip to content

v1.5.28 — fix subclass() arg 1 must be a class in old-mcp environments

Choose a tag to compare

@zw008 zw008 released this 20 May 09:57
· 16 commits to main since this release

Fix subclass() arg 1 must be a class in goose/old-mcp environments.

v1.5.25–1.5.27 replaced PEP 604 X | None with Optional[X] but kept from __future__ import annotations at the top of mcp_server/server.py. Under mcp 1.10–1.13 (which Goose and some sandboxes pin), FastMCP's Tool.from_function calls issubclass(param.annotation, Context) without resolving forward refs, so string annotations crash server load.

This release strips the future import from mcp_server/server.py (all 8 affected skills; Harden never had it). Verified tools list OK under mcp 1.10 and mcp 1.14.

CLAUDE.md 踩坑 #33 updated.