Skip to main content

MCPX_DOCKER_EXEC_NOT_FOUND

Severity: error Domain: Docker

What happened

The container started, but its entrypoint interpreter was not found inside the image. The failure is reported by the OCI runtime (runc) at exec time, e.g.:

exec: "uvx": executable file not found in $PATH

This means Docker isolation worked — the image just doesn't contain the tool the server's command needs.

Common cause: a per-server image override that lacks the interpreter

The usual culprit is a per-server isolation.image override pointing at a stock image that doesn't bundle the runtime. The classic example is a uvx server pinned to python:3.11:

{
"name": "elevenlabs",
"command": "uvx",
"args": ["elevenlabs-mcp"],
"isolation": { "image": "python:3.11" } // ❌ stock python has no uvx
}

uvx ships with Astral's uv, which is a separate tool — python:3.11 does not include it. So docker run python:3.11 uvx … fails at exec time.

When mcpproxy detects this, the diagnostic names the detected runtime, the recommended image for it, and flags the per-server override as the likely culprit.

How to fix

Each runtime has a default image that includes the right interpreter (default_images in docker_isolation). For uvx/pip/pipx/python the default is ghcr.io/astral-sh/uv:python3.13-bookworm-slim; for npx/npm/node/yarn it is node:22. Drop the override:

{ "name": "elevenlabs", "command": "uvx", "args": ["elevenlabs-mcp"] }

Or pick an image that includes the interpreter

If you must pin a specific image, choose one that bundles the tool:

{ "isolation": { "image": "ghcr.io/astral-sh/uv:python3.11-bookworm-slim" } }

Verify the image has the tool

docker run --rm <image> which uvx # or: node, npx, python3 …