python mcp
Provides an interactive Python REPL environment that maintains persistent session state, allowing users to execute Python code and access session history.
Provides an interactive Python REPL environment that maintains persistent session state, allowing users to execute Python code and access session history.
An MCP Server that provides an interactive Python REPL (Read-Eval-Print Loop) environment.
The server provides access to REPL session history:
- Custom repl://
URI scheme for accessing session history
- Each session's history can be viewed as a text/plain resource
- History shows input code and corresponding output for each execution
The server implements one tool:
- python_repl
: Executes Python code in a persistent session
- Takes code
(Python code to execute) and session_id
as required arguments
- Maintains separate state for each session
- Supports both expressions and statements
- Captures and returns stdout/stderr output
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
"mcpServers": {
"python_local": {
"command": "uv",
"args": [
"--directory",
"/path/to/python_local",
"run",
"python_local"
]
}
}
"mcpServers": {
"python_local": {
"command": "uvx",
"args": [
"python_local"
]
}
}
To prepare the package for distribution:
Sync dependencies and update lockfile:
uv sync
Build package distributions:
uv build
This will create source and wheel distributions in the dist/
directory.
uv publish
Note: You'll need to set PyPI credentials via environment variables or command flags:
- Token: --token
or UV_PUBLISH_TOKEN
- Or username/password: --username
/UV_PUBLISH_USERNAME
and --password
/UV_PUBLISH_PASSWORD
Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.
You can launch the MCP Inspector via npm
with this command:
npx @modelcontextprotocol/inspector uv --directory /path/to/python_local run python-local
Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.