Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Exec Sandbox

by inhumanversion 0.5.4i★ –iRuns on your computer
Registry nameio.github.inhuman/mcp-exec

Install

Overview

Description from the maker (original English)

Single exec tool running caller Python in a network-isolated locked-down sandbox.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other
  • You need to fill in: MCP_EXEC_AUTH_TOKEN

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: MCP_EXEC_TRANSPORT, MCP_EXEC_DEFAULT_TIMEOUT_S, MCP_EXEC_MAX_TIMEOUT_S, MCP_EXEC_MAX_OUTPUT_BYTES, MCP_EXEC_MAX_STDIN_BYTES, MCP_EXEC_AUTH_TOKEN

Values marked secret are keys to your account. Never share them or paste them into a chat.

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": {
    "exec": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MCP_EXEC_TRANSPORT",
        "-e",
        "MCP_EXEC_DEFAULT_TIMEOUT_S",
        "-e",
        "MCP_EXEC_MAX_TIMEOUT_S",
        "-e",
        "MCP_EXEC_MAX_OUTPUT_BYTES",
        "-e",
        "MCP_EXEC_MAX_STDIN_BYTES",
        "-e",
        "MCP_EXEC_AUTH_TOKEN",
        "docker.io/idconstruct/mcp-exec:v0.5.4"
      ],
      "env": {
        "MCP_EXEC_TRANSPORT": "your-value",
        "MCP_EXEC_DEFAULT_TIMEOUT_S": "your-value",
        "MCP_EXEC_MAX_TIMEOUT_S": "your-value",
        "MCP_EXEC_MAX_OUTPUT_BYTES": "your-value",
        "MCP_EXEC_MAX_STDIN_BYTES": "your-value",
        "MCP_EXEC_AUTH_TOKEN": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add exec --env MCP_EXEC_TRANSPORT=your-value --env MCP_EXEC_DEFAULT_TIMEOUT_S=your-value --env MCP_EXEC_MAX_TIMEOUT_S=your-value --env MCP_EXEC_MAX_OUTPUT_BYTES=your-value --env MCP_EXEC_MAX_STDIN_BYTES=your-value --env MCP_EXEC_AUTH_TOKEN=your-value -- docker run -i --rm -e MCP_EXEC_TRANSPORT -e MCP_EXEC_DEFAULT_TIMEOUT_S -e MCP_EXEC_MAX_TIMEOUT_S -e MCP_EXEC_MAX_OUTPUT_BYTES -e MCP_EXEC_MAX_STDIN_BYTES -e MCP_EXEC_AUTH_TOKEN docker.io/idconstruct/mcp-exec:v0.5.4

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "exec": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MCP_EXEC_TRANSPORT",
        "-e",
        "MCP_EXEC_DEFAULT_TIMEOUT_S",
        "-e",
        "MCP_EXEC_MAX_TIMEOUT_S",
        "-e",
        "MCP_EXEC_MAX_OUTPUT_BYTES",
        "-e",
        "MCP_EXEC_MAX_STDIN_BYTES",
        "-e",
        "MCP_EXEC_AUTH_TOKEN",
        "docker.io/idconstruct/mcp-exec:v0.5.4"
      ],
      "env": {
        "MCP_EXEC_TRANSPORT": "your-value",
        "MCP_EXEC_DEFAULT_TIMEOUT_S": "your-value",
        "MCP_EXEC_MAX_TIMEOUT_S": "your-value",
        "MCP_EXEC_MAX_OUTPUT_BYTES": "your-value",
        "MCP_EXEC_MAX_STDIN_BYTES": "your-value",
        "MCP_EXEC_AUTH_TOKEN": "your-value"
      }
    }
  }
}

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.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "exec": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MCP_EXEC_TRANSPORT",
        "-e",
        "MCP_EXEC_DEFAULT_TIMEOUT_S",
        "-e",
        "MCP_EXEC_MAX_TIMEOUT_S",
        "-e",
        "MCP_EXEC_MAX_OUTPUT_BYTES",
        "-e",
        "MCP_EXEC_MAX_STDIN_BYTES",
        "-e",
        "MCP_EXEC_AUTH_TOKEN",
        "docker.io/idconstruct/mcp-exec:v0.5.4"
      ],
      "env": {
        "MCP_EXEC_TRANSPORT": "your-value",
        "MCP_EXEC_DEFAULT_TIMEOUT_S": "your-value",
        "MCP_EXEC_MAX_TIMEOUT_S": "your-value",
        "MCP_EXEC_MAX_OUTPUT_BYTES": "your-value",
        "MCP_EXEC_MAX_STDIN_BYTES": "your-value",
        "MCP_EXEC_AUTH_TOKEN": "your-value"
      }
    }
  }
}

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.

