🪐 ✨ Jupyter MCP Server

by MCP-Mirror

345 downloads
Not rated
GitHub

About

Jupyter MCP Server is a Model Context Protocol (MCP) server that enables interaction with Jupyter notebooks running in a local JupyterLab instance. Designed for AI agents and developers, it uses Jupyter Real Time Collaboration (RTC) to reflect notebook modifications live.

Details

Author
MCP-Mirror
Downloads
345
Categories
Search

- Connect AI agents to live Jupyter notebooks
- Add and execute code cells remotely
- Insert Markdown cells into notebooks
- Uses Docker for easy deployment
- Works with JupyterLab’s Real Time Collaboration

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name 🪐 ✨ Jupyter MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Start JupyterLab with token authentication (jupyter lab --port 8888 --IdentityProvider.token MY_TOKEN --ip 0.0.0.0) and install the required packages (jupyterlab, jupyter-collaboration, ipykernel). Then configure the MCP client (e.g., Claude Desktop) to run the Docker image datalayer/jupyter-mcp-server:latest, setting environment variables SERVER_URL, TOKEN, and NOTEBOOK_PATH to match your JupyterLab session.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "\ud83e\ude90 \u2728 jupyter mcp server": {
            "datalayer_jupyter-mcp-server": {
                "command": "docker",
                "args": [
                    "build",
                    "-t",
                    "datalayer/jupyter-mcp-server",
                    "."
                ]
            }
        }
    }
}

McpServers

{
    "datalayer_jupyter-mcp-server": {
        "command": "docker",
        "args": [
            "build",
            "-t",
            "datalayer/jupyter-mcp-server",
            "."
        ]
    }
}

🪐 ✨ Jupyter MCP Server

Github Actions Status
PyPI - Version
smithery badge

Jupyter MCP Server is a Model Context Protocol (MCP) server implementation that provides interaction with Jupyter notebooks 📓 running in a local JupyterLab 💻.

Jupyter MCP Server

Start JupyterLab

Make sure you have the following installed. The modifications made on the notebook can be seen thanks to Jupyter Real Time Collaboration (RTC).

pip install jupyterlab jupyter-collaboration ipykernel

Then, start JupyterLab with the following command:

jupyter lab --port 8888 --IdentityProvider.token MY_TOKEN --ip 0.0.0.0 

> [!NOTE]
> The
--ip is set to 0.0.0.0 to allow the MCP server running in a Docker container to access your local JupyterLab.

Usage with Claude Desktop

To use this with Claude Desktop, add the following to your claude_desktop_config.json:

> [!IMPORTANT]
> Ensure the port of the
SERVER_URLand TOKEN match those used in the jupyter lab command.
> The
NOTEBOOK_PATH should be relative to the directory where JupyterLab was started.

MacOS and Windows

{
  "mcpServers": {
    "jupyter": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "SERVER_URL",
        "-e",
        "TOKEN",
        "-e",
        "NOTEBOOK_PATH",
        "datalayer/jupyter-mcp-server:latest"
      ],
      "env": {
        "SERVER_URL": "http://host.docker.internal:8888",
        "TOKEN": "MY_TOKEN",
        "NOTEBOOK_PATH": "notebook.ipynb"
      }
    }
  }
}

Linux

{
  "mcpServers": {
    "jupyter": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "SERVER_URL",
        "-e",
        "TOKEN",
        "-e",
        "NOTEBOOK_PATH",
        "--network=host",
        "datalayer/jupyter-mcp-server:latest"
      ],
      "env": {
        "SERVER_URL": "http://localhost:8888",
        "TOKEN": "MY_TOKEN",
        "NOTEBOOK_PATH": "notebook.ipynb"
      }
    }
  }
}

Components

Tools

The server currently offers 2 tools:

1. add_execute_code_cell
- Add and execute a code cell in a Jupyter notebook.
- Input:
-
cell_content(string): Code to be executed
- Returns: Success message
2.
add_markdown_cell
- Add a markdown cell in a Jupyter notebook.
- Input:
-
cell_content`(string): Markdown content
- Returns: Success message

Building

docker build -t datalayer/jupyter-mcp-server .

Installing via Smithery

To install Jupyter MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @datalayer/jupyter-mcp-server --client claude
No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.