Token导航 LogoToken导航TokenDH.com
Earthdata MCP logo
搜索检索stdio官方级别未说明来源级核验

Earthdata MCP

MCP Server

一个为LLM代理提供直接访问NASA通用元数据仓库(CMR)的MCP服务器,支持通过自然语言接口发现、验证和访问地球科学数据集。

工具数

7

提示词数

0

GitHub Stars

10

资源数

0
PythonClaude搜索Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

nasa

提供方

nasa

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

uv run server.py http

详细介绍

大地数据mcp

MCP(模型上下文协议)服务器,为LLM代理提供对NASA公共元数据存储库(CMR)的直接访问。这种集成使用户能够通过自然语言界面代理地发现、验证和访问地球科学数据集。

要立即开始查询地球数据,请参见 连接到服务器.

可用工具

  • get_keywords:发现官方地球数据科学词汇术语(来自美国国家航空航天局知识管理系统),将口语用户输入(如“雨”)翻译成精确的搜索标签(如“降水量”)。
  • get_collections:使用科学关键字、仪器、平台或空间/时间约束搜索数据集(集合)。
  • get_granules:搜索集合中的特定数据文件(颗粒)。用于验证给定时间和位置的实际数据可用性。
  • get_services:发现与集合关联的数据访问端点(OPeNDAP、Harmony)和可视化层(WMS/WMTS)。
  • get_tools:查找与收藏相关的门户网站(如Giovanni、Worldview)和可下载软件(如Panoply),返回URL和深度链接模板。
  • get_citations:发现与收藏相关的引文记录(出版物、DOI),或直接通过标识符查找引文。
  • get_variables:发现与集合相关的科学变量和测量值,或按关键字查找变量。在下载或分析数据之前,使用此功能了解特定的数据参数(比例、偏移、填充值)。

代理工作流说明

服务器提供系统指令(prompts/instructions.py)执行a 发现→ 验证→ 访问 LLM客户端的工作流程:

  1. 发现:使用查找相关收藏 get_collections.
  2. 验证:使用 get_granules 确认用户请求的区域/时间的数据确实存在,因为集合通常会声明全局覆盖,而不管差距如何。
  3. 访问:指导用户使用 earthaccess 用于身份验证和下载的Python库,提供相关代码片段。

项目结构

该存储库围绕几个核心域构建:

  • server.py & loader.py:FastMCP服务器入口点和动态工具注册逻辑。
  • prompts/:定义LLM工作流程和角色的系统提示和说明。
  • tools/:包装NASA CMR API的独立MCP工具(get_collections, get_granules, get_keywords, get_services, get_tools, get_citations, get_variables).
  • models/:用于工具输入验证和标准化CMR API响应的冗余模型。
  • tests/:综合测试套件(使用 pytest)包括服务器初始化、工具逻辑和模拟CMR API响应。
  • docs/:项目文件分为 consumers/developers/.
关于遗留代码的说明:摄入和嵌入管道(包括 discover_data 工具, lambdas/ 目录和相关基础设施)目前正在被弃用。该体系结构正在转变为完全依赖于直接、实时的CMR API集成。

对于消费者:连接到服务器

Earthdata MCP服务器远程部署,并通过官方模型上下文协议进行通信 流式HTTP 运输。要使用服务器,请将您的MCP兼容客户端配置为指向我们的端点。

连接URL

配置您的客户端以连接到以下HTTP端点。大多数MCP客户端都需要这些标准参数:

  • 运输类型: streamable-http
  • 统一资源定位符: https://cmr.earthdata.nasa.gov/mcp/v1
  • 超时: 60000 (推荐:60秒,用于复杂的空间/时间查询)

适用于:

  • Claude 代码命令行工具
  • VS代码MCP扩展
  • Librechat
  • 任何支持流式HTTP传输的MCP兼容客户端

______________________________________________________________________

开发者:当地环境

如果你想为服务器做出贡献或在本地运行它,请按照以下步骤操作。

先决条件

安装

# Clone and enter directory
git clone 
cd earthdata-mcp

# Install dependencies
uv sync

# Install dev dependencies (for testing)
uv sync --extra dev

启动本地服务器

我们建议在HTTP模式下运行服务器进行本地开发和测试:

uv run server.py http

服务器将在以下时间启动并可用 http://127.0.0.1:5001/mcp/v1.

开发与测试

文档/开发人员/ 开发者指南:

运行测试

# Run all tests
uv run pytest

# Run with verbose output
uv run pytest -v

# Run specific test file
uv run pytest tests/test_server.py

MCP检查员(交互式测试)

  1. 启动服务器:
   uv run server.py http
  1. 发射检查员:
   npx @modelcontextprotocol/inspector
  1. 连接至 http://localhost:6274:

- 运输类型: 流式HTTP - 网址: http://localhost:5001/mcp/v1

部署

该应用程序通过Bamboo CI/CD部署到AWS。

开发者指南 详细的架构分解、部署过程、基础设施定义(terraform/),以及服务器启动问题的故障排除步骤。

目录标签

目录标签

PythonClaude搜索地球科学数据混合部署元数据检索自然语言处理NASA集成数据发现工具

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP