Skip to content

v5.61.1

Choose a tag to compare

@dgunning dgunning released this 06 Oct 22:30
7338aa3

A security release. It raises dependency minimums past known vulnerabilities and makes the MCP server's HTTP mode listen only on this machine by default.

Upgrading.

  • If you run the MCP server with --transport streamable-http and serve other machines (for example from a container) without passing --host, add --host 0.0.0.0. The default is now 127.0.0.1, so the server only accepts connections from the same machine until you do. With --host 0.0.0.0 the endpoint stays unauthenticated, and the server logs a warning saying so: keep it on a trusted network or behind an authenticating proxy.
  • The default stdio mode is unchanged. That's the mode used by Claude Desktop, Claude Code and the MCP Registry listing.
  • If you pin old versions of these packages, expect a dependency conflict. The new minimums are pyarrow 23.0.1, lxml 6.1.0, orjson 3.11.6, pydantic 2.4.0, jinja2 3.1.6 and tqdm 4.66.3, plus mcp 1.28.1 and starlette 1.3.1 in [ai]. A fresh install already resolved to these versions or newer, so most environments see no change.

Security

  • The MCP server's HTTP transport listened on every interface with no authentication. --transport streamable-http now binds 127.0.0.1 and rejects foreign Host (421) and Origin (403) headers there, which blocks DNS rebinding from a web page. Pass --host 0.0.0.0 to serve other machines, such as from a container; it logs that the endpoint is unauthenticated. stdio is unchanged.
  • Dependency floors no longer admit releases with known advisories. The declared minimums allowed pyarrow 17.0.0, lxml 4.4, orjson 3.6.0, pydantic 2.0.0, jinja2 3.1.0, tqdm 4.62.0, and in [ai] starlette 0.36.0 and mcp 1.12.3, which pip-audit flags; a fresh install already resolved past them. The floors are now each package's first patched release, so 0 advisories at the minimums.