Data as of
Jupyter MCP Server for VS Code: Setup & Config
Jupyter MCP Server lets VS Code inspect, edit, and execute notebooks with live output feedback.
What you can do with Jupyter in VS Code
A live notebook interface combining precise cell edits, execution feedback, and multimodal results.
- Inspect a notebook and repair failed analysis cells with output feedback.
- Switch between several notebooks during a data-science workflow.
Before you start: Jupyter in VS Code
- Python
- uv 0.6.14 or later
- A running authenticated Jupyter service
- JupyterLab collaboration setup as documented
- An MCP-compatible client
The environment setup includes ipykernel, pycrdt, and jupyter-mcp-tools, with JupyterLab pinned to 4.4.1 and jupyter-collaboration to 4.0.2. It separately warns that MCP_TOKEN is required from v1.0.0; consult its linked provider setup for that token's configuration. Image output needs compatible clients and models.
Jupyter VS Code configuration
Choose VS Code configuration scope
For Jupyter MCP Server, open Workspace: .vscode/mcp.json. Merge into servers; preserve existing inputs.
Add Jupyter MCP Server to VS Code
Use the jupyter-mcp-server entry below in servers. Keep Jupyter MCP Server's documented stdio connection fields and your other VS Code entries.
Check Jupyter MCP Server in VS Code
Jupyter MCP Server: Start in VS Code’s MCP controls; inspect output and trust prompts.
Config file · Workspace: .vscode/mcp.json
{
"servers": {
"jupyter-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"jupyter-mcp-server@latest"
],
"env": {
"JUPYTER_URL": "<URL of the running Jupyter service>",
"JUPYTER_TOKEN": "<Jupyter authentication token>",
"ALLOW_IMG_OUTPUT": "<true for image-capable clients, otherwise false>",
"MCP_TOKEN": "<MCP authentication token required by the README's version 1.0.0 notice>"
}
}
}
}Jupyter tools available to VS Code
Jupyter's stored tool list documents 19 tools; compare it with VS Code's connected tool list, because the stored list is not a live check.
- list_files
Look for list_files among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- list_kernels
Look for list_kernels among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Inspect available kernels and running kernel sessions.
- connect_to_jupyter
Look for connect_to_jupyter among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Change Jupyter connections without restarting; unavailable in extension mode.
- use_notebook
Look for use_notebook among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Open, create, or switch to a notebook.
- list_notebooks
Look for list_notebooks among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
List available notebooks and their current status.
- restart_notebook
Look for restart_notebook among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Restart the kernel for a managed notebook.
- unuse_notebook
Look for unuse_notebook among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- read_notebook
Look for read_notebook among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- read_cell
Look for read_cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- insert_cell
Look for insert_cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- delete_cell
Look for delete_cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Remove a cell by index.
- move_cell
Look for move_cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Reposition a cell within its notebook.
- overwrite_cell_source
Look for overwrite_cell_source among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Replace an existing cell's source content.
- edit_cell_source
Look for edit_cell_source among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Apply targeted find-and-replace changes to cell source.
- execute_cell
Look for execute_cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Run a cell with timeout control and multimodal results.
- insert_execute_code_cell
Look for insert_execute_code_cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- execute_code
Look for execute_code among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- notebook_run-all-cells
Look for notebook_run-all-cells among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
- notebook_get-selected-cell
Look for notebook_get-selected-cell among VS Code's agent-mode tools after starting Jupyter through the MCP controls.
Troubleshooting Jupyter in VS Code
- Make uvx jupyter-mcp-server@latest (from uv, for Python tools) available in the workspace, container, or remote environment hosting Jupyter MCP Server. Start through VS Code's MCP controls; inspect output and trust prompts.
- For Jupyter MCP Server, keep ALLOW_IMG_OUTPUT, JUPYTER_TOKEN, JUPYTER_URL, MCP_TOKEN out of version control; VS Code documents input variables and secret handling.
- Jupyter MCP Server uses stdio here: VS Code must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
- Known limitation: Requires a configured Jupyter environment and authentication tokens.
- Known limitation: Image handling depends on client and model capabilities.
- Known limitation: Dynamic server connection is unavailable in Jupyter extension mode.
- General VS Code troubleshooting lives in the /clients/vscode guide.
Jupyter MCP Server — details. VS Code guide