-
Notifications
You must be signed in to change notification settings - Fork 28
Closed
Labels
breaking-changedependenciesPull requests that update a dependency filePull requests that update a dependency filegomcp
Description
Summary
Update github.com/modelcontextprotocol/go-sdk from v0.4.0 to v1.1.0
Current State
- Package: github.com/modelcontextprotocol/go-sdk
- Current Version: v0.4.0
- Proposed Version: v1.1.0
- Update Type: Major
Safety Assessment
- Major version update (0.4.0 -> 1.1.0)
- Includes behavior changes and API additions
- Default stream resumption behavior changed
- New features and experimental OAuth support
Important Behavior Changes
Stream Resumption Disabled by Default (Breaking)
In StreamableServerTransport, the default value of nil for the EventStore field now disables stream resumption, rather than defaulting to use an in-memory event store.
Impact: If your code relies on the default stream resumption behavior, you must explicitly set StreamableHTTPOptions.EventStore to enable it.
Migration:
// Before (implicit in-memory store)
transport := &StreamableServerTransport{}
// After (explicit in-memory store if needed)
transport := &StreamableServerTransport{
EventStore: NewInMemoryEventStore(),
}New Features
API Additions
- IOTransport: New general-purpose transport from
io.ReadCloserandio.WriteCloser - ServerOptions.Logger: Enable server-side logging
- StreamableHTTPOptions.Logger: Enable server-side logging for streamable transport
- StreamableHTTPOptions.EventStore: Explicitly enable stream resumption
- StreamableHTTPOptions.SessionTimeout: Auto-close idle sessions
Experimental OAuth Support
- Client-side OAuth APIs available with
mcp_go_client_oauthbuild tag - APIs may change before official release
Changes Since v0.4.0
- Multiple bug fixes in streamable transport
- Improved documentation for resumability and redelivery
- Enhanced error handling
- Performance improvements
Links
Recommended Action
Step 1: Review Code for Stream Resumption Usage
# Search for StreamableServerTransport usage
grep -r "StreamableServerTransport" .
grep -r "EventStore" .Step 2: Update if stream resumption is NOT needed (most cases)
go get -u github.com/modelcontextprotocol/go-sdk@v1.1.0
go mod tidyStep 3: Update code if stream resumption IS needed
Explicitly configure EventStore in any StreamableServerTransport initialization.
Testing Notes
- Critical: Test all MCP server functionality
- Verify stream handling works as expected
- Check if your code relies on default stream resumption
- Test with various MCP clients
- Verify logging integration if using new Logger options
- Check session timeout behavior
- Run comprehensive integration tests:
make test - Test all workflow executions that use MCP servers
AI generated by Dependabot Dependency Checker
Copilot
Metadata
Metadata
Assignees
Labels
breaking-changedependenciesPull requests that update a dependency filePull requests that update a dependency filegomcp