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

NASA MCP Server

MCP Server

@programcomputer/nasa-mcp-server@latest

A Model Context Protocol (MCP) server for NASA APIs, providing a standardized interface for AI models to interact with NASA's vast array of data sources.

工具数

23

提示词数

0

GitHub Stars

87

资源数

0
TypeScriptCursor搜索Cursor

安装说明

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

作者 / 组织

ProgramComputer

提供方

ProgramComputer

最后核验

2026/5/18 03:28

运行时

Node.js

快速接入

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

命令预览

npx -y @programcomputer/nasa-mcp-server@latest --nasa-api-key=YOUR_API_KEY

详细介绍

](https://www.npmjs.com/package/@programcomputer/nasa-mcp-server)

NASA MCP服务器

NASA API的模型上下文协议(MCP)服务器,为AI模型提供了一个标准化的接口,用于与NASA的大量数据源进行交互。此服务器实现了官方的模型上下文协议规范。

非常感谢MCP社区的支持和指导!

特性

  • 通过单一、一致的界面访问20多个NASA数据源
  • 针对AI消费优化的标准化数据格式
  • 自动参数验证和错误处理
  • NASA API密钥的速率限制管理
  • 全面的文档和示例
  • 支持多种NASA图像格式
  • 数据转换和格式化以兼容LLM
  • 跨平台支持(Windows、macOS、Linux)

免责声明

本项目不隶属于美国国家航空航天局(NASA)或其任何子公司或附属公司,也不受其认可或与之相关。 它是一个独立的实现,可以访问NASA的公开API。所有使用的NASA数据都是公开的,并受NASA数据使用政策的约束。

安装

使用npx运行

env NASA_API_KEY=YOUR_API_KEY npx -y @programcomputer/nasa-mcp-server@latest

您还可以将API键作为命令行参数传递:

npx -y @programcomputer/nasa-mcp-server@latest --nasa-api-key=YOUR_API_KEY

使用SuperGateway处理服务器发送的事件(SSE)

您可以使用 超级网关 用于服务器发送事件(SSE)。

NASA MCP服务器的开发人员不认可SuperGateway存储库。此信息是为那些希望自行实现SSE功能的人提供的。

手动安装

# Clone the repository
git clone https://github.com/ProgramComputer/NASA-MCP-server.git

# Install dependencies
cd NASA-MCP-server
npm install

# Run with your API key
NASA_API_KEY=YOUR_API_KEY npm start

在游标上运行

配置光标🖥️ 注意:需要游标版本0.45.6+

在Cursor中配置NASA MCP服务器:

创建或编辑 mcp.json Cursor配置目录中包含以下内容的文件:

{
  "mcpServers": {
    "nasa-mcp": {
      "command": "npx",
      "args": ["-y", "@programcomputer/nasa-mcp-server@latest"],
      "env": {
        "NASA_API_KEY": "your-api-key"
      }
    }
  }
}

替换 your-api-key 使用您的NASA API密钥https://api.nasa.gov/.

添加配置后,重新启动Cursor以查看新的NASA工具。Composer Agent将在适当的时候自动使用NASA MCP进行与空间相关的查询。

环境变量

服务器可以配置以下环境变量:

变量描述
NASA_API_KEY您的NASA API密钥(请访问API.NASA.gov)

包括美国国家航空航天局API

此MCP服务器集成了以下NASA API:

  1. NASA开放API (美国国家航空航天局官方网站):

- APOD(当日天文图片) - EPIC(地球多色成像相机) - DONKI(通知、知识、信息空间气象数据库) - 洞察号(火星气象服务) - 火星漫游者照片 - 近地天体网络服务 - EONET(地球观测自然事件跟踪器) - TLE(双线元素) - 美国国家航空航天局图像和视频库 - 系外行星档案 - NASA Sounds API(测试版) - POWER(全球能源资源预测)

  1. JPL太阳系动力学API (ssd-api.JPL.NASA.Gov):

- SBDB(小型实体数据库) - SBDB接近数据 - 火球数据 - 童军API

  1. 地球数据API:

- 全球图像浏览服务 - CMR(通用元数据存储库)-增强了高级搜索功能 - EPIC(地球多色成像相机) - FIRMS(资源管理系统消防信息)

API方法

每个NASA API都通过标准化MCP方法进行暴露:

APOD(当日天文图片)

{
  "method": "nasa/apod",
  "params": {
    "date": "2023-01-01", // Optional: YYYY-MM-DD format
    "count": 5, // Optional: Return a specified number of random images
    "thumbs": true // Optional: Return URL of video thumbnail
  }
}

火星漫游者照片

{
  "method": "nasa/mars-rover",
  "params": {
    "rover": "curiosity", // Required: "curiosity", "opportunity", or "spirit"
    "sol": 1000, // Either sol or earth_date is required
    "earth_date": "2023-01-01", // YYYY-MM-DD format
    "camera": "FHAZ" // Optional: Filter by camera type
  }
}

近地球物体

{
  "method": "nasa/neo",
  "params": {
    "start_date": "2023-01-01", // Required: YYYY-MM-DD format
    "end_date": "2023-01-07" // Required: YYYY-MM-DD format (max 7 days from start)
  }
}

全球图像浏览服务

{
  "method": "nasa/gibs",
  "params": {
    "layer": "MODIS_Terra_CorrectedReflectance_TrueColor", // Required: Layer ID
    "date": "2023-01-01", // Required: YYYY-MM-DD format
    "format": "png" // Optional: "png" or "jpg"
  }
}

POWER(全球能源资源预测)

{
  "method": "nasa/power",
  "params": {
    "parameters": "T2M,PRECTOTCORR,WS10M", // Required: Comma-separated list
    "community": "re", // Required: Community identifier
    "latitude": 40.7128, // Required: Latitude
    "longitude": -74.0060, // Required: Longitude
    "start": "20220101", // Required: Start date (YYYYMMDD)
    "end": "20220107" // Required: End date (YYYYMMDD)
  }
}

有关所有可用方法和参数的完整文档,请参阅 /docs 目录。

记录系统

服务器包括全面的日志记录:

  • 运行状态和进度
  • 性能指标
  • 速率限制跟踪
  • 错误条件
  • 请求验证

日志消息示例:

[INFO] NASA MCP Server initialized successfully
[INFO] Processing APOD request for date: 2023-01-01
[INFO] Fetching Mars Rover data for Curiosity, sol 1000
[WARNING] Rate limit threshold reached (80%)
[ERROR] Invalid parameter: 'date' must be in YYYY-MM-DD format

安全考虑

此MCP服务器按照模型上下文协议规范实施安全最佳实践:

  • 使用Zod模式进行输入验证和净化
  • 不执行任意代码
  • 防止指令注入
  • 正确处理错误,防止信息泄露
  • API请求的速率限制和超时控制
  • 没有可跨会话利用的持久状态

发展

# Clone the repository
git clone https://github.com/ProgramComputer/NASA-MCP-server.git

# Install dependencies
npm install

# Copy the example environment file and update with your API keys
cp .env.example .env

# Build the TypeScript code
npm run build

# Start the development server
npm run dev

# Run tests
npm test

MCP检验员测试

NASA MCP服务器包含一个脚本,可帮助您使用MCP检查器测试API:

# Run the provided test script
./scripts/test-with-inspector.sh

这将:

  1. 构建项目以确保包含最新更改
  2. 在NASA MCP服务器运行的情况下启动MCP检查器
  3. 允许您交互式测试所有NASA API

测试请求示例

存储库包括每个API的示例测试请求,您可以将其复制并粘贴到MCP检查器中:

# View the example test requests
cat docs/inspector-test-examples.md

有关详细示例,请参阅 检验员测试示例 文件。

MCP客户端使用情况

此服务器遵循官方的模型上下文协议。以下是如何将其与MCP SDK一起使用的示例:

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { HttpClientTransport } from "@modelcontextprotocol/sdk/client/http.js";

const transport = new HttpClientTransport({
  url: "http://localhost:3000",
});

const client = new Client({
  name: "mcp-client",
  version: "1.0.0",
});

await client.connect(transport);

// Example: Get today's Astronomy Picture of the Day
const apodResult = await client.request({
  method: "nasa/apod", 
  params: {}
});

// Example: Get Mars Rover photos
const marsRoverResult = await client.request({
  method: "nasa/mars-rover",
  params: { rover: "curiosity", sol: 1000 }
});

// Example: Search for Near Earth Objects
const neoResults = await client.request({
  method: "nasa/neo",
  params: {
    start_date: '2023-01-01',
    end_date: '2023-01-07'
  }
});

// Example: Get satellite imagery from GIBS
const satelliteImage = await client.request({
  method: "nasa/gibs",
  params: {
    layer: 'MODIS_Terra_CorrectedReflectance_TrueColor',
    date: '2023-01-01'
  }
});

// Example: Use the new POWER API
const powerData = await client.request({
  method: "nasa/power",
  params: {
    parameters: "T2M,PRECTOTCORR,WS10M",
    community: "re",
    latitude: 40.7128,
    longitude: -74.0060,
    start: "20220101",
    end: "20220107"
  }
});

贡献

  1. 分叉存储库
  2. 创建功能分支
  3. 运行测试: npm test
  4. 提交拉取请求

许可证

ISC许可证-有关详细信息,请参阅许可证文件

目录标签

目录标签

TypeScriptCursor搜索research-and-dataNASA数据接口混合部署可托管AI数据服务空间数据协议服务器API网关

支持客户端

Cursor

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Node.js

部署方式(deploymentType,部署类型)

remote-capable

来源包(packageName,安装包名)

@programcomputer/nasa-mcp-server@latest

工具数量(toolCount,工具数)

23

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiononeremote-capable

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

安装前确认

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

来源信息

继续浏览同类 MCP