SemverKit
by semverkit.mike-tusa.workers.dev · remote · no sign-in to list tools · v0.1.0 · published by dev.workers.mike-tusa.semverkit
Semver parse, compare, npm range checks, max-satisfying and version bumps (node-semver compatible).
5 tools: 2 change things and 3 only read.
Scanned Oct 22, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things2Claude Code: ask: see these tools
- Only reads3Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http semverkit https://semverkit.mike-tusa.workers.dev/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
5 tools
Changes things 2Claude Code: ask
bump_versionCompute the next version for a release type (major, minor, patch, premajor, preminor, prepatch, prerelease, release), with an optional prerelease id such as alpha, beta or rc, exac…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Compute the next version for a release type (major, minor, patch, premajor, preminor, prepatch, prerelease, release), with an optional prerelease id such as alpha, beta or rc, exactly like npm version / semver.inc. Read-only: nothing is published. Same engine as GET /api/bump.
Annotations the server declares
- title: Bump a version
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
check_rangeDoes a version satisfy an npm-style range (^, ~, x-ranges, hyphen ranges, comparators, || alternatives)?No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Does a version satisfy an npm-style range (^, ~, x-ranges, hyphen ranges, comparators, || alternatives)? Returns the answer and the range desugared into plain comparators (e.g. ^0.2.3 → >=0.2.3 <0.3.0-0), with a note when npm's prerelease rule is why it fails. Read-only. Same engine as GET /api/satisfies.
Annotations the server declares
- title: Check a range
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 3Claude Code: allow
compare_versionsCompare a and b by SemVer precedence (prereleases sort before the release, build metadata ignored).No findings
Why it is in this group
- The name "compare_versions" says "compare": a word for reading.
Description, as the server wrote it Compare a and b by SemVer precedence (prereleases sort before the release, build metadata ignored). Returns -1, 0 or 1 and the change type from the lower to the higher version (major, minor, patch, premajor, preminor, prepatch, prerelease) exactly like semver.diff. Read-only. Same engine as GET /api/compare.
Annotations the server declares
- title: Compare versions
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
parse_versionValidate a version against SemVer 2.0.0 and split it into major, minor, patch, prerelease identifiers and build metadata, with isPrerelease/isStable flags.No findings
Why it is in this group
- The description's first verb is "validate": a word for reading.
Description, as the server wrote it Validate a version against SemVer 2.0.0 and split it into major, minor, patch, prerelease identifiers and build metadata, with isPrerelease/isStable flags. Read-only. Same engine as GET /api/parse.
Annotations the server declares
- title: Parse a semantic version
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
resolve_versionsSort 1 to 200 versions by SemVer precedence (duplicates removed, invalid ones listed separately) and, if a range is given, return the matching versions plus maxSatisfying / minSati…No findings
Why it is in this group
- The name "resolve_versions" says "resolve": a word for reading.
Description, as the server wrote it Sort 1 to 200 versions by SemVer precedence (duplicates removed, invalid ones listed separately) and, if a range is given, return the matching versions plus maxSatisfying / minSatisfying (what npm would install from that list) and the latest stable version. Read-only. Same engine as GET /api/resolve.
Annotations the server declares
- title: Resolve versions
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 0.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http semverkit https://semverkit.mike-tusa.workers.dev/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__semverkit__parse_version",
"mcp__semverkit__compare_versions",
"mcp__semverkit__resolve_versions"
],
"ask": [
"mcp__semverkit__check_range",
"mcp__semverkit__bump_version"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as semverkit. Review it before you use it.