Skip to main content
Glama
datalayer

Jupyter Earth MCP Server

by datalayer

데이터레이어

스폰서가 되세요

🌎 ✨ Jupyter Earth MCP 서버

Github 작업 상태 PyPI - 버전

🌍 Jupyter Earth MCP 서버는 Jupyter 노트북에서 🗺️ 지리공간 분석을 위한 도구 세트를 제공하는 MCP( Model Context Protocol ) 서버 구현입니다.

다음 데모에서는 Earthdata MCP 서버를 사용하여 NASA Earthdata에서 데이터 세트와 데이터 과립을 검색하고, 이 MCP 서버를 사용하여 Jupyter에 데이터를 다운로드하고, jupyter-mcp-server를 사용 하여 추가 분석을 실행합니다.

JupyterLab 시작하기

다음이 설치되어 있는지 확인하세요. Jupyter Real Time Collaboration을 통해 노트북에서 수정한 내용을 확인할 수 있으므로 협업 패키지가 필요합니다.

지엑스피1

그런 다음, 다음 명령으로 JupyterLab을 시작합니다.

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

make jupyterlab 실행할 수도 있습니다.

[!메모]

--ip 0.0.0.0 으로 설정하면 Docker 컨테이너에서 실행되는 MCP 서버가 로컬 JupyterLab에 액세스할 수 있습니다.

Related MCP server: Earthdata MCP Server

Claude Desktop과 함께 사용

Claude Desktop은 이 페이지에서 macOS 및 Windows용으로 다운로드할 수 있습니다.

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_URL 과 TOKEN 의 포트가 jupyter lab 명령에서 사용된 포트와 일치하는지 확인하세요.

NOTEBOOK_PATH 는 JupyterLab이 시작된 디렉토리를 기준으로 해야 합니다.

macOS 및 Windows에서의 Claude 구성

{
  "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"
      }
    }
  }
}

Linux에서의 Claude 구성

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

구성 요소

도구

현재 서버는 1개의 도구를 제공합니다.

  1. download_earth_data_granules

  • Jupyter 노트북에 코드 셀을 추가하여 NASA Earth Data에서 지구 데이터 과립을 다운로드합니다.

  • 입력:

    • folder_name (문자열): 데이터를 저장할 로컬 폴더 이름입니다.

    • short_name (문자열): 다운로드할 지구 데이터 세트의 짧은 이름입니다.

    • count (int): 다운로드할 데이터 과립의 수.

    • temporal (튜플): (선택 사항) (date_from, date_to) 형식의 시간 범위입니다.

    • bounding_box (튜플): (선택 사항) (lower_left_lon, lower_left_lat, upper_right_lon, upper_right_lat) 형식의 경계 상자입니다.

  • 반환: 셀 출력.

프롬프트

  1. download_analyze_global_sea_level

    • Jupyter에서 전 세계 해수면 데이터를 다운로드하고 분석해 달라고 요청합니다.

    • 반환: 프롬프트 형식이 정확합니다.

건물

소스에서 Docker 이미지를 빌드할 수 있습니다.

make build-docker

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    A Model Context Protocol server that provides a standardized interface for AI models to interact with NASA's vast array of data sources including APOD, Mars Rover photos, satellite imagery, and space weather data.
    32
    513 npm
    93
    ISC
  • A
    license
    Not graded
    quality
    B
    maintenance
    A Model Context Protocol server that enables efficient discovery and retrieval of NASA Earth Data for geospatial analysis.
    26
    BSD 3-Clause
  • A
    license
    A
    quality
    B
    maintenance
    A Model Context Protocol server that connects Large Language Models to the GeoServer REST API, enabling AI assistants to query and manipulate geospatial data through natural language.
    9
    92
    MIT