Python Interpreter MCP
An MCP server that provides Python code execution capabilities through a REST API interface.
Python Interpreter MCP
A Model Context Protocol (MCP) server that provides Python code execution capabilities through a REST API interface.
Overview
This MCP server exposes a single tool execute_python_code that allows AI assistants and other MCP clients to execute Python code remotely. The server acts as a bridge between MCP clients and a Python interpreter REST API service.
Features
- Execute arbitrary Python code through MCP
- Returns complete execution results including stdout, stderr, exit codes, and file outputs
- Built with FastMCP for easy MCP server development
- Async HTTP client for reliable communication with the Python interpreter service
Prerequisites
- Python 3.11 or higher
- A Python interpreter REST API service running on
localhost:50081(such as BeeAI Code Interpreter)
Installation
-
Clone this repository:
git clone <repository-url> cd python-interpreter-mcp -
Install dependencies using uv:
uv sync
Usage
Running the MCP Server
Start the MCP server:
python main.py
The server will start and expose the execute_python_code tool via the MCP protocol.
Adding to Claude Desktop
Add this configuration to your Claude Desktop MCP settings:
{
"mcpServers": {
"python-interpreter": {
"command": "uv",
"args": [
"--directory",
"/path/to/python-interpreter-mcp",
"run",
"main.py"
]
}
}
}
Replace /path/to/python-interpreter-mcp with the actual path to your project directory.
Tool: execute_python_code
Executes Python code using a remote interpreter service.
Parameters:
source_code(string): The Python code to execute
Returns: A dictionary containing:
stdout: Standard output from the Python executionstderr: Standard error output (if any)exit_code: Exit code of the Python processfiles: Any files generated during execution
Example usage:
# Through an MCP client
result = await execute_python_code("print('Hello, World!')")
# Returns: {"stdout": "Hello, World!\n", "stderr": "", "exit_code": 0, "files": {}}
Configuration
The server is configured to connect to a Python interpreter REST API at:
- URL:
http://localhost:50081/v1/execute - Method: POST
- Content-Type: application/json
To use a different interpreter service, modify the URL in main.py:23.
Error Handling
The server handles various error conditions:
- Request errors: Network connectivity issues
- HTTP errors: API service errors (4xx/5xx responses)
- Timeout errors: Long-running code execution
All errors are returned in the standard response format with appropriate error messages in the stderr field.
Dependencies
- fastmcp: MCP server framework
- httpx: Async HTTP client for API communication
License
MIT License
Related Servers
Tencent Cloud Code Analysis
An official MCP server for Tencent Cloud Code Analysis (TCA) to quickly start code analysis and obtain reports.
UnrealMCP Plugin
An unofficial Unreal Engine plugin that acts as an MCP server, allowing AI tools to remotely control the engine.
Volatility3 MCP Server
Perform advanced memory forensics analysis using Volatility3 via a conversational interface. Requires user-specified memory dump files.
Bevy BRP MCP
Control, inspect, and mutate Bevy applications with AI coding assistants via the Bevy Remote Protocol (BRP).
POC MCP HTTP Server
A proof-of-concept server implementing the Model Context Protocol with a streamable HTTP transport.
xcsimctl
Manage Xcode simulators.
Graph Tools
An interactive graph analysis toolkit with web visualizations and AI-powered analysis capabilities.
Zeropath
Interact with the Zeropath vulnerability management API.
return0
Debug your remote Node.js and Next.js applications directly from your AI IDE like Cursor.
MCP Expr Lang
MCP Expr-Lang provides a seamless integration between Claude AI and the powerful expr-lang expression evaluation engine.