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
t01: direct_dispatcher locals left/right -> client/server
t03: migration.md drop "(workaround)", add_request_handler is the supported path
t06+07: Server.middleware comment rewritten + TODO (was stale post-swap)
t09: delete stale ServerRegistry section header
t11: drop Connection.client_info/.client_capabilities properties
(no readers; v1 only exposed client_params; check_capability reads through)
t12: send_raw_request docstrings point at CallOptions keys
t14+26: drop dump_params from peer.__all__
t20+02: resumption_token/on_resumption_token annotated client-side/SHTTP-only,
and as 2025-11-25-and-earlier (resumption removed in next protocol rev)
t24: _route_notification docstring (correlation rationale)
t15+19: drop unneeded `from __future__ import annotations` from
server/context.py and server/session.py (no cycle, no forward refs)
t05+08 answered (no code change): HandlerEntry.handler Any is required storage
erasure; correlation enforced at add_request_handler.
The internal layers (`ToolManager.call_tool`, `Tool.run`, `Prompt.render`, `ResourceTemplate.create_resource`, etc.) now require `context` as a positional argument.
`MCPServer` does not expose public APIs for `subscribe_resource`, `unsubscribe_resource`, or `set_logging_level` handlers. In v1, the workaround was to reach into the private lowlevel server and use its decorator methods:
In v2, the lowlevel `Server`no longer has decorator methods (handlers are constructor-only), so the equivalent workaround is `add_request_handler`:
445
+
In v2, the lowlevel `Server`supports arbitrary request handlers directly via `add_request_handler` (the decorator methods are gone; handlers are otherwise constructor-only). From `MCPServer`, access it via `_lowlevel_server`:
0 commit comments