AgentStack
MCP verified BSD-3-Clause Self-run

Jupyter Earth Mcp Server

mcp-datalayer-jupyter-earth-mcp-server Β· by datalayer

πŸͺ 🌎 Jupyter Earth MCP Server

β€” No reviews yet
0 installs
11 views
0.0% view→install

Install

$ agentstack add mcp-datalayer-jupyter-earth-mcp-server

βœ“ scanned Β· βœ“ verified β€” works with Claude Code, Cursor, and more.

Security review

βœ“ Passed

No issues found. Passed automated security review. Β· v0.1.0 How review works β†’

  • βœ“ Prompt-injection patterns
  • βœ“ Secret / credential exfiltration
  • βœ“ Dangerous shell & filesystem operations
  • βœ“ Untrusted network calls
  • βœ“ Known-malicious package signatures

What it can access

  • βœ“ Network access No
  • βœ“ Filesystem access No
  • βœ“ Shell / process execution No
  • βœ“ Environment & secrets No
  • βœ“ Dynamic code execution No

From automated source analysis of v0.1.0. β€œUsed” means the capability is present in the source β€” more access means more to trust, not that it’s unsafe.

Are you the author of Jupyter Earth Mcp Server? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

> This repository is archived - Use https://github.com/datalayer/earthdata-mcp-server instead.

[](https://datalayer.io)

[](https://github.com/sponsors/datalayer)

🌎 ✨ Jupyter Earth MCP Server

[](https://github.com/datalayer/jupyter-earth-mcp-server/actions/workflows/build.yml) [](https://pypi.org/project/jupyter-earth-mcp-server)

🌍 Jupyter Earth MCP Server is a Model Context Protocol (MCP) server implementation that provides a set of tools for πŸ—ΊοΈ Geospatial analysis in πŸ““ Jupyter notebooks.

The following demo uses the Earthdata MCP server to search for datasets and data granules on NASA Earthdata, this MCP server to download the data in Jupyter and the jupyter-mcp-server to run further analysis.

Analyzing Sea Level Rise with AI-Powered Geospatial Tools and Jupyter - Watch Video

Start JupyterLab

Make sure you have the following installed. The collaboration package is needed as the modifications made on the notebook can be seen thanks to Jupyter Real Time Collaboration.

pip install jupyterlab==4.4.1 jupyter-collaboration==4.0.2 ipykernel
pip uninstall -y pycrdt datalayer_pycrdt
pip install datalayer_pycrdt==0.12.17

Then, start JupyterLab with the following command.

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

You can also run make jupyterlab.

> [!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.

Use with Claude Desktop

Claude Desktop can be downloaded from this page for macOS and Windows.

For Linux, we had success using this UNOFFICIAL build script based on 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

To use this with Claude Desktop, add the following to your claude_desktop_config.json (read more on the MCP documentation website).

> [!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.

Claude Configuration on macOS and Windows

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

Claude Configuration on Linux

CLAUDE_CONFIG=${HOME}/.config/Claude/claude_desktop_config.json
cat  $CLAUDE_CONFIG
{
  "mcpServers": {
    "jupyter-earth": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "SERVER_URL",
        "-e",
        "TOKEN",
        "-e",
        "NOTEBOOK_PATH",
        "--network=host",
        "datalayer/jupyter-earth-mcp-server:latest"
      ],
      "env": {
        "SERVER_URL": "http://localhost:8888",
        "TOKEN": "MY_TOKEN",
        "NOTEBOOK_PATH": "notebook.ipynb"
      }
    }
  }
}
EOF
cat $CLAUDE_CONFIG

Components

Tools

The server currently offers 1 tool:

  1. download_earth_data_granules
  • Add a code cell in a Jupyter notebook to download Earth data granules from NASA Earth Data.
  • Input:
  • folder_name(string): Local folder name to save the data.
  • short_name(string): Short name of the Earth dataset to download.
  • count(int): Number of data granules to download.
  • temporal (tuple): (Optional) Temporal range in the format (datefrom, dateto).
  • bounding_box (tuple): (Optional) Bounding box in the format (lowerleftlon, lowerleftlat, upperrightlon, upperrightlat).
  • Returns: Cell output.

Prompts

  1. download_analyze_global_sea_level
  • To ask for downloading and analyzing global sea level data in Jupyter.
  • Returns: Prompt correctly formatted.

Building

You can build the Docker image it from source.

make build-docker

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source β€” we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet β€” be the first.

Versions

  • v0.1.0 Imported from the upstream source.