使用说明
NASA-MCP-服务器
一个模型上下文协议(MCP)服务器,通过公共的NASA图像和视频库API,为您的AI助手(例如,Claude Desktop、LM Studio)提供直接、安全的访问NASA庞大图像、视频和音频文件集合的途径。
特点
这台服务器实现了五种核心工具,用于与美国宇航局的数字媒体进行全面交互:
- **
search_nasa_media**通过查询、媒体类型、NASA中心和日期范围搜索媒体库。 - **
get_nasa_asset**为特定的NASA ID检索所有可用的文件格式(原始、中等、小型、元数据)。 - **
get_nasa_metadata**获取包含详细EXIF信息和技术规格的JSON文件的直接链接。 - **
get_nasa_captions**访问视频内容的字幕/副标题文件(VTT/SRT)。 - **
browse_nasa_album**浏览精选集合,如“阿波罗”、“哈勃”和“火星”。
先决条件
要运行这个自定义的MCP服务器,您必须安装并配置以下内容:
- Docker Desktop(桌面版) (与……一起 MCP 工具包 (在Beta功能中已启用)。
- 一 大型语言模型客户端 支持MCP的,比如Claude Desktop。
- 必要的项目文件:
Dockerfile,requirements.txt,nasa_server.py,custom.yaml,和registry.yaml(来自这个仓库)。
安装与设置
按照以下步骤构建Docker镜像,配置MCP网关,并将其连接到您的LLM客户端。
步骤1:准备项目目录
- 创建一个新目录(例如。,
nasa-mcp-server) 并将提供的文件(Dockerfile,requirements.txt,nasa_server.py) 在里面。 - 通过终端导航进入该目录:
cd nasa-mcp-server
步骤2:构建Docker镜像
这个(或:那个) Dockerfile 创建一个以非root用户身份运行的安全容器(mcpuser) 并附带必要的 Python 依赖项 (mcp[cli] 并且 httpx)。
- 使用标签构建Docker镜像
nasa-mcp-server:docker build -t nasa-mcp-server .
步骤3:创建自定义目录
你需要向Docker MCP网关告知你的新服务器及其工具 custom.yaml 文件以网关能够理解的格式定义了服务器。
- 找到您本地的 Docker MCP 目录。在大多数系统中,该目录为:
- Windows:
C:\Users\<username>\.docker\mcp\catalogs\ - macOS/Linux:
~/.docker/mcp/catalogs/
- Windows:
- 复制或确保提供(的内容/信息)
custom.yaml文件被放置在这个里面catalogs/目录。如果您已经有了自定义目录,请将其与(新目录)合并nasa加入其中。
步骤4:更新注册表
Docker MCP Registry 跟踪哪些服务器是 已安装 并且可供客户端使用。您必须手动将您的服务器添加到此文件中。
- 找到注册表文件:
- Windows:
C:\Users\<username>\.docker\mcp\registry.yaml - macOS/Linux:
~/.docker/mcp/registry.yaml
- Windows:
- 编辑
registry.yaml文件并确保nasa条目存在于……之下registry:密钥:registry: # ... other servers you may have nasa: # <- Add this entry ref: ""
步骤5:配置LLM客户端(以Claude桌面版为例)
您需要确保您的大型语言模型(LLM)客户端已配置为检查您的自定义工具目录。
-
找到您客户端的配置文件。对于 Claude Desktop(可译为“Claude桌面版”或保持原样,具体取决于上下文是否需要更具体的翻译),这通常是
claude_desktop_config.json在一个隐藏的应用数据文件夹中。 -
验证
mcp-toolkit-gateway命令中包含对您自定义目录文件的引用(custom.yaml):{ "mcpServers": { "mcp-toolkit-gateway": { "command": "docker", "args": [ "run", // ... other arguments ... "--catalog=/mcp/catalogs/docker-mcp.yaml", "--catalog=/mcp/catalogs/custom.yaml", // <- Ensure this is present // ... other arguments ... ] } } }
步骤6:测试并使用服务器
-
重启您的大型语言模型(LLM)客户端 (例如,Claude Desktop)。
-
在聊天界面中,检查“搜索和工具”菜单以确认 “美国宇航局图像和视频库” 工具及其功能(
search_nasa_media,browse_nasa_album等)可供选择。 -
提出一个需要使用该工具的问题,AI应该执行正确的功能:
示例提示:
“使用NASA媒体工具查找最近的火星探测车视频,然后向我展示第一个搜索结果中资源ID对应的文件格式。”
API详情
- 基本URL:
https://images-api.nasa.gov - 认证无需翻译(公共API)
- 安全该服务器设计为仅支持只读操作,并在容器中以非root用户身份运行。