random
Generate random values: UUID, ULID, secure password (with fine-grained options), random number, or shuffle a list
maxmintyperequireditemslengthcharsetnumberssymbolsreadableuppercaseuuidVersionexcludeChars
io.github.coo-quackPublished by GitHub account coo-quackv2.1.5Updated Oct 25, 2026
21 MCP tools for math, randomness, dates, encoding, hashing, and more — deterministic and accurate.
The publisher's own server: calc.engineer
A local stdio MCP server with 21 deterministic utility tools for math, randomness, dates, encoding, hashing, parsing and unit conversion.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
[npm version]
[CI]
[License: MIT]
[Calc MCP demo]
📖 Documentation — Full tool reference, examples, and install guides.
21 tools for things AI is not good at — deterministic math, cryptographic randomness, accurate date arithmetic, encoding, hashing, and more.
LLMs hallucinate calculations, can't generate true random numbers, and struggle with timezones. This MCP server fixes that.
Works with Claude Desktop, VS Code Copilot, Cursor, Windsurf, and any MCP client — setup guides below.
Ask in natural language — your AI assistant selects the appropriate tool.
Also available as a plugin from the coo-quack marketplace:
See the installation guide for details.
Add to your config file:
Add to .vscode/mcp.json in your workspace:
Calc MCP is available as a Docker image from GitHub Container Registry:
Or use in MCP client config:
Available tags:
ghcr.io/coo-quack/calc-mcp:latest — Latest releaseghcr.io/coo-quack/calc-mcp:X.Y.Z — Specific version (replace X.Y.Z with the desired version)Calc MCP works with any MCP-compatible client. Run the server via stdio:
Point your client's MCP config to the command above. The server communicates over stdio using the standard Model Context Protocol.
calc-mcp processes all data locally and does not:
For detailed security information, see SECURITY.md.
calc-mcp itself is local-only. However, when used via an LLM, your inputs are sent to the LLM provider (Anthropic, OpenAI, etc.).
Example:
Note: Error messages are automatically sanitized to prevent accidental data leakage.
For security issues, please see our Security Policy.
MIT
Source: README.md at commit 5b71335
Generate random values: UUID, ULID, secure password (with fine-grained options), random number, or shuffle a list
maxmintyperequireditemslengthcharsetnumberssymbolsreadableuppercaseuuidVersionexcludeCharsCompute 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).
keyinputrequiredactionalgorithmrequiredEncode or decode Base64 strings
inputrequiredactionrequiredEncode or decode strings using URL, HTML, or Unicode encoding
typerequiredinputrequiredactionrequiredGet current datetime, convert timezones, format dates, and convert UNIX timestamps
actionrequiredformatdatetimetimezonetimestamptoTimezonefromTimezoneCount characters (grapheme clusters), words, lines, and bytes in text
textrequiredencodingEvaluate math expressions or compute statistics on numbers
actionvaluesexpressionDate calculations: diff between dates, add to date, weekday, and Japanese wareki conversion
daterequiredunitdate2actionrequiredamountTest, match, matchAll, or replace using regular expressions
textrequiredflagsactionrequiredpatternrequiredreplacementConvert numbers between bases (2-36), supports large numbers via BigInt
torequiredfromrequiredvaluerequiredCompare two texts: line-by-line diff (Myers algorithm, falls back to full replacement if edit distance exceeds 1000) or Levenshtein distance
text1requiredtext2requiredactionValidate and parse JSON, CSV, XML, or YAML strings
inputrequiredformatrequiredParse cron expression and return next N execution times
counttimezoneexpressionrequiredValidate or generate check digits using the Luhn algorithm
actionnumberrequiredIP address info, CIDR contains check, and range calculation
ipcidractionrequiredtargetConvert colors between HEX, RGB, and HSL formats
tocolorrequiredConvert between units: length, weight, temperature, area, volume, speed, data, time
torequiredfromrequiredvaluerequiredcategoryGet Unicode information about characters (code point, block, category)
charrequiredDecode 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).
tokenrequiredParse a URL into its components (protocol, host, path, params, etc.)
urlrequiredSemantic versioning: compare, validate, and check range satisfaction
rangeactionrequiredversionrequiredversion290% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
engineer.calcOfficial publisher
Keyless remote MCP server offering 88 engineering calculators for RF links, LoRa/Meshtastic, PCB, thermal, power and homelab planning.
com.deskcalc
A local stdio MCP server that lets an assistant hand invoice, receipt and statement figures to a human for checking and confirmation in DeskCalc.

Published by GitHub account mrfentmen
A local stdio MCP server for finance math: loan payments, amortisation schedules, compound interest and net present value, computed offline.

Published by GitHub account AnonymousOnyx22
A local, offline calculator server that lets an assistant compute molar masses, balance equations, do stoichiometry and convert units reliably.

Published by GitHub account lucianumm
Local MCP server that lets a desktop AI assistant build, audit, update and check Brazilian labor-court calculations inside PJe-Calc Cidadão on Windows.
# Claude Codeclaude mcp add -s user calc-mcp -- npx -y @coo-quack/[email protected]
# Or just run itnpx -y @coo-quack/[email protected]claude mcp add -s user calc-mcp -- npx -y @coo-quack/[email protected]/plugin marketplace add coo-quack/claude-code-marketplace/plugin install calc-mcp@coo-quack{ "mcpServers": { "calc-mcp": { "command": "npx", "args": ["-y", "@coo-quack/[email protected]"] } }}{ "servers": { "calc-mcp": { "command": "npx", "args": ["-y", "@coo-quack/[email protected]"] } }}docker run --rm -i ghcr.io/coo-quack/calc-mcp:latest{ "mcpServers": { "calc-mcp": { "command": "docker", "args": ["run", "--rm", "-i", "ghcr.io/coo-quack/calc-mcp:latest"] } }}npx -y @coo-quack/[email protected]bun installbun run dev # Start dev serverbun test # Run testsbun run lint # Biomebun run format # Biome# ❌ Unsafe: Any secret passed to MCP tool is sent to your LLM provider# Tool: hash# Input: { "input": "sk-1234567890abcdef", "algorithm": "sha256" }
# ✅ Safe: Use test data only (for learning/development)# Tool: hash# Input: { "input": "test-value-123", "algorithm": "sha256" }
# ✅ For production secrets: Use local-only LLMs or process outside MCP