jupyter-interactive-mcp
by tsundokum
README.md
# jupyter-interactive-mcp
An MCP server that gives any MCP-compatible LLM client (Claude Desktop, Claude Code, etc.) full control over a live JupyterLab instance.
## Quick start
```bash
# Zero-install run via uvx (recommended)
uvx jupyter-interactive-mcp
# Or install permanently
pip install jupyter-interactive-mcp
```
## Claude Desktop config
```json
{
"mcpServers": {
"jupyter": {
"command": "uvx",
"args": ["jupyter-interactive-mcp"],
"env": {
"JUPYTER_URL": "http://localhost:8888",
"JUPYTER_TOKEN": "<token>"
}
}
}
}
```
## Environment variables
| Variable | Default | Description |
|---|---|---|
| `JUPYTER_URL` | `http://localhost:8888` | Base URL of the Jupyter Server |
| `JUPYTER_TOKEN` | `` | Authentication token (from `jupyter server --no-browser`) |
## Available tools
- `list_notebooks` — list all `.ipynb` files
- `get_notebook_info` — cell count, kernel name/status
- `read_notebook` — all cells with source and outputs
- `read_cell` — single cell source and outputs
- `edit_cell` — update cell source (clears outputs, saves)
- `add_cell` — insert a new cell at an index
- `delete_cell` — remove a cell
- `run_cell` — execute a cell in the kernel, returns text/images
- `restart_kernel` — restart the notebook kernel
- `interrupt_kernel` — interrupt a running kernel
- `get_kernel_status` — idle/busy/starting status
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues