go-sdk/internal/jsonrpc2
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Rob Findley 98e67fdf62 mcp: improvements for 'stateless' streamable servers; 'distributed' mode
Several improvements for the stateless streamable mode, plus support for
a 'distributed' (or rather, distributable) version of the stateless
server.

- Add a 'Stateless' option to StreamableHTTPOptions and
  StreamableServerTransport, which controls stateless behavior.
  GetSessionID may still return a non-empty session ID.
- Audit validation of stateless mode to allow requests with a session
  id. Propagate this session ID to the temporary connection.
- Peek at requests to allow 'initialize' requests to go through to the
  session, so that version negotiation can occur (FIXME: add tests).

Fixes #284
For #148
2025-08-20 09:59:52 -04:00
..
conn.go mcp: improvements for 'stateless' streamable servers; 'distributed' mode 2025-08-20 09:59:52 -04:00
frame.go internal/jsonrpc2: allow asynchronous writes 2025-08-08 12:38:43 -04:00
jsonrpc2.go mcp: implement a concurrency model for calls 2025-08-19 11:21:02 -04:00
jsonrpc2_test.go mcp: implement a concurrency model for calls 2025-08-19 11:21:02 -04:00
messages.go jsonrpc: expose encoding and decoding functions (#114) 2025-07-14 07:01:40 -04:00
net.go internal/jsonrpc2_v2: update for go1.16+ 2025-05-27 10:50:54 -07:00
serve.go internal/mcp: implement HTTP SSE transport 2025-04-23 19:15:20 -07:00
serve_test.go internal/jsonrpc2_v2,mcp: remove unneeded dependencies 2025-06-18 22:11:26 -07:00
wire.go mcp: improvements for 'stateless' streamable servers; 'distributed' mode 2025-08-20 09:59:52 -04:00
wire_test.go x/tools: modernize interface{} -> any 2025-02-19 15:14:27 -08:00