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
{{ message }}
Repository navigation
R1/R2: Implement SDK-backed MCP extension on Restlet transports #1558
Follow-up to R0 draft PR #1556. MCP SDK 2.1.0 stateless HTTP/2, Streamable initialization/POST SSE, bounded GET notifications/replay and official STDIO round-trip are demonstrated. R0 does not authorize Ikanos migration: direct revision/session compatibility fails; the tools fixture matches 19/20 corpus responses, with one Jackson diagnostic difference and an explicit null-ID SDK restriction.
Acceptance: independent org.restlet.ext.mcp APIs; SDK-owned codecs/dispatch; explicit owned/borrowed connector lifecycle and finite byte/queue limits; supported module-path seams; strict revision/profile validation; R1 generic STDIO mechanics before R2 framing helpers; bounded Reactor bridges and cancellation; preserve no-session notifications/error semantics. Recheck complete profile, identity/capability checks and parser diagnostics before any migration. Production SSE/reconnect conformance remains R6. No common RPC API, duplicate dispatcher or SDK-owned HTTP engine. No Ikanos source-copy/header decision is needed for the R0 fixtures; agree attribution before any later copying.
R1 (#1562) and R2 (#1627) are merged into 3.0, covering this issue's acceptance:
org.restlet.ext.mcp uses SDK-owned codecs and dispatch: McpServerAdapter, McpClientAdapter, McpInterceptor and McpRequestContext, with no common RPC API and no duplicate dispatcher.
Connectors are borrowed or owned explicitly, with finite byte, queue and STDIO limits (2e98229).
It is a named module, exporting only org.restlet.ext.mcp.
Only the SDK's 2025-11-25 stateless profile is supported; sessions, listening GET streams, replay and server-initiated requests are deliberately not advertised.
Generic STDIO mechanics come from R1's StreamTransport, with the framing helpers (StdioServerHelper, StdioClientHelper) in R2.
The remaining production SSE and reconnect conformance belongs to R6, which will be tracked separately: sessionful Streamable HTTP behind a spike of the SDK's McpStreamableServerTransportProvider, streamed replies, listening streams and bounded stdio push. Re-checking the profile and attribution before any Ikanos migration stay with Ikanos.
Activity
jlouvel commentedon Nov 5, 2026
R1 (#1562) and R2 (#1627) are merged into
3.0, covering this issue's acceptance:org.restlet.ext.mcpuses SDK-owned codecs and dispatch:McpServerAdapter,McpClientAdapter,McpInterceptorandMcpRequestContext, with no common RPC API and no duplicate dispatcher.org.restlet.ext.mcp.GETstreams, replay and server-initiated requests are deliberately not advertised.StreamTransport, with the framing helpers (StdioServerHelper,StdioClientHelper) in R2.The remaining production SSE and reconnect conformance belongs to R6, which will be tracked separately: sessionful Streamable HTTP behind a spike of the SDK's
McpStreamableServerTransportProvider, streamed replies, listening streams and bounded stdio push. Re-checking the profile and attribution before any Ikanos migration stay with Ikanos.🤖 Generated with Claude Code
jlouvel commentedon Nov 5, 2026
The remaining R6 work is tracked in #1640.