返回市场
产品数据服务-MCP

产品数据服务-MCP

作者:NASA-PDS2 星标更新:2025-10-26

项目介绍

NASA PDS 注册表 MCP 服务器

这是一个使用 FastMCP 提供对 NASA 行星数据系统 (PDS) 注册表 API 访问的模型上下文协议 (MCP) 服务器。

https://github.com/user-attachments/assets/1d6b7035-c07a-4ca3-8bd2-9c19d68c3d5c

概述

NASA PDS MCP 服务器通过一个简单的接口,实现了人类参与的 NASA PDS 数据产品的搜索和探索,直接与 NASA PDS 注册表 API 集成。

通过开源这个 MCP 服务器,我们旨在支持行星数据科学社区的研究人员,使他们能够轻松访问 NASA PDS 数据以用于未来的研究工作。

<img width="512" height="322" alt="image" src="https://gips1.baidu.com/it/u=1282479081,2475038155&fm=3081&app=3081&f=PNG?w=512&h=322" />

功能

  • 任务与项目搜索:根据关键词和任务类型过滤查找太空任务、调查和研究项目
  • 天体发现:按名称或类型搜索行星、卫星、小行星、彗星和其他天文目标
  • 航天器与平台搜索:定位航天器、漫游车、着陆器、望远镜和其他携带仪器的平台
  • 科学仪器查询:查找在太空任务中使用的相机、光谱仪、探测器和其他科学仪器
  • 数据集探索:按任务、目标、仪器或航天器关系搜索和筛选数据集
  • 产品关系映射:发现任务、目标、仪器和数据产品之间的联系
  • 详细产品信息:使用 URN 标识符检索特定 PDS 产品的全面元数据和详细信息
  • 参考数据访问:访问分类的目标类型、航天器类型、仪器类型和任务类型的列表,用于过滤和发现

示例对话

  1. 在 PDS 中进行地震观测的是哪种仪器?
  2. PDS 中月球的标识符是什么?
  3. 这些仪器针对月球收集了哪些数据?(如有必要,请包括 URNs)
  4. 哪些任务产生了这些观测结果?

安装

  1. 克隆此仓库:
git clone https://github.com/NASA-PDS/pds-mcp-server.git
cd pds-mcp-server
  1. 安装依赖项:

需要 Python 3.13+。

python3.13 -m venv {env-name}
source {env-name}/bin/activate
pip install -r requirements.txt

使用方法

单独运行服务器

如果您需要将 MCP 工具作为服务器公开,可以单独运行它如下:

python3.13 pds_mcp_server.py

MCP 客户端配置(Claude Desktop、Cursor 或自定义 MCP 客户端)

{
  "mcpServers": {
    "pds-registry": {
      "command": "/path/to/{env-name}/bin/python3.13",
      "args": ["/path/to/pds_mcp_server.py"],
      "env": {}
    }
  }
}

建议的操作指令

我们建议在您的 MCP 客户端中使用以下指令:

您每次请求只能调用一个工具。在返回的搜索结果中,输出 URNs(标识符)作为附加信息。在每条消息之后,向用户提出下一步可以采取的行动,并询问他们的选择。

这创建了一个人类参与的代理搜索对话:允许用户控制他们如何通过 NASA 行星数据系统进行搜索。

有关如何在 Claude Desktop 上设置的示例。

自定义 MCP 主机

为了超越第三方 MCP 主机(如 Cursor、Claude Desktop 等),我们提供了一个基于 Gradio UI、HuggingFace smolagents 和 OpenAI SDK 构建的自定义 MCP 主机示例。更多内容在这里

开发

MCP 检查器(调试)

npx @modelcontextprotocol/inspector python src/main.py

更多关于 MCP 检查器的信息这里

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 如适用添加测试
  5. 提交拉取请求

依赖项

需要 Python 3.13+。库依赖项列在 requirements.txt 中。

许可证

本项目采用 MIT 许可证 - 详情见 LICENSE 文件。

支持

对于以下问题:

其他资源