Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Code & logic calculator for AI agents: 31 languages, symbolic math, SMT/logic solving, Big-O.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"codecalc": {
"command": "uvx",
"args": [
"codecalc"
]
}
}
}Run this in your terminal
claude mcp add codecalc -- uvx codecalcPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"codecalc": {
"command": "uvx",
"args": [
"codecalc"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"codecalc": {
"type": "stdio",
"command": "uvx",
"args": [
"codecalc"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account The-40-Thieves, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.13.0) reached the registry 2 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, sync. labs
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Lipsync videos, dub them into other languages, make talking videos and open sync. Studio.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
**codecalc is an offline, self-hosted MCP server that gives an AI agent a calculator, a code runner, and a logic checker — so it gets a *correct* answer instead of a guessed one. It runs code in 31 languages, does exact symbolic math, solves SMT/logic problems, and measures complexity, all exposed as 51 MCP tools**.
Fastest path: uvx 'codecalc[full]' setup --write registers codecalc with your MCP client automatically. New to MCP, or want more detail first? See QUICKSTART.md, or the Install section below.
Three things nobody else offers together cleanly:
install_package, the runtime-update tools, executed code unless no_net, and a one-time in-process grammar download on first analyze_complexity — full breakdown in the network-boundary table below).verify_translation proves a port to another language behaves identically, verify_optimization proves an optimization preserved behavior, and z3_check proves or refutes logic with an SMT solver.Use it when you want a free, local, private, hardened code-runner and verifier that an MCP agent can call directly — no vendor account, no cloud spend, nothing leaving the machine except where a tool's job explicitly requires it.
Reach for something else when you want managed cloud scale instead of self-hosting (a hosted sandbox like E2B or Modal), or when you're not self-hosting at all and the model vendor's built-in code interpreter already covers what you need.
codecalc is not a general cloud sandbox and not a vendor code interpreter. It overlaps with several things and beats them in only one narrow place — forcing a model to *measure* a claim instead of asserting it. Where that isn't what you need, one of these is the better tool, and this table says so plainly.
| You want… | Better fit | Why |
|---|---|---|
| To just run some Python/JS quickly, zero setup | Your model vendor's built-in interpreter | Already there, already sandboxed, nothing to install. Anthropic's code-execution tool has internet access "completely disabled" and cannot install packages at runtime; OpenAI's hosted containers have no outbound network access by default, with an org-level network_policy allowlist as an opt-in. Both return output artifacts by reference (Anthropic a file_id via the Files API, OpenAI a container_file_citation) rather than inline (Anthropic code-execution tool docs, https://platform.claude.com/docs/en/agents-and-tools/tool-use/code-execution-tool; OpenAI shell/container tool guide, https://developers.openai.com/api/docs/guides/tools-shell; both retrieved 2026-09-07) |
| Heavy or multi-tenant workloads, managed scale | A cloud sandbox (E2B, Modal, Daytona) | Per-tenant Firecracker/gVisor isolation codecalc does not claim by default |
| Pure arithmetic or symbolic math, nothing else | A small calculator or SymPy MCP | Lower token cost; none of the 31-language runtime machinery |
| A model to stop _guessing_ numbers, equivalence, and speedups — locally, privately, with graded evidence | codecalc | Exact rationals, verify_translation/verify_optimization, and unenforced/grade honesty — offline, no account |
Do not reach for codecalc if you need multi-tenant or network-exposed isolation (its threat model is explicitly single-operator, local, stdio), if zero-setup convenience matters more than measurement, or if a hosted interpreter already covers your case. It earns its keep only when the *correctness of the claim* — not just "it ran" — is the point.
codecalc setupThe fastest path to a working MCP connection, without reading the rest of this section:
uvx 'codecalc[full]' setup # prints what it would do — nothing on disk changes
uvx 'codecalc[full]' setup --write # applies it: merges your client's config, copies the skill
It detects which MCP client is installed (Claude Desktop, Claude Code, Cursor, VS Code, Zed — pass --client=NAME if none or several are found), reuses codecalc doctor's own backend/extras/grammar-cache checks, prints the exact config block in that client's own JSON shape with absolute paths already filled in, runs two real canaries (execute_code, evaluate_expression) to prove the connection would work, and ends in one verdict: ready / degraded / not-ready. --write is the only mode that changes anything — it MERGES the codecalc entry into your existing client config (every other server stays exactly as it was) and backs up the original to .codecalc-bak first. codecalc --help lists every subcommand.
[!NOTE]
Published as `codecalc` 0.13.0 on PyPI (
pip install codecalc) and the
`codecalc-exec` 0.13.0 executor on crates.io
(#91). Every release
artifact carries a keyless sigstore build-provenance attestation — verify
one with
gh attestation verify --repo The-40-Thieves/codecalc; PyPI
wheels additionally carry PEP 740 attestations.
| Where | What you get | Link |
|---|---|---|
| PyPI | pip install codecalc / uvx codecalc | pypi.org/project/codecalc |
| crates.io | the codecalc-exec Rust executor crate | crates.io/crates/codecalc-exec |
| GitHub Releases | wheels for every platform, the executor binaries, the .mcpb bundle, an SBOM, and SHA256SUMS | github.com/The-40-Thieves/codecalc/releases |
| MCP registry (official) | the io.github.The-40-Thieves/codecalc server entry server.json publishes to | registry.modelcontextprotocol.io |
| Smithery | hosted listing and one-click client config | smithery.ai/servers/@The-40-Thieves/codecalc |
| Glama | hosted listing and the score badge above | glama.ai/mcp/servers/The-40-Thieves/codecalc |
| MCPB (Claude Desktop) | the drag-and-drop bundle, attached to every GitHub Release | see GitHub Releases, above |
| Docker MCP Catalog | the mcp/codecalc image Docker builds from this repo's docker/mcp-server.Dockerfile, for Docker Desktop's MCP Toolkit (docker mcp server enable codecalc) | submitted as docker/mcp-registry#5025; listed at hub.docker.com/mcp/server/codecalc once merged |
Not yet listed: PulseMCP and mcp.so do not carry a codecalc entry yet; the Docker MCP Catalog entry is pending review. PulseMCP's own submission page (checked 2026-09-08) says it is not accepting new submissions and that publishing to the official MCP registry — already done, row above — is what it indexes from once submissions reopen, so there is nothing to submit there today. mcp.so takes a submission through its own form. See docs/distribution.md for the exact steps, kept there rather than here because submitting is an action for whoever runs it, not a fact about the current release.
The published install (simplest — no build step, and what most people want):
uvx 'codecalc[full]' # run it directly, no environment to manage
pip install 'codecalc[full]' # into your own virtualenv
From source, if you would rather build the executor yourself:
git clone https://github.com/The-40-Thieves/codecalc
cd codecalc uv sync --all-extras # or: pip install -e '.[full]' cargo build --release --manifest-path executor/Cargo.toml mkdir -p bin # bin/ is gitignored, so a fresh clone has none cp executor/target/release/codecalc-exec bin/ uv run codecalc doctor # verify: backend should read rust
Without the cargo build, everything still runs on the pure-Python fallback — doctor will say so, and the network table below says what that costs.
Why `[full]`. The base install is the MCP surface and the sandbox executor: 31 language runtimes, sessions, packages, ~32 MB. The symbolic half — sympy and z3 — is 88.6 MB measured, and a caller who only runs code should not download an SMT solver to do it. So it is an extra:
| install | size | what you get |
|---|---|---|
codecalc | ~32 MB | execute_code, sessions, packages, complexity-free tools |
codecalc[symbolic] | +83 MB | evaluate_expression, solve, limits, truth tables, z3, units |
codecalc[parsing] | +5 MB installed, +89 MB fetched on first use | analyze_complexity via tree-sitter |
codecalc[full] | ~120 MB | everything |
Nothing fails silently: a tool whose extra is missing returns {"ok": false, "error": "sympy is not installed. It ships in the 'symbolic' extra: pip install 'codecalc[symbolic]' ..."}, and codecalc doctor lists which extras are present before you make a call.
Four names for the capability sets above, plus the two that live outside pyproject.toml entirely — a Docker image and an opt-in isolation boundary. The invariant that makes "edition" a meaningful word here: in the edition that lists a tool, that tool is functional — never listed-but-missing-its-extra. A tool an edition doesn't have returns the dependency_missing contract error naming the extra that provides it (see above), not a silent failure or a tool that appears to exist and doesn't work.
| Edition | Install | What you get |
|---|---|---|
| Full | uvx 'codecalc[full]' / pip install 'codecalc[full]' | The recommended local product: the native (Rust) executor, symbolic tools (evaluate_expression, symbolic, z3_check, …), and parsing (analyze_complexity). Everything this README documents actually runs. |
| Core | uvx codecalc / pip install codecalc | Execution + non-symbolic tools only — the base install in the table above. Every symbolic/parsing tool is still *listed* by tools/list (MCP doesn't support per-install schemas), but calling one returns dependency_missing naming the extra, before any other work happens. |
| Docker | docker build -f docker/mcp-server.Dockerfile . | The MCP server itself, packaged to run as an ordinary container. Core-shaped by default: ships python3/node/ruby/php/perl/gawk/lua/c/cpp/jq/sqlite3 and the default rlimit sandbox — symbolic/parsing are absent by design (no [full] in the base image; see the Dockerfile's own comment for why, including an arm64 z3-solver wheel gap). --build-arg CODECALC_EXTRA=full adds them. This image cannot nest the Strict Host boundary below inside itself (no privileged docker-in-docker), and codecalc doctor inside it says so rather than claiming a boundary it doesn't have. |
| Strict Host | opt-in; CODECALC_STRICT_URL (client) or the gVisor+Docker host itself (server) — see docs/deployment/README.md | Not an install, a *boundary*: the gVisor runsc sandbox on Linux, or AppContainer hardening on Windows, layered above whichever install above is already running. Fails closed — no digest pinned, no fallback to unenforced
Only the beginning is shown; read the rest in the repo