Robert Findley
dae88535ba
mcp: support stateless streamable sessions ( #277 )
...
Support stateless streamable sessions by adding a GetSessionID function
to StreamableHTTPOptions. If GetSessionID returns "", the session is
stateless, and no validation is performed. This is implemented by
providing the session a trivial initialization state.
To implement this, some parts of #232 (distributed sessions) are copied
over, since they add an API for creating an already-initialized session.
In total, the following new API is added:
- StreamableHTTPOptions.GetSessionID
- ServerSessionOptions (a new parameter to Server.Connect)
- ServerSessionState
- ClientSessionOptions (a new parameter to Client.Connect, for symmetry)
For #10
2025-08-11 16:43:46 -04:00
..
testdata
mcp: don't mark the server sesion as initialized prematurely
2025-08-07 14:59:36 -04:00
client.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
client_list_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
client_test.go
jsonschema: remove jsonschema code and depend on google/jsonschema-go ( #262 )
2025-08-07 15:30:06 -04:00
cmd.go
internal/mcp: rename Stream->Connection
2025-06-17 17:55:11 -07:00
cmd_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
conformance_go124_test.go
internal/mcp: update protocol versions
2025-06-18 08:11:16 -07:00
conformance_go125_test.go
internal/mcp: update protocol versions
2025-06-18 08:11:16 -07:00
conformance_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
content.go
mcp: dedup wire type for image and audio ( #149 )
2025-07-21 11:40:32 -04:00
content_test.go
mcp: don't omit required fields in ImageContent and AudioContent ( #95 )
2025-07-19 17:08:56 -04:00
event.go
mcp: incorporate EventStore into StreamableServerTransport ( #156 )
2025-07-23 13:42:50 -04:00
event_test.go
mcp: incorporate EventStore into StreamableServerTransport ( #156 )
2025-07-23 13:42:50 -04:00
example_middleware_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
example_progress_test.go
mcp: NewClient and NewServer take Implementation ( #113 )
2025-07-10 16:57:38 -04:00
features.go
mcp: advertise a capability if and only if added ( #93 )
2025-07-10 15:52:11 -04:00
features_test.go
jsonschema: remove jsonschema code and depend on google/jsonschema-go ( #262 )
2025-08-07 15:30:06 -04:00
logging.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
mcp-repo-replace.txt
internal/mcp: add a script to create the mcp SDK repo
2025-06-20 14:24:49 -07:00
mcp.go
generate.go: remove
2025-06-23 20:16:40 -04:00
mcp_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
prompt.go
mcp: new API for features ( #88 )
2025-07-07 14:54:52 -04:00
protocol.go
mcp: rename mcp{Params,Result} to is{Params,Result} ( #270 )
2025-08-09 11:06:59 -04:00
protocol_test.go
mcp: implement completion ( #55 )
2025-07-01 13:09:15 -04:00
resource.go
mcp/Resource: Refactor URI Template Matching with uritemplate Library ( #100 )
2025-07-08 15:52:54 -04:00
resource_go124.go
internal/mcp: add the FileResourceHandler method
2025-05-19 11:15:23 -07:00
resource_pre_go124.go
internal/mcp: add the FileResourceHandler method
2025-05-19 11:15:23 -07:00
resource_test.go
mcp/Resource: Refactor URI Template Matching with uritemplate Library ( #100 )
2025-07-08 15:52:54 -04:00
root.go
internal/mcp: implement roots
2025-05-13 07:52:49 -07:00
server.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
server_example_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
server_test.go
jsonschema: remove jsonschema code and depend on google/jsonschema-go ( #262 )
2025-08-07 15:30:06 -04:00
session.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
shared.go
mcp: rename mcp{Params,Result} to is{Params,Result} ( #270 )
2025-08-09 11:06:59 -04:00
shared_test.go
mcp: test nil params crash vulnerability
2025-08-05 12:28:36 -04:00
sse.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
sse_example_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
sse_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
streamable.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
streamable_test.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
tool.go
jsonschema: remove jsonschema code and depend on google/jsonschema-go ( #262 )
2025-08-07 15:30:06 -04:00
tool_test.go
jsonschema: remove jsonschema code and depend on google/jsonschema-go ( #262 )
2025-08-07 15:30:06 -04:00
transport.go
mcp: support stateless streamable sessions ( #277 )
2025-08-11 16:43:46 -04:00
transport_test.go
mcp: handle bad trailing stdio input graciously ( #179 ) ( #192 )
2025-08-06 11:40:39 -04:00
util.go
internal/util: move FieldJSONInfo into jsonschema/util ( #251 )
2025-08-06 12:07:57 -04:00