Open
Conversation
Split the release-notes skill into prepare-release and publish-release skills. Factor SemVer assessment logic into bump-version as single source of truth. Replace nonexistent Microsoft.DotNet.GenAPI with Microsoft.DotNet.ApiDiff.Tool from the .NET transport feed, with pause-on-failure instead of manual fallback. Remove Manual API Summary approach. Remove pre-1.0 considerations throughout. Rewrite release.md as a simplified overview of the two-skill workflow. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…imental-gated APIs Add guidance for dismissing breaking changes that only affect code paths exclusively gated by [Experimental] APIs. When every path to the breaking impact requires suppressing an experimental diagnostic (e.g., a constructor marked [Experimental]), the change is not considered breaking. Example: adding an abstract member to a public abstract class where the only accessible constructor is [Experimental(MCPEXP002)] is dismissed because consumers must already opt into the experimental subclassing API. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- NuGet package <Copyright>: changed from 'Anthropic and Contributors' to match the website footer and LICENSE file - LICENSE: updated year range from 2024-2025 to 2024-2026 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR prepares the v1.1.0 release of the C# MCP SDK. It bumps the version from 1.0.0 to 1.1.0 (a MINOR release with new public API surface and no breaking changes), updates the copyright metadata, and overhauled the release process by replacing the old monolithic release-notes skill with two focused skills (prepare-release and publish-release) along with detailed supporting reference documentation.
Changes:
- Version bump from
1.0.0to1.1.0insrc/Directory.Build.props, with copyright updated to reflect the LF Projects LLC entity - LICENSE year range updated to 2024-2026
- New
prepare-releaseandpublish-releaseCopilot skills added with supporting reference guides (SemVer assessment, categorization, API compat/diff, README validation, formatting, breaking change classification), replacing the oldrelease-notesskill
Reviewed changes
Copilot reviewed 11 out of 14 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
src/Directory.Build.props |
Version bumped to 1.1.0; copyright updated to "Model Context Protocol a Series of LF Projects, LLC." |
LICENSE |
Copyright year range extended to 2024-2026 |
.github/workflows/release.md |
Simplified release docs to reference new skill-based workflow |
.github/skills/release-notes/SKILL.md |
Old skill removed (fully deleted) |
.github/skills/prepare-release/SKILL.md |
New skill for preparing a release PR |
.github/skills/prepare-release/references/readme-snippets.md |
Reference guide for validating README code samples |
.github/skills/prepare-release/references/categorization.md |
Reference guide for categorizing PRs in release notes |
.github/skills/prepare-release/references/apicompat-apidiff.md |
Reference guide for running ApiCompat and ApiDiff tools |
.github/skills/publish-release/SKILL.md |
New skill for creating the GitHub release after a prepare-release PR is merged |
.github/skills/publish-release/references/formatting.md |
Reference guide for release notes formatting |
.github/skills/bump-version/SKILL.md |
Updated to incorporate SemVer-informed version assessment |
.github/skills/bump-version/references/semver-assessment.md |
New SemVer assessment guide (shared reference) |
.github/skills/breaking-changes/SKILL.md |
Updated output description to reference new skill names |
.github/skills/breaking-changes/references/classification.md |
Expanded guidance on dismissing potential breaks gated by [Experimental] APIs |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
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.
This PR does a few things:
prepare-releaseandpublish-releaseCopilot skills with supporting reference documentation for categorization, breaking change classification, SemVer assessment, and ApiCompat/ApiDiff tooling.prepare-releaseskill to prepare the v1.1.0 release — Bumps version from 1.0.0 to 1.1.0, validates API compatibility against the v1.0.0 baseline, and generates API diff reports.<Copyright>metadata with the project LICENSE file and the modelcontextprotocol.io website footer. Updates the LICENSE year range to 2024-2026.Release v1.1.0
Bumps version from 1.0.0 to 1.1.0. This is a MINOR release adding new public API surface with no breaking changes.
SemVer Assessment
The MINOR bump is driven by:
McpClient.Completionproperty and completion details types (ClientCompletionDetails,HttpClientCompletionDetails,StdioClientCompletionDetails)AllowedValuesAttributeBreaking Change Audit
One potential breaking change was examined and dismissed:
Completionproperty toMcpClient. Dismissed becauseMcpClient's only constructor isprotectedand marked[Experimental(MCPEXP002)]("Subclassing McpClient and McpServer is experimental and subject to change"). Compatibility suppressions added for all TFMs.What's Changed
Documentation Updates
Repository Infrastructure Updates
EnablePackageValidationfor all src packages with1.0.0baseline EnableEnablePackageValidationfor all src packages with1.0.0baseline #1330 by @jeffhandley (co-authored by @copilot @stephentoub)Acknowledgements
API Compatibility Report
✅ All packages pass API compatibility validation against v1.0.0 baseline. Existing CP0005 suppressions in ModelContextProtocol.Core for the abstract
Completionproperty addition (gated by[Experimental]).API Diff Report
ModelContextProtocol.Core
namespace ModelContextProtocol.Client { public abstract class McpClient : ModelContextProtocol.McpSession { + public abstract System.Threading.Tasks.Task<ModelContextProtocol.Client.ClientCompletionDetails> Completion { get; } } + public class ClientCompletionDetails + { + public ClientCompletionDetails(); + public System.Exception? Exception { get; set; } + } + public sealed class HttpClientCompletionDetails : ModelContextProtocol.Client.ClientCompletionDetails + { + public HttpClientCompletionDetails(); + public System.Nullable<System.Net.HttpStatusCode> HttpStatusCode { get; set; } + } + public sealed class StdioClientCompletionDetails : ModelContextProtocol.Client.ClientCompletionDetails + { + public StdioClientCompletionDetails(); + public System.Nullable<int> ExitCode { get; set; } + public System.Nullable<int> ProcessId { get; set; } + public System.Collections.Generic.IReadOnlyList<string>? StandardErrorTail { get; set; } + } }ModelContextProtocol
No public API changes.
ModelContextProtocol.AspNetCore
No public API changes.