Jupyter MCP Server

Datalayer's MCP server for Jupyter: the agent opens notebooks, edits cells and runs code in a live JupyterLab session

MCP serverHigh risk

datalayer/jupyter-mcp-server

Install

/plugin marketplace add datalayer/jupyter-mcp-server
/plugin install datalayer

Adds /datalayer:notebook, /datalayer:run and /datalayer:status.

This is third-party code. Review the repository files before installing.

What it does

The server connects the agent to a running Jupyter Server, JupyterHub or Datalayer's hosted notebooks. The agent browses files and kernels, opens and creates notebooks, reads, inserts, moves and edits cells, clears outputs and runs code. Changes appear in JupyterLab immediately, and when a cell fails the agent sees the output and can fix the code. Image and plot outputs are supported. Besides local Jupyter, code can run in cloud sandboxes such as Kaggle, Google Colab, Modal or E2B.

Who it is for. For data analysts and ML engineers who work in Jupyter notebooks and want to hand parts of the analysis to an agent.

Good fit when

  • You want the agent to do exploratory analysis in an open notebook
  • You need failing cells fixed and the computation rerun
  • You need agent code to run on a remote kernel or GPU

Not a fit when

  • Agent code must not run in the kernel: the server executes arbitrary code
  • The project does not use Jupyter and plain scripts are enough

Example request

Open analysis.ipynb, load sales.csv, plot monthly sales and describe the outliers

Limitations

Requires a running JupyterLab with jupyter-collaboration and uv 0.6.14 or newer. jupyter-mcp-server and code-sandboxes versions must match, or execution fails with an unknown sandbox variant error. Local mode needs no external services; Datalayer's hosted server and cloud sandboxes need accounts.

How to disable. Remove the jupyter block from the MCP config. In Claude Code uninstall the datalayer plugin via /plugin.

MCP

Transport
stdio, http
Authentication
API key
Environment variables
Environment variables
JUPYTER_URL
required
Jupyter Server URL
JUPYTER_TOKEN
required, secret
Jupyter Server access token
DOCUMENT_ID
Default notebook path relative to the JupyterLab start folder
ALLOW_IMG_OUTPUT
false disables sending image outputs

Security check

  • Runs arbitrary code in the Jupyter kernel
  • Edits and deletes notebook cells

README in short

The README opens with news: Datalayer's hosted server, a Claude Code plugin, OAuth sign-in and version compatibility requirements. It then lists tool groups, step-by-step JupyterLab setup and client configs via uvx or Docker. Code sandbox variants and usage recommendations are covered separately. BSD-3-Clause licensed.

FAQ

How do I check JupyterLab is set up correctly?

Edit a cell: the unsaved marker on the tab should change on its own within seconds. That means collaboration is working.

What if the model cannot read images?

Set ALLOW_IMG_OUTPUT=false so plots are not sent to the agent as images.

Editors’ pick

166 skills for scientific work: bioinformatics, cheminformatics, clinical data, geospatial analysis and 100+ databases

SkillMedium risk44.9K
Editors’ pick

Google's open-source MCP server for databases: ready tools for Postgres, MySQL, BigQuery, Spanner and more, plus custom tools in tools.yaml

MCP serverHigh risk16.4K
Editors’ pick

Official Hugging Face skills: Hub operations via the hf CLI, datasets, model training, Spaces, evals and deployment

SkillHigh risk11K
Editors’ pick

A token-lean MCP server for PostgreSQL, MySQL, MariaDB, SQL Server and SQLite with a read-only mode

MCP serverHigh risk3.5K