Skip to content

v4.6.0 — MCP spec 2026-07-28 via Anthropic Tier 1 SDK (mcp 2.x)

Latest

Choose a tag to compare

@lyonzin lyonzin released this 30 Jul 20:40
b34f210

Highlights

Adopts the MCP spec 2026-07-28 — stateless request/response core, per-request _meta.io.modelcontextprotocol/protocolVersion + clientCapabilities, serverInfo on responses — by moving directly to the Anthropic Tier 1 Python SDK (mcp>=2.0.0,<3.0.0).

Delivers the follow-up promised in the v4.5.0-post CHANGELOG note about migrating off mcp.server.fastmcp.

What changed

  • mcp>=1.6.0,<2.0.0mcp>=2.0.0,<3.0.0
  • from mcp.server.fastmcp import FastMCPfrom mcp.server import MCPServer
  • FastMCP("knowledge-rag", host=, port=)MCPServer("knowledge-rag", version="4.6.0")
  • host / port now belong to mcp.run() on non-stdio transports (v2 spec direction)
  • Server now advertises version="4.6.0" in serverInfo per the 2026-07-28 spec

@mcp.tool() / @mcp.resource() / @mcp.prompt() decorator ergonomics are unchanged — the migration is a class rename + import path change.

Backwards compatibility

  • All 13 MCP tool signatures unchanged (check_api_surface --check: OK)
  • Every public function under mcp_server.* frozen (test_backwards_compat.py green)
  • stdio users see zero behaviour change
  • Suite: 417 passed / 0 failed across the 9-cell OS × Python matrix

Why not the third-party fastmcp package

An initial attempt via fastmcp (see closed PR #134) tripped Pillar 5 (perf regression gate): test_bench_orchestrator_idle_rss +21.9% RSS and test_bench_query_cache_5000_entries +17.1% RSS. Cutting the extras to fastmcp-slim[mcp] broke @mcp.tool() at runtime. Anthropic's mcp 2.x is the direct upstream reference — no third-party intermediary, no dependency bloat.

Install / upgrade

pip install --upgrade knowledge-rag         # PyPI
npx -y knowledge-rag@4.6.0                  # NPM
docker pull ghcr.io/lyonzin/knowledge-rag:4.6.0

Full changelog

See README.md#changelog — v4.6.0 entry.