# calc-mcp [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/coo-quack/calc-mcp  
**GitHub Stars:** 9  
**npm Downloads (last month):** 1015  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/calc-mcp

## Description
21 MCP tools for math, randomness, dates, encoding, hashing, and more — deterministic and accurate.

## Tools
Capabilities this server exposes over MCP:

- **random** — Generate random values: UUID, ULID, secure password (with fine-grained options), random number, or shuffle a list
- **hash** — Compute hash or HMAC of a string using MD5, SHA1, SHA256, SHA512, or CRC32. WARNING: MD5 and SHA1 are cryptographically broken and MUST NOT be used for security (use SHA-256 or SHA-512 instead).
- **base64** — Encode or decode Base64 strings
- **encode** — Encode or decode strings using URL, HTML, or Unicode encoding
- **datetime** — Get current datetime, convert timezones, format dates, and convert UNIX timestamps
- **count** — Count characters (grapheme clusters), words, lines, and bytes in text
- **math** — Evaluate math expressions or compute statistics on numbers
- **date** — Date calculations: diff between dates, add to date, weekday, and Japanese wareki conversion
- **regex** — Test, match, matchAll, or replace using regular expressions
- **base** — Convert numbers between bases (2-36), supports large numbers via BigInt
- **diff** — Compare two texts: line-by-line diff (Myers algorithm, falls back to full replacement if edit distance exceeds 1000) or Levenshtein distance
- **format_validate** — Validate and parse JSON, CSV, XML, or YAML strings
- **cron_parse** — Parse cron expression and return next N execution times
- **luhn** — Validate or generate check digits using the Luhn algorithm
- **ip** — IP address info, CIDR contains check, and range calculation
- **color** — Convert colors between HEX, RGB, and HSL formats
- **convert** — Convert between units: length, weight, temperature, area, volume, speed, data, time
- **char_info** — Get Unicode information about characters (code point, block, category)
- **jwt_decode** — Decode JWT token header and payload for inspection only. WARNING: this tool does NOT verify the signature; never trust the payload for authentication or authorization without separate signature verification using the issuer's verification key (shared secret or public key, depending on alg).
- **url_parse** — Parse a URL into its components (protocol, host, path, params, etc.)
- **semver** — Semantic versioning: compare, validate, and check range satisfaction

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "calc-mcp": {
    "command": "npx",
    "args": ["-y","@coo-quack/calc-mcp@2.1.2"]
  }
}
```

## Documentation

## What calc-mcp MCP server does

The calc-mcp MCP server gives an MCP-compatible AI client a collection of local utility tools instead of requiring the model to perform these operations itself. Its 21 tools cover numerical work, text processing, dates, random generation, encoding, validation, parsing, and common developer conversions.

The server is suited to tasks where an incorrect guess is undesirable: evaluating expressions, calculating date offsets, converting timezones, producing UUIDs, hashing input, checking a Luhn number, or interpreting a cron expression. Computation runs locally, and the project states that no data is sent to external services.

## How it works

Run the package with Node.js and register the command with an MCP client. The client exposes the available tools to the assistant, which can select one based on a natural-language request. A typical launch command uses `npx` and the published package:

```bash
npx -y @coo-quack/calc-mcp@2.1.2
```

The project also documents a Claude Code registration command:

```bash
claude mcp add -s user calc-mcp -- npx -y @coo-quack/calc-mcp@2.1.2
```

The operations are designed to be deterministic where the input permits it. Random-generation operations are an exception by design and provide UUIDs, ULIDs, passwords, random numbers, and shuffles.

## Setup and configuration

Node.js is required. The package can be started directly with `npx`, and the MCP client must be configured to launch it.

The documented client coverage includes Claude Code, Claude Desktop, VS Code Copilot, Cursor, and Windsurf. The package is presented as usable with MCP clients generally, provided they can launch a standard command-based server.

## Tools and capabilities

The calc-mcp MCP server includes these tool groups:

- `math` evaluates expressions and performs statistics; `base` converts numbers between bases 2 through 36.
- `datetime` handles current time, timezone conversion, and Unix timestamps; `date` calculates differences, additions, subtractions, weekdays, and wareki dates.
- `random` generates UUID v4/v7 values, ULIDs, passwords, random numbers, and shuffles; `luhn` validates numbers and generates check digits.
- `hash` supports MD5, SHA-1, SHA-256, SHA-512, CRC32, and HMAC; `base64` encodes and decodes Base64 data.
- `encode` handles URL encoding, HTML entities, and Unicode escapes; `count` measures grapheme-aware characters, words, lines, and bytes.
- `regex` tests, matches, replaces, and finds all matches; `diff` produces line differences and Levenshtein distances.
- `format_validate` checks JSON, CSV, XML, and YAML; `cron_parse` describes cron schedules and calculates upcoming runs.
- `ip` provides IPv4 and IPv6 details, CIDR checks, and ranges; `color` converts HEX, RGB, and HSL values, including alpha channels.
- `convert` covers eight unit categories and 146 unit names; `char_info` reports Unicode code points, blocks, and categories.
- `jwt_decode` reads JWT headers and payloads without verification; `url_parse` separates URL components; `semver` validates, compares, parses, and evaluates version ranges.

## Limitations and notes

JWT decoding does not verify signatures, so it should not be treated as authentication or token validation. The server performs local utility operations rather than connecting to a remote database, API, or hosted computation service. Random outputs are intentionally non-repeatable, while deterministic tools return results based on their inputs.

_Full upstream README: https://allmcps.com/mcp/calc-mcp/readme_

