CMR Model Context Protocol

CMR Model Context Protocol

An MCP server that integrates AI retrievals with NASA's Common Metadata Repository (CMR), allowing users to search NASA's catalog of Earth science datasets through natural language queries.

Category
Visit Server

Tools

get_datasets

Get a list of datasets form CMR based on keywords. Args: startdate: (Optional) Start date of search request (like "2002" or "2022-03-22") stopdate: (Optional) Stop date of search request (like "2002" or "2022-03-22") daac: the daac to search, e.g. NSIDC or PODAAC keywords: A list of keyword arguments to search collections for.

README

Model Context Protocol (MCP) for NASA Earthdata Search (CMR)

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.

Dependencies

uv - a rust based python package manager a LLM client, such as Claude desktop or chatGPT desktop (for consuming the MCP)

Install and Run

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

Install uv

curl -LsSf https://astral.sh/uv/install.sh | sh
uv venv
source .venv/bin/activate

Install packages with uv

uv sync

use the outputs of which uv (UV_LIB) and PWD (CMR_MCP_INSTALL) to update the following configuration.

Adding to AI Framework

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

Use the MCP Server

Simply prompt your agent to search cmr for... data. Below is a simple example of this in action.

Claude MCP usage

Other prompts that can work:

  1. Search CMR for datasets from 2024 to 2025
  2. Search CMR for PO.DAAC datasets from 2020 to 2024 with keyword Climate

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured