github modelcontextprotocol/go-sdk v1.1.0-pre.1

pre-release2 days ago

This release introduces a few new features, and includes improvements and bug fixes for the streamable transport. Notably, the default behavior of the streamable server transport is changed to disable streams resumption (see #580).

Behavior Changes

Stream resumption disabled by default. In the StreamableServerTransport, the default value of nil for the EventStore field now disables stream resumption, rather than defaulting to use an in-memory event store. Resumption is not desirable in many cases, particularly for servers that must serve a large number of users and/or streams.

If you want to enable resumption, set StreamableHTTPOptions.EventStore.

In general, we will avoid changing behaviors that may be relied upon by users, but in this case the old default was deemed to be an oversight/bug, and fixing it now will benefit future users.

API Additions

  • IOTransport is a new general-purpose transport constructed from an io.ReadCloser and io.WriteCloser (#444 ).
  • ServerOptions.Logger and StreamableHTTPOptions.Logger enable server-side logging (#170).
  • StreamableHTTPOptions.EventStore enables stream resumption (#587).
  • StreamableHTTPOptions.SessionTimeout adds a timeout which, when set, causes idle sessions to be automatically closed (#499).

Experimental client-side oauth support

The auth package now includes experimental APIs when build with the mcp_go_client_oauth build tag. See auth/client.go for more details. These APIs may change before their official release.

New Contributors

Full Changelog: v1.0.0...v1.1.0-pre.1

Don't miss a new go-sdk release

NewReleases is sending notifications on new releases.