with one click
update-mcp-spec-version
// Instructions for updating the supported Model Context Protocol (MCP) specification version in the `dart_mcp` package.
// Instructions for updating the supported Model Context Protocol (MCP) specification version in the `dart_mcp` package.
Find and close obsolete, stale, or not reproducible issues in the dart-lang/ai repository.
Instructions for updating the README.md file in the `dart_mcp_server` package.
Instructions for adding new features (tools, prompts, etc.) to the dart_mcp_server package.
| name | Update MCP Spec Version |
| description | Instructions for updating the supported Model Context Protocol (MCP) specification version in the `dart_mcp` package. |
This skill guides you through the process of updating the dart_mcp package to support a new version of the Model Context Protocol (MCP) specification.
Review the New Specification:
Update the Protocol Version:
pkgs/dart_mcp/lib/src/api/api.dart.ProtocolVersion enum.
enum ProtocolVersion {
// ...
vYYYY_MM_DD('YYYY-MM-DD'),
}
ProtocolVersion.latestSupported to the new version.
static const latestSupported = ProtocolVersion.vYYYY_MM_DD;
Update Documentation URLs:
2024-11-05) or the regex specification/\d{4}-\d{2}-\d{2}.pkgs/dart_mcp/lib/src/client/sampling_support.dartpkgs/dart_mcp/lib/src/server/server.dartpkgs/dart_mcp/README.mdImplement Schema Changes:
lib/src/api/api.dart against the schema. If you cannot find the schema, pause and ask the user for guidance. All changes must be backed by the real schema.lib/src/api/api.dart as needed, for new features typically you should add a new part file to keep the codebase organized.lib/src/utils/names.dart, adding any new constants that you need. Do not use string literals for map keys.num (or num? for optional fields) instead of int or double, unless the schema explicitly constraints the value to be an integer. The JSON schema number type can be either an integer or floating-point value.Update Client/Server Implementations:
pkgs/dart_mcp/lib/src/client/ and pkgs/dart_mcp_server/lib/src/server/ for examples of how to implement features.initialize when implementing new features.Update Examples:
pkgs/dart_mcp/example/, and either update the existing ones or add new ones as appropriate.Write and Update Tests:
Verify:
pkgs/dart_mcp and pkgs/dart_mcp_server to ensure no regressions.Update Version and CHANGELOG.md:
pkgs/dart_mcp/pubspec.yaml and update the version according to whether this was a breaking changepkgs/dart_mcp/CHANGELOG.md and add a version entry for the new version if one doesn't already exist, mentioning the update to the new MCP spec version and any relevant changes. For breaking changes preface them with Breaking:.Update This Skill: - Update this skill with any additional steps you performed or insights you gained during the update process.