Skip to content

Jupyter MCP Server

Lets an assistant open, read and edit Jupyter notebooks in real time: insert, edit and delete cells, execute code on the kernel, and see outputs including plots and images.

Capabilities
Manage notebooks Edit cells Execute code Read outputs List kernels
Maintained by
Community (Datalayer)
Hosting
Runs locally on your machine
Authentication
API key or credentials (environment variables)
Last checked

Needs a running JupyterLab (with jupyter-collaboration installed) or JupyterHub server.

How to connect the Jupyter MCP server

Pick your AI client and paste the snippet. Swap the YOUR_… placeholders for your own values. New to this? Our guide to how MCP clients and servers fit together explains what each piece does.

Claude Code

Terminal
claude mcp add --env JUPYTER_URL=http://localhost:8888 --env JUPYTER_TOKEN=YOUR_JUPYTER_TOKEN --transport stdio jupyter \
  -- uvx jupyter-mcp-server@latest
Full Claude Code setup guide →

Claude Desktop

claude_desktop_config.json (Settings → Developer → Edit Config)
{
  "mcpServers": {
    "jupyter": {
      "command": "uvx",
      "args": [
        "jupyter-mcp-server@latest"
      ],
      "env": {
        "JUPYTER_URL": "http://localhost:8888",
        "JUPYTER_TOKEN": "YOUR_JUPYTER_TOKEN"
      }
    }
  }
}

Fully quit and reopen Claude Desktop after saving.

Full Claude Desktop setup guide →

Cursor

~/.cursor/mcp.json (or .cursor/mcp.json in a project)
{
  "mcpServers": {
    "jupyter": {
      "command": "uvx",
      "args": [
        "jupyter-mcp-server@latest"
      ],
      "env": {
        "JUPYTER_URL": "http://localhost:8888",
        "JUPYTER_TOKEN": "YOUR_JUPYTER_TOKEN"
      }
    }
  }
}
Full Cursor setup guide →

VS Code

.vscode/mcp.json
{
  "servers": {
    "jupyter": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "jupyter-mcp-server@latest"
      ],
      "env": {
        "JUPYTER_URL": "http://localhost:8888",
        "JUPYTER_TOKEN": "YOUR_JUPYTER_TOKEN"
      }
    }
  }
}
Full VS Code setup guide →

Frequently asked questions

What is the Jupyter MCP server?

It is a Model Context Protocol (MCP) server — a small piece of software that gives AI assistants like Claude a secure, governed connection to Jupyter. Lets an assistant open, read and edit Jupyter notebooks in real time: insert, edit and delete cells, execute code on the kernel, and see outputs including plots and images.

Is there an official Jupyter MCP server?

Not from Jupyter itself. This one is community-maintained (Datalayer). It is widely used, but review the repository and pin a version before relying on it in production.

Is the Jupyter MCP server hosted, or do I run it myself?

It runs locally. Your AI client starts it on your own machine with uvx, and it talks to the client over standard input and output rather than the network.

Do I need an API key for the Jupyter MCP server?

Yes. The local server reads JUPYTER_URL, JUPYTER_TOKEN from its environment, so you create those credentials first and add them to your client's config.

What can an AI assistant actually do with Jupyter?

Through this server an assistant can work with manage notebooks, edit cells, execute code, read outputs, list kernels — reading from and acting on Jupyter directly instead of you copy-pasting between windows. What you allow it to do is controlled by the permissions you grant.

How do I set this up for my business?

The setup section above has copy-paste config for Claude Code, Claude Desktop, Cursor and VS Code. If you want it rolled out across a team with permissions, governance and support handled, that is what Crox's Build engagement covers.

New to MCP? Start with our plain-English guide to the Model Context Protocol or see how to connect AI to your business tools without writing code .

Done-for-you integration

Want this connected to your business — with governance handled?

Crox maps your processes, connects AI to the tools you already use, and keeps it working as models change. Start with a readiness assessment or talk to us about a build.