Python Code Interpreter

Python Code Interpreter

shibing624

Executes Python code in a secure, isolated environment with persistent context and the ability to install packages and save files.

Provides a secure Python code interpreter for executing code, installing packages, and running files in isolated environments with persistent execution contexts and variable extraction capabilities.

8486 views4Local (stdio)

What it does

  • Execute Python code snippets
  • Install Python packages via pip
  • Save code to files and run them
  • Extract specific variable values from executed code
  • Run existing Python files

Best for

Data analysis and prototypingTeaching and learning Python conceptsTesting code snippets before deploymentQuick calculations and script automation
No API key neededPersistent execution context

About Python Code Interpreter

Python Code Interpreter is a community-built MCP server published by shibing624 that provides AI assistants with tools and capabilities via the Model Context Protocol. Run Python code online securely with our Python program interpreter. Execute code, install packages, and manage files in It is categorized under developer tools. This server exposes 4 tools that AI clients can invoke during conversations and coding sessions.

How to install

You can install Python Code Interpreter in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

Python Code Interpreter is released under the Apache-2.0 license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

Tools (4)

run_python_code

Run Python code in the current environment. Parameters: code: The Python code to execute variable_to_return: Optional variable name to return its value Returns: str: The value of variable_to_return if provided, otherwise success message or error

save_to_file_and_run

Save Python code to a file and run it. Parameters: file_name: Name of the file to save (e.g., "script.py") code: Python code to save and execute variable_to_return: Optional variable name to return its value overwrite: Whether to overwrite existing file Returns: str: The value of variable_to_return if provided, otherwise success message or error

pip_install_package

Install a Python package using pip. Parameters: package_name: Name of the package to install Returns: str: Success message or error information

run_python_file

Run an existing Python file. Parameters: file_name: Name of the Python file to run variable_to_return: Optional variable name to return its value Returns: str: The value of variable_to_return if provided, otherwise success message or error

mcp-run-python-code

Python interpreter, MCP server, no API key, free. Get results from running Python code.

Overview

This MCP server provides tools for running Python code, installing packages, and executing Python files. It can be easily integrated with MCP clients, including Claude and other LLM applications supporting the MCP protocol.

Features

  • Execute Python code in a safe environment
  • Install Python packages using pip
  • Save Python code to files and run them
  • Run existing Python files
  • Return specific variable values from executed code
  • Error handling and debugging support

Installation

From pip

You can install the MCP Run Python Code Server using uv:

uv pip install mcp-run-python-code

Or using pip:

pip install mcp-run-python-code

From source

git clone https://github.com/shibing624/mcp-run-python-code.git
cd mcp-run-python-code
pip install -e .

Usage

Python Demo

from run_python_code import RunPythonCode

tool = RunPythonCode(base_dir='/tmp/tmp_run_code/')

# 示例1:基本代码执行
result = tool.run_python_code("x = 10\ny = 20\nz = x * y\nprint(z)")
print(f"结果: {result}")  # 输出: 结果: 200

# 示例2:保存并运行文件
result = tool.save_to_file_and_run(
    file_name="calc.py",
    code="a = 5\nb = 15\nc = a + b",
    variable_to_return="c"
)
print(f"结果: {result}")  # 输出: 结果: 20

# 实例3:安装python包
result = tool.pip_install_package("requests")
print(f"结果: {result}")

README image

Running as a standalone MCP server

Run the server with the stdio transport:

uvx mcp-run-python-code

or

uv run mcp-run-python-code

or

python -m mcp-run-python-code

Then, you can use the server with any MCP client that supports stdio transport.

Integrating with Cursor

To add the weather MCP server to Cursor, add stdio MCP with command:

uvx mcp-run-python-code

Running the FastAPI server

You can also run the MCP server with FastAPI:

python run_python_code/fastapi_server.py

This will start a FastAPI server on http://localhost:8083 with the following endpoints:

  • GET /health - Check server health
  • POST /execute - Execute Python code
  • POST /save-and-execute - Save Python code to a file and execute it
  • POST /install-package - Install a Python package using pip
  • POST /run-file - Run an existing Python file
  • GET /docs - Swagger API documentation You can test the API using curl, detail in API Documentation.

Run with Docker

You can run the MCP server using Docker. First, build the Docker image:

docker build -t mcp-run-python-code .

Then, run the container:

