Reference Servers · MODEL CONTEXT PROTOCOL
podaac cmr mcp
CMR Model Context Protocol example
WHAT IT CONNECTS
What podaac cmr mcp gives an AI Agent
The source catalog does not include a structured feature list. Review the repository documentation before use.
SECURITY
An MCP listing is not a security review
An MCP server may receive model context, credentials, local files, or permission to call external systems. Review its code, requested environment variables, network behavior, package provenance, and maintenance status before connecting it to an agent.
README
Repository documentation
This module is a model context protocol (MCP) for NASA's earthdata common metedata repository (CMR). The goal of this MCP server is to integrate AI retrievals with NASA Catalog of datasets by way of Earthaccess.
uv - a rust based python package manager a LLM client, such as Claude desktop or chatGPT desktop (for consuming the MCP)
Clone the repository to your local environment, or where your LLM client is running.
git clone https://github.com/podaac/cmr-mcp.git
cd cmr-mcp
curl -LsSf https://astral.sh/uv/install.sh | sh
uv venv
source .venv/bin/activate
uv sync
use the outputs of which uv (UV_LIB) and PWD (CMR_MCP_INSTALL) to update the following configuration.
In this example we'll use Claude desktop.
Update the claude_desktop_config.json file (sometimes this must be created). On a mac, this is often found in ~/Library/Application\ Support/Claude/claude_desktop_config.json
Add the following configuration, filling in the values of UV_LIB and CMR_MCP_INSTALL - don't use environment variables here.
{
"mcpServers": {
"cmr": {
"command": "$UV_LIB$",
"args": [
"--directory",
"$CMR_MCP_INSTALL$",
"run",
"cmr-search.py"
]
}
}
}
Simply prompt your agent to search cmr for... data. Below is a simple example of this in action.
Other prompts that can work:
- Search CMR for datasets from 2024 to 2025
- Search CMR for PO.DAAC datasets from 2020 to 2024 with keyword Climate
COMMUNITY
