ProgramComputer_NASA MCP Server

ProgramComputer_NASA MCP Server

🚀 NASA MCP 服务器使用指南

本指南详细介绍了 NASA MCP 服务器的安装、配置、功能及使用方法,帮助你快速上手并安全使用该服务器。

🚀 快速开始

克隆仓库

# 克隆仓库
git clone https://github.com/ProgramComputer/NASA-MCP-server.git

安装依赖

# 安装项目依赖
npm install

配置环境变量

# 复制示例环境文件并进行修改
cp .env.example .env

启动开发服务器

# 开发模式启动服务器
npm run dev

# 生产模式构建并启动
npm start

✨ 主要特性

日志系统

  • 日志级别:包含信息、警告和错误日志。
  • 日志路径:存储在 logs/ 目录中,默认情况下启用文件输出。
  • 日志格式
    [INFO] 服务器初始化成功
    [WARNING] 速率限制已达到阈值(80%)
    [ERROR] 参数错误:'date' 必须符合 YYYY-MM-DD 格式
    

安全注意事项

  • 输入验证:使用 Zod 模式进行数据校验。
  • 防止代码执行:禁止任意代码运行。
  • 命令注入防护:采取措施防止命令注入攻击。
  • 错误处理:避免敏感信息泄露。
  • 速率限制:对 API 请求实施限流控制。

💻 使用示例

基础用法

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

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

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

await 客户端.connect(运输);

// 示例:获取今天的天文学图片
const apodResult = await 客户端.request({
method: "nasa/apod",
params: {}
});

// 示例:获取火星车照片
const marsRoverResult = await 客户端.request({
method: "nasa/mars-rover",
params: { rover: "curiosity", sol: 1000 }
});

// 示例:查询近地天体
const neoResults = await 客户端.request({
method: "nasa/neo",
params: {
start_date: '2023-01-01',
end_date: '2023-01-07'
}
});

// 示例:获取卫星影像
const satelliteImage = await 客户端.request({
method: "nasa/gibs",
params: {
layer: 'MODIS_Terra_CorrectedReflectance_TrueColor',
date: '2023-01-01'
}
});

// 示例:使用 POWER API
const powerData = await 客户端.request({
method: "nasa/power",
params: {
latitude: 34.0522,
longitude: -118.2437,
start_date: '2023-01-01',
end_date: '2023-12-31'
}
});

📦 安装指南

克隆仓库

# 克隆仓库
git clone https://github.com/ProgramComputer/NASA-MCP-server.git

安装依赖

# 安装项目依赖
npm install

配置环境变量

# 复制示例环境文件并进行修改
cp .env.example .env

启动开发服务器

# 开发模式启动服务器
npm run dev

# 生产模式构建并启动
npm start

📚 详细文档

  • 项目文档:详细说明了服务器的安装、配置和使用方法。
  • API 文档:提供了所有可用 API 的接口定义和使用示例。
  • 日志记录:默认启用文件输出,支持自定义日志格式。

🔧 技术细节

开发与测试

构建项目

# 在开发模式下构建
npm run build

# 在生产模式下构建
npm run build -- --env production

测试命令

# 运行单元测试
npm test

# 覆盖率测试
npm run test:coverage

安全注意事项

密钥管理

  • 环境变量:建议将敏感信息存储在环境变量中,如:
    REACT_APP_API_KEY=your_api_key_here
    

访问控制

  • IP 白名单:可以在 config.json 中配置允许访问的 IP 地址。
  • 身份验证:支持 OAuth 和 API 密钥认证方式。

项目结构

.
├── src/           # 源代码目录
│   ├── server.js    # 主服务器文件
│   └── routes/      # 路由定义
├── public/         # 公共资源目录
│   └── config.json  # 配置文件
└── logs/          # 日志输出目录

📄 许可证

  • MIT License:项目遵循 MIT 开源协议,允许自由使用和修改。

👥 贡献指南

  1. fork 仓库
  2. 创建功能分支
  3. 提交代码
  4. 提交 Pull Request

📞 联系方式


以上为 NASA MCP 服务器的详细使用指南,如有任何问题,请随时联系支持团队。

  • 0 关注
  • 0 收藏,33 浏览
  • system 提出于 2025-10-03 02:00

相似服务问题

相关AI产品