search_earth_datasetsLABSCO SUMMARY
Three download modes, and the safe one is the one you should call first.
Earth science queries are easy to get wrong by an order of magnitude, so manifest mode returns the metadata without writing a byte — you check the scope, then decide. Script mode is the deliberate escape hatch: the server stays Earthdata-only and hands you Python to run wherever your analysis actually lives.
What it is
An MCP server over NASA Earthdata. It searches the catalog, narrows granules by time range and bounding box, and hands back either a metadata preview, downloaded files, or executable Python — deliberately scoped to Earthdata rather than bundling a notebook runtime.
What you get
- search_earth_datasets — find datasets by keywords, with optional temporal range and bounding box, returning dataset abstracts
- search_earth_datagranules — list granules for a dataset short_name, filtered the same way
- download_earth_data_granules — always searches first, then behaves according to mode
- Mode=manifest — granule ids, titles and links only, no files written; the safe first step for checking your filters
- Mode=download — authenticates and pulls the matching granules into folder_name on the server
- Mode=script — returns Python that performs the same search and download, for running in a notebook elsewhere
- Prompts for common workflows, including sealevel_rise_dataset and download_analyze_global_sea_level
Requirements
A NASA Earthdata Login account, supplied as EARTHDATA_USERNAME and EARTHDATA_PASSWORD. Install from PyPI as earthdata-mcp-server, or run the datalayer/earthdata-mcp-server Docker image. Credentials are only needed for the download path; searching does not use them.
Setup effort
One command plus credentials — pip install earthdata-mcp-server, then supply credentials
USE CASES
Finding a dataset for a question
Search by keyword within a time range and bounding box, and read the abstracts that come back.
Checking how much data a query would pull
Run the download in manifest mode to see the granules and links without writing any files.
Getting the files onto the machine
Authenticate with your Earthdata login and download the matching granules into a folder.
Moving the work into a notebook
Ask for the equivalent Python and run the search and download in your own runtime.
3 tools
Listed in project docs. Your client may show a different list.
search_earth_datagranulesdownload_earth_data_granulesBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation.
Requires
- docker on PATH
- EARTHDATA_PASSWORD in your environment
- EARTHDATA_USERNAME in your environment
Where it runs
Both documented setups run the server on your machine.
INSTALLATION
Connect your client
Server setup
pip install earthdata-mcp-serverMCP Clients
Claude Desktop — Docker
{
"mcpServers": {
"earthdata": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"datalayer/earthdata-mcp-server:latest"
],
"env": {
"EARTHDATA_USERNAME": "<YOUR_EARTHDATA_USERNAME>",
"EARTHDATA_PASSWORD": "<YOUR_EARTHDATA_PASSWORD>"
}
}
}
}Claude Desktop — Linux host networking
{
"mcpServers": {
"earthdata": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--network=host",
"datalayer/earthdata-mcp-server:latest"
],
"env": {
"EARTHDATA_USERNAME": "<YOUR_EARTHDATA_USERNAME>",
"EARTHDATA_PASSWORD": "<YOUR_EARTHDATA_PASSWORD>"
}
}
}
}