nasa earthdata.com
nasa earthdata.com logo

NASA Earthdata

Provides a bridge to NASA's Earthdata platform for searching and retrieving Earth science datasets and data granules bas...

Created byApr 23, 2025
[![Datalayer](https://assets.datalayer.tech/datalayer-25.svg)](https://datalayer.io)
[![Become a Sponsor](https://img.shields.io/static/v1?label=Become%20a%20Sponsor&message=%E2%9D%A4&logo=GitHub&style=flat&color=1ABC9C)](https://github.com/sponsors/datalayer)

Earthdata MCP Server

[![Github Actions Status](https://github.com/datalayer/earthdata-mcp-server/workflows/Build/badge.svg)](https://github.com/datalayer/earthdata-mcp-server/actions/workflows/build.yml) [![PyPI - Version](https://img.shields.io/pypi/v/earthdata-mcp-server)](https://pypi.org/project/earthdata-mcp-server)
Earthdata MCP Server is a [Model Context Protocol](https://modelcontextprotocol.io/introduction) (MCP) server implementation that provides tools to interact with [NASA Earth Data](https://www.earthdata.nasa.gov/). It enables efficient dataset discovery and retrieval for Geospatial analysis.
The following demo uses this MCP server to search for datasets and data granules on NASA Earthdata, the [jupyter-earth-mcp-server](https://github.com/datalayer/jupyter-earth-mcp-server) to download the data in Jupyter and the [jupyter-mcp-server](https://github.com/datalayer/jupyter-mcp-server) to run further analysis.

Use with Claude Desktop

To use this with Claude Desktop, add the following to your `claude_desktop_config.json`.
If you are using Linux, start Claude with the following command.

Tools

The server offers 2 tools.

`search_earth_datasets`

  • Search for datasets on NASA Earthdata.
  • Input: - search_keywords (str): Keywords to search for in the dataset titles. - count (int): Number of datasets to return. - temporal (tuple): (Optional) Temporal range in the format (date_from, date_to). - bounding_box (tuple): (Optional) Bounding box in the format (lower_left_lon, lower_left_lat, upper_right_lon, upper_right_lat).
  • Returns: List of dataset abstracts.

`search_earth_datagranules`

  • Search for data granules on NASA Earthdata.
  • Input: - short_name (str): Short name of the dataset. - count (int): Number of data granules to return. - temporal (tuple): (Optional) Temporal range in the format (date_from, date_to). - bounding_box (tuple): (Optional) Bounding box in the format (lower_left_lon, lower_left_lat, upper_right_lon, upper_right_lat).
  • Returns: List of data granules.

Prompts

  1. `sealevel_rise_dataset` - Search for datasets related to sea level rise worldwide. - Input: - `start_year` (int): Start year to consider. - `end_year` (int): End year to consider. - Returns: Prompt correctly formatted.
  1. `ask_datasets_format` - To ask about the format of the datasets. - Returns: Prompt correctly formatted.

Building

If you prefer, you can pull the prebuilt images.