Jupyter MCP Server

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Provides interaction with Jupyter notebooks running in JupyterLab, allowing adding and executing code cells, creating markdown cells, and interacting with notebook content programmatically.

  • Offers functionality to download Earth data granules from NASA Earth Data, supporting parameters for folder name, dataset short name, count, temporal range, and bounding box.

🪐 ✨ Jupyter MCP 服务器

Jupyter MCP 服务器是一个模型上下文协议(MCP) 服务器实现,可与在任何 JupyterLab 中运行的 📓 Jupyter 笔记本进行交互(也适用于您的 💻 本地 JupyterLab)。

启动 JupyterLab

确保已安装以下软件。协作包必不可少,因为借助Jupyter 实时协作功能,您可以看到笔记本上所做的修改。

pip install jupyterlab jupyter-collaboration ipykernel pip uninstall -y pycrdt datalayer_pycrdt pip install datalayer_pycrdt

然后,使用以下命令启动 JupyterLab。

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

您也可以运行make jupyterlab

[!笔记]

--ip设置为0.0.0.0以允许在 Docker 容器中运行的 MCP 服务器访问您的本地 JupyterLab。

与 Claude Desktop 一起使用

您可以从此页面下载适用于 macOS 和 Windows 的 Claude Desktop。

对于 Linux,我们成功使用了基于 nix 的非官方构建脚本

# ⚠️ UNOFFICIAL # You can also run `make claude-linux` NIXPKGS_ALLOW_UNFREE=1 nix run github:k3d3/claude-desktop-linux-flake \ --impure \ --extra-experimental-features flakes \ --extra-experimental-features nix-command

要将其与 Claude Desktop 一起使用,请将以下内容添加到您的claude_desktop_config.json (在MCP 文档网站上阅读更多内容)。

[!重要的]

确保SERVER_URLTOKEN的端口与jupyter lab命令中使用的端口相匹配。

NOTEBOOK_PATH应该相对于启动 JupyterLab 的目录。

macOS 和 Windows 上的 Claude 配置

{ "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 上的 Claude 配置

CLAUDE_CONFIG=${HOME}/.config/Claude/claude_desktop_config.json cat <<EOF > $CLAUDE_CONFIG { "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" } } } } EOF cat $CLAUDE_CONFIG

成分

工具

该服务器目前提供 2 种工具:

  1. add_execute_code_cell
  • 在 Jupyter 笔记本中添加并执行代码单元。
  • 输入:
    • cell_content (字符串):要执行的代码。
  • 返回:单元格输出。
  1. add_markdown_cell
  • 在 Jupyter 笔记本中添加一个 markdown 单元。
  • 输入:
    • cell_content (字符串):Markdown 内容。
  • 返回:成功消息。

建筑

您可以从源代码构建 Docker 镜像。

make build-docker

通过 Smithery 安装

要通过Smithery自动为 Claude Desktop 安装 Jupyter MCP 服务器:

npx -y @smithery/cli install @datalayer/jupyter-mcp-server --client claude
-
security - not tested
F
license - not found
-
quality - not tested

通过模型上下文协议实现与 Jupyter 笔记本的交互,支持在 JupyterLab 环境中执行代码和插入 markdown。

  1. Start JupyterLab
    1. Use with Claude Desktop
      1. Claude Configuration on macOS and Windows
      2. Claude Configuration on Linux
    2. Components
      1. Tools
    3. Building
      1. Installing via Smithery
        ID: et849kq742