Semver Tools

live Utility

Parse, compare, and range-test semantic versions offline (keyless): prerelease precedence + ^, ~, comparators, x-ranges, AND/OR ranges.

3 tools
0ms auth
free tier 50 calls/day

Tools

parse_semver

Parse a semantic-version string into major/minor/patch/prerelease/build (keyless, offline). Accepts an optional leading "v".

No parameters required.

Try it
compare_semver

Compare two semver strings. Returns -1 (a<b), 0 (equal), or 1 (a>b), honoring prerelease precedence.

No parameters required.

Try it
satisfies_range

Test whether a version satisfies a range: exact, ^ (caret), ~ (tilde), comparators (>=,>,<=,<,=), x-ranges (1.2.x), AND (space-separated), OR (||). E.g. version "1.4.2", range "^1.2.0".

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/semver/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/semver/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"parse_semver","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("parse_semver", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("parse, compare, and range-test semantic versions offline (keyless): prerelease precedence + ^, ~, comparators, x-ranges, and/or ranges");