Skip to content

v2.4.4 — cap fastmcp <4 and mcp <2

Choose a tag to compare

@caidish caidish released this 05 Sep 04:08
· 5 commits to main since this release
841f2e0

Fixed — fresh installs were broken

fastmcp>=2.14.3 and mcp>=1.0.0 carried no upper bound. With fastmcp 4.0.3 and mcp 2.1.1 now on PyPI, a fresh pip install instrmcp resolved to them and failed at import:

File "instrmcp/utils/__init__.py", line 6, in <module>
    from .stdio_proxy import (
File "instrmcp/utils/stdio_proxy.py", line 25, in <module>
    from fastmcp.server.proxy import ProxyClient
ModuleNotFoundError: No module named 'fastmcp.server.proxy'

Because instrmcp/utils/__init__.py re-exports stdio_proxy, this took out the entire instrmcp.utils package — the CLI and all three launchers (Claude Desktop, Codex, Gemini).

Dependencies are now fastmcp>=2.14.3,<4 and mcp>=1.0.0,<2, which resolve to fastmcp 3.4.7 + mcp 1.29.1. Every fastmcp API instrMCP uses still works there.

If you already have a broken install

pip install --upgrade "instrmcp==2.4.4"

If your environment already pulled fastmcp 4.x, force the downgrade:

pip install --upgrade --force-reinstall "fastmcp>=2.14.3,<4" "mcp>=1.0.0,<2" instrmcp

Background

fastmcp 4 removed four APIs instrMCP depends on — FastMCP.as_proxy(), fastmcp.server.proxy.ProxyClient, FastMCP.remove_tool() and FastMCP.add_tool_transformation() — and mcp 2.x renamed mcp.server.fastmcp to mcp.server.mcpserver. Migration to fastmcp 4 / mcp 2 is tracked in #41.

Also includes everything merged since v2.4.3 (safe-mode MeasureIt tool gating, CI event-loop fix).

Full Changelog: v2.4.3...v2.4.4