python-runner
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@python-runner run Python code to calculate the first 10 prime numbers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Python MCP Server
An MCP (Model Context Protocol) server that exposes a run_script tool for executing Python code via subprocess.
Installation
uv syncRelated MCP server: Python Executor MCP Server
Usage
Run the server
uv run python server.pyClaude Desktop / Claude Code
claude mcp add --transport stdio --scope user python-runner -- uvx --from git+https://github.com/Drahoxx/python-mcp python-mcpOr for a local installation:
claude mcp add --transport stdio --scope user python-runner -- uv run --directory /path/to/python-mcp python-mcpOpenCode
Add to ~/.config/opencode/opencode.json:
{
"mcpServers": {
"python-runner": {
"command": "uvx",
"args": ["--from", "git+https://github.com/Drahoxx/python-mcp", "python-mcp"]
}
}
}Or for a local installation:
{
"mcpServers": {
"python-runner": {
"command": "uv",
"args": ["run", "--directory", "/path/to/python-mcp", "python-mcp"]
}
}
}Generic MCP Client
Add to your MCP client configuration:
{
"mcpServers": {
"python-runner": {
"command": "uv",
"args": ["run", "--directory", "/path/to/python-mcp", "python", "server.py"]
}
}
}Tool: run_script
Execute Python code and return the result.
Parameters
Name | Type | Default | Description |
|
| required | Python code to execute |
|
|
| Execution timeout in seconds |
Response
Returns a JSON string with:
Field | Type | Description |
|
| Whether execution succeeded (exit code 0) |
|
| Captured standard output |
|
| Captured standard error |
|
| Error message/traceback if failed |
|
| Process exit code (-1 for timeout) |
Examples
Successful execution:
run_script('print("hello")')
# {"success": true, "stdout": "hello\n", "stderr": "", "error": null, "return_code": 0}Syntax error:
run_script('print(')
# {"success": false, "stdout": "", "stderr": "...", "error": "SyntaxError...", "return_code": 1}Runtime error:
run_script('1/0')
# {"success": false, "stdout": "", "stderr": "...", "error": "ZeroDivisionError...", "return_code": 1}Timeout:
run_script('import time; time.sleep(60)', timeout=2)
# {"success": false, "stdout": "", "stderr": "", "error": "Execution timed out after 2 seconds", "return_code": -1}Development
Run tests
uv run pytestRun tests with coverage
uv run pytest --cov=serverAvailable Tools
1 toolrun_scriptA
Execute Python code and return the result.
Args: code: Python code to execute timeout: Execution timeout in seconds (default: 30)
Returns: JSON string with success, stdout, stderr, error, and return_code
Inputs: code (required), timeout. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 1 tool
Only one tool exists, so there is no possibility of confusion between tools. The tool's purpose is clearly defined and unambiguous.
The single tool uses a consistent verb_noun naming convention (run_script), which is clear and predictable.
The server has exactly one tool, which is slightly below the typical 3-15 range, but it directly matches the server's stated purpose of running Python code. It could potentially benefit from additional tools like environment management, but the core functionality is well-covered.
The tool covers the full lifecycle of executing a Python script, including timeout and capturing stdout/stderr/errors. For the narrow domain of running Python code, it is complete.
Maintenance
Related MCP Connectors
Run Python code from natural language prompts, with optional PyPI package install.
Run sandboxed Python for calculations and PDFs; no other languages, installs or network.
Hosted one-shot code execution: send a snippet plus optional files, get stdout, stderr, exit...
Run Python code in a secure sandbox without local setup. Declare inline dependencies and execute s…
Related MCP Servers
AlicenseNot gradedqualityFmaintenanceEnables secure execution of Python code in a sandboxed WebAssembly environment using Pyodide and Deno. Automatically handles package management and captures complete execution results including stdout, stderr, and return values.1,102 PyPI193MIT- AlicenseAqualityDmaintenanceExecutes Python code snippets safely without shell interpretation, supports parallel batch execution and helper utilities for task decomposition.2MIT
- AlicenseNot gradedqualityBmaintenanceEnables LLMs to execute Python code securely in a sandboxed environment. Supports configurable restrictions like no network access and returns results including files.MIT
- AlicenseAqualityDmaintenanceSandboxed Python execution with automatic dependency management. Executes Python scripts in isolated environments (bubblewrap or Docker) with PEP 723 inline dependencies, preventing host pollution.334 PyPI1MIT