CelestialMCP
Claude AI 的模型上下文协议 (MCP) 服务器提供用于计算天体位置、升起/落下时间和其他天文数据的工具。
概述
CelestialMCP 基于 mcp-framework 构建,并利用 astronomy-engine 库提供精确的天文计算。它提供了多种工具,用于确定天体位置、计算其升起和落下时间,以及列出恒星和深空天体目录中可用的天体。
特征
天体位置计算:从地球上的指定位置获取任何天体的高度和方位坐标
升起/落下时间计算:查找天体从特定位置升起、过境和落下的时间
详细物体信息:获取有关天体的全面信息,包括:
距离(对于太阳系物体)
相位信息(月球和行星)
即将到来的月相(月亮)
广泛的对象目录:包括:
太阳系天体(太阳、月亮、行星)
来自 HYG 数据库的 5,500 多颗星
NGC 目录中的 14,000 多个深空天体
工具
该软件包包含三个主要工具:
getCelestialPosition :计算天体的高度/方位角坐标
getCelestialDetails :提供有关天体的详细信息
listCelestialObjects :按类别返回可用天体的列表
Related MCP server: NASA MCP Service
快速入门
# Install dependencies
npm install
# Build the project
npm run build
# Start the server
npm start与 Claude Desktop 一起使用
本地开发
将此配置添加到您的 Claude Desktop 配置文件:
Windows : %APPDATA%/Claude/claude_desktop_config.json MacOS : ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"CelestialMCP": {
"command": "node",
"args":["/absolute/path/to/CelestialMCP/dist/index.js"]
}
}
}目录数据
该项目包括一个用于获取天文目录数据的脚本:
# Fetch star and deep sky object catalogs
npm run fetch-catalogs这会将 HYG 星数据库和 NGC 深空天体目录下载到data/目录。
工具使用
以下是使用 Claude 工具的一些示例:
获取对象位置
问克劳德:“从温哥华看,木星现在在天空中的什么位置?”
获取对象详细信息
问克劳德:“今天温哥华的月亮什么时候升起和落下?”
列出可用对象
问克劳德:“给我一份我可以查找的星星列表。”
项目结构
CelestialMCP/
├── src/
│ ├── tools/ # MCP Tools
│ │ ├── CelestialPositionTool.ts
│ │ ├── CelestialDetailsTool.ts
│ │ └── ListCelestialObjectsTool.ts
│ ├── utils/
│ │ └── astronomy.ts # Core astronomy calculations
│ ├── config.ts # Observer configuration
│ └── index.ts # Server entry point
├── scripts/
│ └── fetch-catalogs.js # Script to download star catalogs
├── data/ # Catalog data files
│ ├── hygdata_v41.csv # HYG star database
│ └── ngc.csv # New General Catalogue
├── package.json
└── tsconfig.json默认配置
默认情况下,观察者的位置设置为加拿大温哥华。你可以在src/config.ts中更改此设置:
export const OBSERVER_CONFIG = {
latitude: 49.2827, // Observer latitude
longitude: -123.1207, // Observer longitude
altitude: 30, // Observer altitude in meters
temperature: 15, // Default temperature in Celsius
pressure: 1013.25 // Default pressure in hPa
};执照
麻省理工学院
致谢
用于核心天文计算的天文引擎
mcp-framework用于 MCP 服务器实现
HYG 星体数据数据库
OpenNGC 用于深空天体数据