LabscoMCP early access ↗
datalayerMCP SERVER

Jupyter Earth MCP Server

Downloads NASA Earthdata granules straight into a running Jupyter notebook — archived by its authors, who point at earthdata-mcp-server instead.

by datalayer ↗Physical Sciences & Scientific ComputingCommunity

No longer maintained. The GitHub repository for this server is archived — no fixes or security updates are expected.

View project ↗

LABSCO SUMMARY

Read the first line before you install it.

The repository is archived and names its successor, so start at earthdata-mcp-server rather than here. What remains interesting is the pattern: the download lands in the notebook as a real cell, which means the fetch is reproducible by whoever opens the notebook next instead of being a side effect of a chat session.

What it is

An MCP server that writes a download cell into a live JupyterLab notebook and runs it, pulling Earth data granules from NASA Earthdata onto the machine where the notebook lives. The repository is archived: its first line directs you to https://github.com/datalayer/earthdata-mcp-server.

What you get

  • download_earth_data_granules — adds and runs a code cell that fetches granules, taking folder_name for where to save, short_name for the dataset, count for how many, and optional temporal and bounding_box tuples to narrow the request
  • A prompt, download_analyze_global_sea_level, that frames the download-and-analyze task for you
  • Cell output returned to the conversation, so the assistant sees what the download actually did

Requirements

A running JupyterLab with real-time collaboration installed, so edits made to the notebook are visible: jupyterlab==4.4.1, jupyter-collaboration==4.0.2, ipykernel and datalayer_pycrdt==0.12.17. Start it with jupyter lab --port 8888 --IdentityProvider.token MY_TOKEN --ip 0.0.0.0 — the wide bind is what lets the containerized server reach it. The client runs the datalayer/jupyter-earth-mcp-server:latest image with SERVER_URL, TOKEN and NOTEBOOK_PATH, the last relative to where JupyterLab started. BSD 3-Clause.

Setup effort

One command — docker run -i --rm -e SERVER_URL -e TOKEN -e NOTEBOOK_PATH datalayer/jupyter-earth-mcp-server:latest