# Calc MCP
[](https://www.npmjs.com/package/@coo-quack/calc-mcp)
[](https://github.com/coo-quack/calc-mcp/actions/workflows/ci.yml)
[](https://opensource.org/licenses/MIT)
π **[Documentation](https://coo-quack.github.io/calc-mcp/)** β 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.
### Quick Start
```bash
# Claude Code
claude mcp add -s user calc-mcp -- npx -y @coo-quack/calc-mcp@2.1.1
# Or just run it
npx -y @coo-quack/calc-mcp@2.1.1
```
> Works with Claude Desktop, VS Code Copilot, Cursor, Windsurf, and any MCP client β [setup guides below](#install).
---
## Why?
| AI alone | With calc-mcp |
| ---------------------------------------------- | ----------------------------------------------- |
| "10 + 34 Γ 341 Γ· 23 = 507.8" β | `514.087` β
(math) |
| "Here's a UUID: 550e8400-..." π€· fake | Cryptographically random UUID v4/v7 β
(random) |
| "100 days from now is..." π€ guess | `2026-05-22` β
(date) |
| "SHA-256 of password123 is..." π hallucinated | `{"hash": "ef92b778bafe..."}` β
(hash) |
- **Deterministic** β Same input, same correct output, every time
- **Secure** β Sandboxed math, ReDoS protection, weak hash warnings
- **Private** β All computation runs locally, no data sent to external services
- **No server config** β Install once via npx; MCP client setup required
- **No API key** β No account or API key required for calc-mcp itself; requires Node.js
## Examples
Ask in natural language β your AI assistant selects the appropriate tool.
### Math & Numbers
| You ask | You get | Tool |
| ---------------------------------------- | ---------- | ---- |
| What's 10 + 34 Γ 341 Γ· 23? | `514.087` | math |
| Convert 255 to binary | `11111111` | base |
| Is 4539578763621486 a valid card number? | `true` | luhn |
### Text & Encoding
| You ask | You get | Tool |
| ------------------------------------------ | -------------------- | ------ |
| How many characters in "Hello, World! π"? | `15 chars, 18 bytes` | count |
| Base64 encode "Hello World" | `SGVsbG8gV29ybGQ=` | base64 |
| Base64 decode "eyJhbGciOiJIUzI1NiJ9" | `{"alg":"HS256"}` | base64 |
| URL-encode "hello world" | `hello%20world` | encode |
| URL-decode "hello%20world" | `hello world` | encode |
| HTML-decode `<script>` | `