Bump the other group with 31 updates#866
Open
dependabot[bot] wants to merge 1 commit intov11.0-previewfrom
Open
Bump the other group with 31 updates#866dependabot[bot] wants to merge 1 commit intov11.0-previewfrom
dependabot[bot] wants to merge 1 commit intov11.0-previewfrom
Conversation
Bumps Autofac from 9.0.0 to 9.1.0 Bumps Autofac.Extensions.DependencyInjection from 10.0.0 to 11.0.0 Bumps Azure.Extensions.AspNetCore.Configuration.Secrets from 1.4.0 to 1.5.0 Bumps Azure.Identity to 1.18.0, 1.20.0 Bumps Azure.Security.KeyVault.Secrets from 4.8.0 to 4.9.0 Bumps Azure.Storage.Blobs from 12.26.0 to 12.27.0 Bumps ConfigCat.Client from 9.4.3 to 9.5.0 Bumps csharpier from 1.2.5 to 1.2.6 Bumps Dapper from 2.1.66 to 2.1.72 Bumps dotnet-coverage from 18.3.1 to 18.5.2 Bumps FirebaseAdmin from 3.4.0 to 3.5.0 Bumps FluentAssertions from 7.2.0 to 7.2.2 Bumps Google.Cloud.Firestore from 4.1.0 to 4.2.0 Bumps MassTransit from 8.5.7 to 9.1.0 Bumps Microsoft.EntityFrameworkCore from 10.0.0 to 10.0.4 Bumps Microsoft.Extensions.Configuration from 10.0.0 to 10.0.3 Bumps Microsoft.Extensions.Hosting.Abstractions from 10.0.0 to 10.0.3 Bumps ModelContextProtocol from 0.4.0-preview.3 to 1.2.0 Bumps Npgsql from 10.0.1 to 10.0.2 Bumps Npgsql.EntityFrameworkCore.PostgreSQL from 10.0.0 to 10.0.1 Bumps OpenTelemetry from 1.14.0 to 1.15.1 Bumps OpenTelemetry.Extensions.Hosting from 1.14.0 to 1.15.1 Bumps OpenTelemetry.Instrumentation.AspNetCore from 1.14.0 to 1.15.1 Bumps Polly from 8.6.5 to 8.6.6 Bumps Serilog from 4.3.0 to 4.3.1 Bumps Swashbuckle.AspNetCore.ReDoc from 10.1.0 to 10.1.7 Bumps Swashbuckle.AspNetCore.SwaggerUI from 10.1.0 to 10.1.7 Bumps xunit.analyzers from 1.26.0 to 1.27.0 Bumps xunit.v3.assert from 3.2.1 to 3.2.2 Bumps xunit.v3.extensibility.core from 3.2.1 to 3.2.2 Bumps xunit.v3.mtp-v2 from 3.2.1 to 3.2.2 --- updated-dependencies: - dependency-name: Autofac dependency-version: 9.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: Autofac.Extensions.DependencyInjection dependency-version: 11.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: other - dependency-name: Azure.Extensions.AspNetCore.Configuration.Secrets dependency-version: 1.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: Azure.Identity dependency-version: 1.18.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: Microsoft.Extensions.Configuration dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Microsoft.Extensions.Hosting.Abstractions dependency-version: 10.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Azure.Identity dependency-version: 1.20.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: Azure.Security.KeyVault.Secrets dependency-version: 4.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: Azure.Storage.Blobs dependency-version: 12.27.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: ConfigCat.Client dependency-version: 9.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: csharpier dependency-version: 1.2.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Dapper dependency-version: 2.1.72 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: dotnet-coverage dependency-version: 18.5.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: FirebaseAdmin dependency-version: 3.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: FluentAssertions dependency-version: 7.2.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Google.Cloud.Firestore dependency-version: 4.2.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: MassTransit dependency-version: 9.1.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: other - dependency-name: ModelContextProtocol dependency-version: 1.2.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: other - dependency-name: Npgsql dependency-version: 10.0.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Microsoft.EntityFrameworkCore dependency-version: 10.0.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Npgsql.EntityFrameworkCore.PostgreSQL dependency-version: 10.0.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: OpenTelemetry dependency-version: 1.15.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: OpenTelemetry.Extensions.Hosting dependency-version: 1.15.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: OpenTelemetry.Instrumentation.AspNetCore dependency-version: 1.15.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: Polly dependency-version: 8.6.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Serilog dependency-version: 4.3.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Swashbuckle.AspNetCore.ReDoc dependency-version: 10.1.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: Swashbuckle.AspNetCore.SwaggerUI dependency-version: 10.1.7 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: xunit.analyzers dependency-version: 1.27.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: other - dependency-name: xunit.v3.mtp-v2 dependency-version: 3.2.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: xunit.v3.assert dependency-version: 3.2.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other - dependency-name: xunit.v3.extensibility.core dependency-version: 3.2.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: other ... Signed-off-by: dependabot[bot] <support@github.com>
This was referenced Apr 2, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Updated Autofac from 9.0.0 to 9.1.0.
Release notes
Sourced from Autofac's releases.
9.1.0
This is a pretty big release for Autofac with some major new functionality!
AnyKey Support
First, Autofac now natively supports the concept of
AnyKey. It behaves the same wayAnyKeyworks in Microsoft.Extensions.DependencyInjection, but it is native to Autofac directly. The unit tests here show some very detailed examples of usage, but on a high level:Inject Service Key Into Constructors
The new
[ServiceKey]attribute allows you to inject the service key provided during resolution. This is handy in conjunction withAnyKey. Again, this is similar to the construct in Microsoft.Extensions.DependencyInjection, but with native Autofac.First, mark up your class to take the constructor parameter.
Then when you resolve the class, the service key will automatically be injected.
You can also make use of this in a lambda registration.
Metrics
Some metrics have been introduced that can allow you to capture counters on how long middleware is taking, how often lock contention occurs, and so on.
Set the
AUTOFAC_METRICSenvironment variable in your process totrueor1to enable this feature. You can see the set of counters that will become available here.... (truncated)
Commits viewable in compare view.
Updated Autofac.Extensions.DependencyInjection from 10.0.0 to 11.0.0.
Release notes
Sourced from Autofac.Extensions.DependencyInjection's releases.
11.0.0
Breaking Changes
AnyKeysupport to use the new native support forAnyKeyin core Autofac - this removes some of the custom internals used to support keyed services and moves that to core Autofac.Other Changes
Full Changelog: autofac/Autofac.Extensions.DependencyInjection@v10.0.0...v11.0.0
Commits viewable in compare view.
Updated Azure.Extensions.AspNetCore.Configuration.Secrets from 1.4.0 to 1.5.0.
Release notes
Sourced from Azure.Extensions.AspNetCore.Configuration.Secrets's releases.
1.5.0
1.5.0 (2026-03-04)
Features Added
AddKeyVaultSecretsextension methods onIConfigurationBuilderthat create aSecretClientfrom configuration using theAzure.Coreconfiguration extensions (built onSystem.ClientModel).Bugs Fixed
OperationCanceledExceptioninPollForSecretChangesAsyncso the background polling loop exits cleanly when the provider is disposed.1.5.0-beta.2
1.5.0-beta.2 (2026-03-19)
Features Added
1.5.0-beta.1
1.5.0-beta.1 (2026-03-27)
Features Added
Commits viewable in compare view.
Updated Azure.Identity from 1.17.1 to 1.18.0.
Release notes
Sourced from Azure.Identity's releases.
No release notes found for this version range.
Commits viewable in compare view.
Updated Azure.Identity from 1.17.1 to 1.20.0.
Release notes
Sourced from Azure.Identity's releases.
1.20.0
1.20.0 (2026-03-30)
Features Added
appsettings.json.Breaking Changes
AddAzureClient,AddKeyedAzureClient, andWithAzureCredentialreturn type changed fromIHostApplicationBuildertoIClientBuilderto align with theIClientBuildercomposition change in System.ClientModel.1.19.0
1.19.0 (2026-03-11)
Features Added
ClientCertificateCredentialto specify a path in the form ofcert:/StoreLocation/StoreName/Thumbprintto refer to a certificate in the platform certificate store - such as the Windows Certificate Store on Windows, and the KeyChain on MacOS - instead of a file on disk. For example to load a certificate from the "My" store in the "CurrentUser" location use the pathcert:/CurrentUser/My/E661583E8FABEF4C0BEF694CBC41C28FB81CD870(A community contribution, courtesy of fowl2).Other Changes
Microsoft.Identity.ClientandMicrosoft.Identity.Client.Extensions.Msaldependencies to version 4.83.1.Commits viewable in compare view.
Updated Azure.Security.KeyVault.Secrets from 4.8.0 to 4.9.0.
Release notes
Sourced from Azure.Security.KeyVault.Secrets's releases.
4.9.0
4.9.0 (2026-03-04)
Bugs Fixed
Other Changes
2025-07-01.System.IdentityModel.Tokens.Jwtdependency to 8.14.0Commits viewable in compare view.
Updated Azure.Storage.Blobs from 12.26.0 to 12.27.0.
Release notes
Sourced from Azure.Storage.Blobs's releases.
12.27.0-beta.1
12.27.0-beta.1 (2026-03-24)
Features Added
Commits viewable in compare view.
Updated ConfigCat.Client from 9.4.3 to 9.5.0.
Release notes
Sourced from ConfigCat.Client's releases.
9.5.0
This release focuses on networking-related improvements. Upgrading is highly recommended if you occasionally see HTTP errors or timeouts in the SDK's log.
Improvements:
HttpClientHandlerwithin 30 seconds).ConfigCatClientOptions.HttpClientHandler. Alternative:ConfigCatClientOptions.ProxyorConfigCatClientOptions.ConfigFetcher = new HttpClientConfigFetcher(...).Proxyoption toConfigCatClientOptions.HttpClientConfigFetcherpublic and allows subclassing to provide an extension point for customizing request headers.HttpClientConfigFetchercancelable for targets below .NET 5.HttpClientConfigFetcher.UnsupportedOSPlatformannotations for APIs that are not available when running in browser.CF-RAYheader also when the headers are received but downloading the response body times out or fails.Bug fixes:
IConfigFetcherinstances (as multipleConfigCatClientmay be configured to use those.)Commits viewable in compare view.
Updated csharpier from 1.2.5 to 1.2.6.
Release notes
Sourced from csharpier's releases.
1.2.6
What's Changed
[Bug]: XML with DOCTYPE results in "invalid xml" warning #1809
CSharpier was not formatting xml that included a doctype and instead reporting that it was invalid xml.
[Bug]: Initializing a span using
stackallocleads to different formatting compared tonew#1808When initializing a spacn using stackalloc, it was not being formatting consistently with other code
[Bug]: Comments in otherwise empty object pattern disappear when formatting #1804
CSharpier was removing comments if they were the only content of an object pattern.
With the default
HttpTransportMode.AutoDetecttransport mode, the client automatically tries Streamable HTTP first. You can also setTransportMode = HttpTransportMode.StreamableHttpexplicitly if you know the server supports it.Server-side migration. If you previously relied on
/ssebeing mapped automatically, you now needEnableLegacySse = true(suppressing theMCP9004warning) to keep serving those endpoints. The recommended path is to migrate all clients to Streamable HTTP and then removeEnableLegacySse.Transition period. If some clients still need SSE while others have already migrated to Streamable HTTP, set
EnableLegacySse = truewithStateless = false. Both transports are served simultaneously byMapMcp()— Streamable HTTP on the root endpoint and SSE on/sseand/message. Once all clients have migrated, removeEnableLegacySseand optionally switch toStateless = true.SSE (legacy — opt-in only)
Legacy SSE endpoints are now disabled by default and must be explicitly enabled via
HttpServerTransportOptions.EnableLegacySse. This is the primary reason they are disabled — the SSE transport has no built-in HTTP-level backpressure.The legacy SSE transport separates the request and response channels: clients POST JSON-RPC messages to
/messageand receive responses through a long-lived GET SSE stream on/sse. The POST endpoint returns 202 Accepted immediately after queuing the message — it does not wait for the handler to complete. This means there is no HTTP-level backpressure on handler concurrency, because each POST frees its connection immediately regardless of how long the handler runs.Internally, handlers are dispatched with a fire-and-forget pattern. A client can send unlimited POST requests to
/messagewhile keeping the GET stream open, and each one spawns a concurrent handler with no built-in limit.The GET stream does provide session lifetime bounds: handler cancellation tokens are linked to the GET request's
HttpContext.RequestAborted, so when the client disconnects the SSE stream, all in-flight handlers are cancelled. This is similar to SignalR's connection-bound lifetime model — but unlike SignalR, there is no per-client concurrency limit likeMaximumParallelInvocationsPerClient. The GET stream provides cleanup on disconnect, not rate-limiting during the connection.2. Obsolete 2-arg RequestContext constructor #1462
The
RequestContext(McpServer, JsonRpcRequest)constructor is now[Obsolete]with diagnosticMCP9003, producing build warnings. TheParamsproperty is also changed fromTParams?toTParams.Migration: Use the new 3-arg constructor:
new RequestContext(server, request, parameters).What's Changed
... (truncated)
1.1.0
Highlights of v1.1.0 include client completion details for understanding when and why a client connection ended, auto-populated completion handlers from
AllowedValuesAttribute, and bug fixes for server-initiated ping handling, server capabilities initialization, and in-flight message handler cleanup.What's Changed
Documentation Updates
Repository Infrastructure Updates
EnablePackageValidationfor all src packages with1.0.0baseline #1330 by @jeffhandley (co-authored by @Copilot @stephentoub)Acknowledgements
Full Changelog: modelcontextprotocol/csharp-sdk@v1.0.0...v1.1.0
1.0.0
This is the first stable release of the ModelContextProtocol C# SDK. Thank you to all of the contributors who helped us achieve this milestone!
Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
HttpServerTransportOptions.RunSessionHandleris now annotated with[Experimental("MCPEXP002")]RunSessionHandlerwill produce a compile-time warning (or error withTreatWarningsAsErrors); suppress with#pragma warning disable MCPEXP002ConfigureSessionOptionsas an alternative;RunSessionHandlermay be removed or change signatures in a future releaseWhat's Changed
RunSessionHandlerexperimental (MCPEXP002) #1383 by @halter73 (co-authored by @Copilot @jeffhandley)Documentation Updates
Repository Infrastructure Updates
Acknowledgements
Full Changelog: modelcontextprotocol/csharp-sdk@v1.0.0-rc.1...v1.0.0
1.0.0-rc.1
This release candidate completes a full API surface area audit ahead of the 1.0.0 stable release, with more changes to public APIs to ensure consistency and long-term maintainability. Protocol DTO types are updated to match the MCP specification, deprecated filter APIs are removed, and bug fixes improve transport reliability and JSON handling.
Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
Address asymmetry in McpServerHandlers/McpClientHandlers and make all filter properties settable #1337
McpClientHandlersto match the already-sealedMcpServerHandlersMcpServerOptions.Handlers,McpServerOptions.Filters, and allIList<T>filter properties settable with null validationRemove server back-references from protocol DTO types #1345
Tool.McpServerTool,Prompt.McpServerPrompt,Resource.McpServerResource, andResourceTemplate.McpServerResourcepropertiesMcpServerPrimitiveCollection.TryGetPrimitive()for name-based lookups insteadMake Tool.Name required to match other protocol types #1351
requiredmodifier toTool.Name, matchingPrompt.Name,Resource.Name, and otherIBaseMetadataimplementationsNamein object initializersMake LoggingMessageNotificationParams.Data required per MCP spec #1353
LoggingMessageNotificationParams.DatafromJsonElement?torequired JsonElementper the MCP specificationFix CreateMessageRequestParams.Metadata type to JsonObject #1354
CreateMessageRequestParams.MetadatafromJsonElement?toJsonObject?to match all other_meta/Metaproperties in the SDKNormalize CallToolResult.StructuredContent to JsonElement? #1357
CallToolResult.StructuredContentfromJsonNode?toJsonElement?for consistency with the rest of the SDKJsonSerializer.SerializeToElement()to produce aJsonElementUnify service configuration for
ISseEventStreamStore,IMcpTaskStore, andISessionMigrationHandler#1362Add explicit [Experimental] protected constructors to McpClient and McpServer #1363
McpClientandMcpServernow require suppressingMCPEXP002to subclassRemove MCP9002 obsolete APIs and document obsolete diagnostics #1366
AddXxxFilterextension methods onIMcpServerBuilder(e.g.AddCallToolFilter,AddListToolsFilter) that were deprecated under diagnosticMCP9002WithRequestFilters()andWithMessageFilters()insteadFix McpClientPrompt/Resource types to use RequestOptions like McpClientTool does #1370
JsonSerializerOptionswithRequestOptionsparameter for consistency acrossMcpClientPrompt,McpClientResource, andMcpClientToolWhat's Changed
... (truncated)
0.9.0-preview.2
This release focuses on API surface consistency and correctness ahead of 1.0.0. Public collection properties are now typed as
IList<T>instead of concreteList<T>orT[], andRoot.Metais aligned with the rest of the protocol DTOs by usingJsonObject?. Other improvements include new experimental Extensions support for capabilities, missingResourceLinkBlockproperties, improved mimeType handling, and several documentation and test reliability fixes.We plan to release the stable 1.0.0 release early in the week of February 23, 2026.
Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
Replace concrete collection types with interfaces in public API surface #1326
List<T>andT[]properties onProtectedResourceMetadata,ToolResultContentBlock,ListTasksResult, andDynamicClientRegistrationResponsechanged toIList<T>. Replace.Lengthwith.Countand cast toList<T>ifList<T>-specific members are needed.Fix
Root.Metato useJsonObjectinstead ofJsonElement#1341Root.Metachanged fromJsonElement?toJsonObject?. Replacemeta.Value.GetProperty("key").GetString()with(string?)meta["key"].Make
UrlElicitationRequiredErrorData.Elicitationsconsistent with other Protocol DTOs #1335Elicitationschanged fromIReadOnlyList<ElicitRequestParams>withinittoIList<ElicitRequestParams>withset. Code usingList<T>is unaffected since it implements both interfaces.What's Changed
options ??= new()in McpServerImpl constructor #1322 by @stephentoub (co-authored by @Copilot)_connectCtsfield fromMcpClientImpl#1323 by @stephentoub (co-authored by @Copilot)Documentation Updates
Test Improvements
Repository Infrastructure Updates
Acknowledgements
... (truncated)
0.9.0-preview.1
The 0.9.0-preview.1 release includes multiple breaking changes focused on quality, extensibility, usability, and API consistency as we continue refining the SDK in preparation for a stable 1.0.0 release.
We plan to release the stable 1.0.0 release early in the week of February 23, 2026.
Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
Use ReadOnlyMemory<byte> for binary data to eliminate UTF-16 transcoding #1070
ImageContentBlock.Data,AudioContentBlock.Data, andBlobResourceContents.Blobchanged fromstringtoReadOnlyMemory<byte>;FromImage/FromAudiorenamed toFromBytes;BlobResourceContents.Datarenamed toDecodedDataDecodedDatafor decoded bytes andFromBytes(...)factory methodsSplit configuration of request and message filters #1308
Add*Filterextension methods onIMcpServerBuilderreplaced byWithMessageFiltersandWithRequestFilterscallbacks with grouped builder instancesDon't treat McpServerHandlers as an independent options type #1313
McpServerHandlersno longer resolved viaIOptions<McpServerHandlers>; handlers set directly onMcpServerOptions.HandlersMcpServerOptionsdirectlyAdd
ISessionMigrationHandler#1270initializerequestModelContextProtocol.AspNetCore.AllowNewSessionForNonInitializeRequests=truerestores previous behaviorChange ProtectedResourceMetadata URI properties to strings #1264
Uri?/List<Uri>tostring?/List<string>to avoid unwanted URI normalizationUriobjectsHide experimental types from external source generators using internal property pattern #1301
[JsonIgnore]+ internal delegate pattern; external source generators no longer reference experimental typesValidate MCP-Protocol-Version header in Streamable HTTP handler #1277
Update McpErrorCode and fix error code usage to align with MCP spec #1291
MethodNotFoundtoInvalidParamsWhat's Changed
... (truncated)
0.8.0-preview.1
The 0.8.0-preview.1 release includes new server-side capabilities including message-level filters and a distributed cache-backed event stream store, along with several bug fixes for transport reliability. This release also includes a breaking change that seals public Protocol reference types to prevent external inheritance, reinforcing the SDK's API contract as we continue refining toward a stable 1.0.0 release.
Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
JsonRpcMessageContext,ElicitRequestParams.RequestSchema,ElicitRequestParams.LegacyTitledEnumSchema,ContentBlock.Converter,ResourceContents.Converter,PrimitiveSchemaDefinition.ConverterElicitRequestParams.EnumSchemaremoved; useLegacyTitledEnumSchemadirectlyEnumSchemareferences withLegacyTitledEnumSchemaWhat's Changed
DistributedCacheEventStreamStore#1136 by @MackinnonBuck (co-authored by @halter73)Documentation Updates
Test Improvements
Repository Infrastructure Updates
... (truncated)
0.7.0-preview.1
The 0.7.0-preview.1 release adds MCP task support, Streamable HTTP resumability with SSE event stream storage, and support for the 2025-11-25 protocol version. This release also introduces user-defined
JsonSerializerOptionsthroughout SDK serialization APIs and includes several bug fixes for elicitation, source generator diagnostics, and URI template matching. The Streamable HTTP transport includes breaking changes toStreamableHttpServerTransportas part of the resumability implementation.Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
StreamableHttpServerTransport.OnInitRequestReceivedproperty removed; replaced byEventStreamStorefor resumability supportStreamableHttpServerTransport.SessionIdsetter changed from{ get; set; }to{ get; init; }OnInitRequestReceivedusage; useISseEventStreamStoreviaEventStreamStorefor resumability. SetSessionIdin the object initializer instead of post-construction assignment.What's Changed
{+var}) when matching resources #1142 by @halter73Documentation Updates
Test Improvements
Client_CanResumePostResponseStream_AfterDisconnection#1179 by @MackinnonBuckRepository Infrastructure Updates
Acknowledgements
Full Changelog: modelcontextprotocol/csharp-sdk@v0.6.0-preview.1...v0.7.0-preview.1
... (truncated)
0.6.0-preview.1
This release includes improvements to source generator robustness, JSON-RPC deserialization performance, and OpenTelemetry semantic convention alignment. It also adds OAuth incremental scope consent support, fixes session timeout issues, and corrects tool result message handling for sampling with tools. Several documentation improvements and new client conformance tests round out the release.
What's Changed
Documentation Updates
Test Improvements
Repository Infrastructure Updates
... (truncated)
0.5.0-preview.1
The 0.5.0-preview.1 release of the Model Context Protocol C# SDK introduces significant API improvements including a unified
RequestOptionsparameter bag for client methods, removal of previously obsoleted APIs, and new support for Client ID Metadata Documents and URL mode elicitation. This release also adds conformance tests,DebuggerDisplayattributes for protocol types, and a convenience overload for resource subscriptions with handler delegates.Breaking Changes
The 0.5.0-preview.1 release includes several categories of breaking changes as we continue to refine the API surface area for the path toward a 1.0.0 stable release. Refer to the C# SDK Versioning documentation for information regarding our versioning, breaking change, and support approaches.
CallToolAsync,GetPromptAsync,ListResourcesAsync,ReadResourceAsync,SubscribeResourceAsync,UnsubscribeResourceAsync,ListToolsAsync,ListPromptsAsync, and similar now accept a newRequestOptionsparameter instead of individualJsonSerializerOptionsandProgressTokenparameters.JsonSerializerOptionsorProgressTokenas named or positional parameters to high-level request methods will break and must be updated to use theRequestOptionsbag instead.McpServerFactoryclass: Removed obsolete factory class for creating MCP servers.McpClientFactoryclass: Removed obsolete factory class for creating MCP clients.IMcpEndpoint,IMcpClient,IMcpServerLegacyTitledEnumSchemaandEnumSchemaremain in place as obsolete APIs, but they now use a custom diagnostic ID ofMCP9001instead of the defaultCS0618obsoletion diagnostic ID. This allows references to these APIs to be suppressed with a targeted diagnostic.IsConfiguredEndpointRequest()now properly validates absolute URIs by checking both host and scheme match, not just the path. This may cause previously accepted requests to be rejected if host/scheme don't match.ModelContextProtocol.AspNetCore.Authentication.McpAuthenticationOptions.ResourceMetadataUriwas changed fromstringto a nullablestring?.ModelContextProtocol.Authentication.ProtectedResourceMetadata.Resourcewas changed fromrequired Urito a non-required and nullableUri?EnumerateToolsAsync,EnumeratePromptsAsync,EnumerateResourceTemplatesAsync, andEnumerateResourcesAsyncfrom the public API surface. These scenarios are covered by the correspondingList*Asyncmethods.CancellationToken tokenhad the argument renamed fromtokentocancellationTokenfor consistency throughout the SDK.JsonSerializerOptions? serializerOptionsargument were updated to accept aRequestOptions? optionsargument instead, further adopting theRequestOptionsclass introduced in #970.ModelContextProtocol.Client.McpClient.CompleteAsyncwas updated to add an optionalRequestOptions? optionsargument, changing the position of the optionalCancellationTokenargument on the method signature.ModelContextProtocol.Client.McpClient.UnsubscribeFromResourceAsyncarguments were changed to now acceptUnsubscribeRequestParams requestParams, CancellationToken cancellationToken = default.ModelContextProtocol.Client.McpClient.SetLoggingLevelwas renamed toSetLoggingLevelAsync.What's Changed
datatoMcpProtocolException#1028 by @stephentoub (co-authored by @Copilot)Documentation Updates
... (truncated)
0.4.1-preview.1
This release brings protocol type standardization, several MCP specification implementations, and new features including an incremental source generator for automatic
Descriptionattributes from XML comments and client session resumption support. This release includes breaking changes to protocol types and elicitation enum schemas; refer to the Breaking Changes section below for details.We are working toward the first stable version of the C# SDK as version 1.0.0, which will have compliance with Version 2025-11-25 of the MCP specification. We will publish at least one more pre-release version of the SDK before declaring the stable version, and breaking changes to remove obsolete interfaces and extension methods (#774) are expected as part of stabilizing the API.
Breaking Changes
Refer to the C# SDK Versioning documentation for details on versioning and breaking change policies.
EnumSchemais marked[Obsolete]using the defaultCS0618diagnostic, and it becomes an alias forLegacyTitledEnumSchema, which is also marked as[Obsolete]using the defaultCS0618diagnosticWhat's Changed
JsonRpcMessageWithId.RequestIdnon-required #984 by @MackinnonBuckDocumentation Updates
Test Improvements
... (truncated)
Commits viewable in compare view.
Updated Npgsql from 10.0.1 to 10.0.2.
Release notes
Sourced from Npgsql's releases.
10.0.2
v10.0.2 contains several minor bug fixes.
Milestone issues
Full Changelog: npgsql/npgsql@v10.0.1...v10.0.2
Commits viewable in compare view.
Updated Npgsql.EntityFrameworkCore.PostgreSQL from 10.0.0 to 10.0.1.
Release notes
Sourced from Npgsql.EntityFrameworkCore.PostgreSQL's releases.
No release notes found for this version range.
Commits viewable in compare view.
Updated OpenTelemetry from 1.14.0 to 1.15.1.
Release notes
Sourced from OpenTelemetry's releases.
1.15.1
For highlights and announcements pertaining to this release see: Release Notes > 1.15.1.
The following changes are from the previous release 1.15.0.
NuGet: OpenTelemetry v1.15.1
Fixed
Tracer.StartSpan()leaving the new span asActivity.Currentwhenthe previous activity was stopped by another thread during span creation.
(#6257)
Fixed
OverflowExceptioninTraceIdRatioBasedSamplerwhen trace ID bytesproduced
long.MinValue.([#6928])
Fixed precision issues when using
Histogram<float>with customHistogramBucketBoundaries.(#6866)
Fixed a thread-safety issue in
LogRecordSharedPool.Rent().(#6833)
Fixed observable instruments (ObservableCounter, ObservableUpDownCounter,
ObservableGauge) continuing to export stale data points after a callback
stops reporting a series.
(#5950)
See CHANGELOG for details.
NuGet: OpenTelemetry.Api v1.15.1
specification,
which disallows empty baggage names and treats baggage names and values as case
sensitive.
(#6931)
See CHANGELOG for details.
NuGet: OpenTelemetry.Api.ProviderBuilderExtensions v1.15.1
No notable changes.
See CHANGELOG for details.
NuGet: OpenTelemetry.Exporter.Console v1.15.1
No notable ...
Description has been truncated