docker run -p 8000:8000 -it mcp-run-python-code

also, you can use FastAPI server with Docker:

docker build -t fastapi-mcp-run-python-code -f Dockerfile.fastapi .

run the container:

sudo docker run -d --name mcp-python-service -p 8083:8083 --restart unless-stopped mcp-run-python-code

You can also use Docker Compose to run the MCP server along with other services. See Docker Usage for details.

Tools available

  • run_python_code - Execute Python code and return print output or error message
  • save_to_file_and_run - Save Python code to a file and execute it
  • pip_install_package - Install Python packages using pip
  • run_python_file - Run an existing Python file and optionally return a variable value

Examples

Example 1: Basic Code Execution

from run_python_code import RunPythonCode
tool = RunPythonCode(base_dir='/tmp/tmp_run_code/')
# Execute simple calculations
code = "result = 2 ** 10; print(f'Result: {result}')"
value = tool.run_python_code(code)
print(value)  # Output: 1024

Example 2: Run python File

from run_python_code import RunPythonCode
tool = RunPythonCode(base_dir='/tmp/tmp_run_code/')
# Save code to a file and run it
script_code = """
def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n-1) + fibonacci(n-2)

result = fibonacci(10)
print(f"Fibonacci(10) = {result}")
"""
result = tool.save_to_file_and_run("fib.py", script_code, "result")
print(result)  # Output: 55

Example 3: Data Processing

from run_python_code import RunPythonCode
tool = RunPythonCode(base_dir='/tmp/tmp_run_code/')
# JSON data processing
code = """
import json
data = {'name': '张三', 'age': 30}
json_str = json.dumps(data, ensure_ascii=False)
print(json_str)
"""
result = tool.run_python_code(code)
print(result)  # Output: {"name": "张三", "age": 30}

Contact

  • Issues and suggestions: GitHub issues
  • Email: [email protected]
  • WeChat: Add me (WeChat ID: xuming624) with the message: "Name-Company-NLP" to join our NLP discussion group.
README image

License

This project is licensed under The Apache License 2.0 and can be used freely for commercial purposes. Please include a link to the mcp-run-python-code project and the license in your product description.

Contribute

We welcome contributions to improve this project! Before submitting a pull request, please:

  1. Add appropriate unit tests in the tests directory
  2. Run python -m pytest to ensure all tests pass
  3. Submit your PR with clear descriptions of the changes

Acknowledgements

Alternatives

Related Skills

Browse all skills
agent-framework-azure-ai-py

Build Azure AI Foundry agents using the Microsoft Agent Framework Python SDK (agent-framework-azure-ai). Use when creating persistent agents with AzureAIAgentsProvider, using hosted tools (code interpreter, file search, web search), integrating MCP servers, managing conversation threads, or implementing streaming responses. Covers function tools, structured outputs, and multi-tool agents.

1
azure-ai-agents-py

Build AI agents using the Azure AI Agents Python SDK (azure-ai-agents). Use when creating agents hosted on Azure AI Foundry with tools (File Search, Code Interpreter, Bing Grounding, Azure AI Search, Function Calling, OpenAPI, MCP), managing threads and messages, implementing streaming responses, or working with vector stores. This is the low-level SDK - for higher-level abstractions, use the agent-framework skill instead.

0
finance-skills

Production-ready financial analyst skill with ratio analysis, DCF valuation, budget variance analysis, and rolling forecast construction. 4 Python tools (all stdlib-only). Works with Claude Code, Codex CLI, and OpenClaw.

55
python-expert

Senior Python developer expertise for writing clean, efficient, and well-documented code. Use when: writing Python code, optimizing Python scripts, reviewing Python code for best practices, debugging Python issues, implementing type hints, or when user mentions Python, PEP 8, or needs help with Python data structures and algorithms.

40
python-packaging

Create distributable Python packages with proper project structure, setup.py/pyproject.toml, and publishing to PyPI. Use when packaging Python libraries, creating CLI tools, or distributing Python code.

6
engineering-skills

23 production-ready engineering skills covering architecture, frontend, backend, fullstack, QA, DevOps, security, AI/ML, data engineering, computer vision, and specialized tools like Playwright Pro, Stripe integration, AWS, and MS365. 30+ Python automation tools (all stdlib-only). Works with Claude Code, Codex CLI, and OpenClaw.

4