name: release-mcp description: Release a new version of the tapo-mcp crate (MCP server), versioned independently from the tapo libraries
Release tapo-mcp
Release a new version of the tapo-mcp crate.
Steps
Determine the new version. Read the current version from
tapo-mcp/Cargo.toml. Ask the user what the new version should be if not provided.Bump the version. Update the
versionfield intapo-mcp/Cargo.tomland bothversionandpackages[0].identifierintapo-mcp/server.json.Update changelog. In
CHANGELOG.md:- Replace the heading
## [MCP Unreleased][Unreleased]with## [MCP vX.X.X][tapo-mcp-vX.X.X] - YYYY-MM-DD(use the current date). - Insert a new empty
## [MCP Unreleased][Unreleased]section immediately above the newly versioned section. - Add a link reference
[tapo-mcp-vX.X.X]: https://github.com/mihai-dinculescu/tapo/tree/tapo-mcp-vX.X.Xto the link definitions at the bottom of the file (right after the[Unreleased]link).
- Replace the heading
Commit. Run
/commitwith messagechore(tapo-mcp): release vX.X.X.Tag. Create an annotated git tag:
git tag -a tapo-mcp-vX.X.X -m "tapo-mcp-vX.X.X"Push. Ask the user for confirmation, then:
git push && git push origin tapo-mcp-vX.X.XCreate GitHub release. Ask the user for confirmation. Use the content under the
## [MCP vX.X.X][tapo-mcp-vX.X.X]heading fromCHANGELOG.mdas the release body, followed by a full changelog comparison link. The previous version (vP.P.P) is the tapo-mcp tag before this release:gh release create tapo-mcp-vX.X.X --title "Tapo MCP vX.X.X" --notes "$(cat <<'EOF' <changelog content here> **Full Changelog**: https://github.com/mihai-dinculescu/tapo/compare/tapo-mcp-vP.P.P...tapo-mcp-vX.X.X EOF )"