Values you fill in

  • MCP_EXEC_TRANSPORT env
    MCP transport. Must be 'stdio' for direct docker/stdio use.
  • MCP_EXEC_DEFAULT_TIMEOUT_S env
    Default wall-clock timeout per exec, seconds.
  • MCP_EXEC_MAX_TIMEOUT_S env
    Maximum wall-clock timeout a caller may request, seconds.
  • MCP_EXEC_MAX_OUTPUT_BYTES env
    Cap on combined stdout/stderr before truncation.
  • MCP_EXEC_MAX_STDIN_BYTES env
    Cap on stdin passed to the sandboxed code.
  • MCP_EXEC_AUTH_TOKEN secret env
    Optional X-MCP-AUTH token (http/sse transports only).

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

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 6, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account inhuman, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 32509 servers in this category
  • Published to the registry more recently than 18% of the other 32509 servers in this category
  • Basic checks equal to or better than 100% of the other 32509 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Exec Sandbox safe?

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.

What keys or codes does it need?

You need to fill in: MCP_EXEC_AUTH_TOKEN

Does it run on my computer or in the cloud?

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).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.5.4) reached the registry 4 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Docker on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, Fomu MCP

Alternatives

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

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated yesterday
Install

Fomu MCP

by gabrielmahia

Kenya government form guides: checklists, draft letters, eCitizen, Huduma, timelines. Sample data.

Runs on your computerUpdated today
Install

README from the maker

Open the README

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.

mcp-exec

English | Русский

Public OSS MCP server (Go, MIT) exposing a single powerful tool — `exec` — that runs caller-supplied Python code in a network-isolated, locked-down sandbox and returns stdout / stderr / exit_code. It is the "code-execution mode" building block: instead of flooding an agent's context with hundreds of tool schemas, the agent writes code that orchestrates the work.

Works over three transports — stdio / HTTP / SSE — with an identical tool set everywhere (official modelcontextprotocol/go-sdk).

The exec tool

Input: { code: string (required), timeout_s?: int, stdin?: string } Output: { stdout, stderr, exit_code, duration_ms, truncated, timed_out }

  • A non-zero exit_code or timed_out=true is a normal result, not a tool error. Only invalid input (empty code, oversized stdin) is a tool-call error.
  • Sandbox v1: Python 3 with stdlib + PyYAML, Jinja2, Pillow, numpy, pandas, matplotlib.

Security model (invariants)

Per execution: no network, non-root, cap-drop=ALL, no-new-privileges, read-only rootfs, no CAP_SYS_ADMIN, ephemeral tmpdir (cleaned up), wall-clock timeout (kills the whole process-group), memory/PID/CPU limits, capped output (1 MiB → truncated). Runs are serialized within an instance; scale out with replicas. Caller data (code/stdin/output) is never persisted and never logged in full — only metadata.

exec is the most powerful surface there is. When embedding it in an agent, gate it behind that

agent's tool-policy (trusted roles only).

Network note: --network none only applies to stdio. In HTTP/SSE the container needs networking to serve its port, so sandboxed code would inherit egress — deny it at the orchestrator. In k8s, a NetworkPolicy that allows ingress to the port and denies all egress:

apiVersion: networking.k8s.io/v1

kind: NetworkPolicy metadata: { name: mcp-exec-lockdown } spec: podSelector: { matchLabels: { app: mcp-exec } } policyTypes: [Ingress, Egress] ingress: [{ ports: [{ port: 8080 }] }] egress: [] # deny all egress → sandbox has no network

Run

go build -o mcp-exec ./cmd/mcp-exec

MCP_EXEC_TRANSPORT=stdio ./mcp-exec

Docker (recommended production posture):

docker run --rm -i --network none --read-only --cap-drop ALL \

--security-opt no-new-privileges --user 65532:65532 \ --tmpfs /tmp:rw,noexec,nosuid,size=64m \ --memory 256m --pids-limit 128 --cpus 1 \ idconstruct/mcp-exec

--tmpfs /tmp is required: the rootfs is read-only, and each run needs a writable ephemeral workspace (cleaned up after).

Optional auth (HTTP/SSE)

Set MCP_EXEC_AUTH_TOKEN to require every HTTP/SSE request to carry a matching X-MCP-AUTH header (constant-time compare; 401 otherwise). Empty token disables it. Not applicable to stdio.

Configuration

Env varPurposeDefault
MCP_EXEC_TRANSPORTstdio \http \ssestdio
MCP_EXEC_ADDRlisten address for http/sse:8080
MCP_EXEC_DEFAULT_TIMEOUT_Sdefault wall-clock timeout30
MCP_EXEC_MAX_TIMEOUT_Stimeout ceiling300
MCP_EXEC_MAX_OUTPUT_BYTEScombined stdout+stderr cap1048576
MCP_EXEC_MAX_STDIN_BYTESstdin size cap1048576
MCP_EXEC_PYTHONinterpreter pathpython3
MCP_EXEC_AUTH_TOKENif set, http/sse require X-MCP-AUTH header (constant-time); empty = off

Not in v1

bash / multi-language, network from the sandbox, proxying other MCP servers into the sandbox.

License

MIT.

Ask PopNx