v0.3.0-preview.1
Pre-release
Pre-release
The v0.3.0-preview.1 release introduces spec-aligned content type renames, session ID support across transports, structured output for server tools, and improved Streamable HTTP client behavior.
Breaking Changes
Refer to the C# SDK Versioning documentation for information regarding our versioning, breaking change, and support approaches.
- Content type renames to match spec #513
Contentrenamed toContentBlockwith subclassesTextContentBlock,ImageContentBlock,AudioContentBlock, andResourceContentBlock;CallToolResponserenamed toCallToolResult;CancelledNotificationrenamed toCancelledNotificationParams;ProgressNotificationrenamed toProgressNotificationParams;Referencereplaced with derived typesResourceReference,ResourceTemplateReference, andPromptReference;CallToolRequestParamssealed- Migration: Update all type name references throughout consuming code; search-and-replace is mostly sufficient
- Session ID support added across transports #466
SessionIdproperty added to theITransportandIMcpEndpointinterfaces, requiring all custom implementations to add this member;StreamableHttpServerTransport.InitializeRequestproperty replaced withOnInitRequestReceivedcallback- Migration: Add
public string? SessionId => null;to customITransport/IMcpEndpointimplementations; replace reads of.InitializeRequestwith callback via.OnInitRequestReceived
What's Changed
- Add context to complete requests #488 by @stephentoub
- Add structured output/output schema support for server-side tools #480 by @eiriktsarpalis (co-authored by @stephentoub)
- Pass session IDs to MCP endpoints #466 by @eiriktsarpalis (co-authored by @halter73)
- Make enums serialize as strings if using the reflection-based serializer #473 by @eiriktsarpalis
- Update Microsoft.Extensions.AI version and expose JSON configuration on
McpServerResourceCreateOptions#511 by @sbomer (co-authored by @eiriktsarpalis) - Update content types according to latest spec #513 by @stephentoub
- Fix visibility of polyfill #523 by @stephentoub
- Add a callback for receiving stderr output #525 by @stephentoub
- Send MCP-Protocol-Version header in Streamable HTTP client transport #500 by @halter73
- Send DELETE request when closing a Streamable HTTP session on the client #501 by @halter73
- Add 2025-06-18 as supported protocol version #529 by @stephentoub
Documentation Updates
- Remove incorrect acknowledgement from README of new Core package #482 by @halter73
- Fix QuickstartClient path #528 by @stephentoub
Repository Infrastructure Updates
- Bump version to 0.2.0-preview.4 by @halter73
- Bump version number to 0.3.0 #534 by @eiriktsarpalis
Acknowledgements
- @sbomer made their first contribution in #511
- @AArnott submitted issue #425 (resolved by #466) and issue #487 (resolved by #525)
- @rlacaci submitted issue #357 (resolved by #511)
- @ihrpr submitted issues #508, #517, and #518 (resolved by #513)
- @akeit0 submitted issue #522 (resolved by #523)
- @AArnott reviewed pull requests
Full Changelog: v0.2.0-preview.3...v0.3.0-preview.1