mcp观星
计算地球上任何位置的天体(太阳、月亮、行星、恒星和深空天体)的高度、升起和落下时间,并可选择进行光污染分析。
特征
高度/方位角计算:获取任何天体的海拔和罗盘方向。
上升/下降时间:确定物体何时出现/消失在地平线以上。
光污染分析:加载和分析光污染地图(GeoTIFF 格式)。
支持:
太阳系天体(太阳、月亮、行星)
星星(例如“天狼星”)
深空天体(例如“仙女座”、“猎户座星云”)
时区感知:使用当地时间或 UTC 时间。
Related MCP server: Celestial Position MCP Server
安装
用法
计算高度/方位角
计算上升/设置时间
加载光污染地图
API 参考
celestial_pos(celestial_object, observer_location, time) ( src/celestial.py )
输入:
celestial_object:名称(例如,"sun","andromeda")。observer_location:EarthLocation对象。time:datetime(时区感知)或 AstropyTime。
返回:
(altitude_degrees, azimuth_degrees)。
celestial_rise_set(celestial_object, observer_location, date, horizon=0.0) ( src/celestial.py )
输入:
date:时区感知的datetime。horizon:地平线高度(默认值:0°)。
返回:
(rise_time, set_time)作为 UTCTime对象。
load_map(map_path) ( src/light_pollution.py )
输入:
map_path:GeoTIFF 文件的路径。
返回:光污染分析的元组
(vriis_data, bounds, crs, transform)。
测试
使用以下方式运行测试:
关键测试用例( tests/test_celestial.py )
项目结构
未来工作
增加对彗星/小行星的支持。
优化 SIMBAD 查询以供离线使用。
将光污染数据整合到能见度预测中。
重要更新:
光污染:将
light_pollution.py添加到功能和 API 参考中。依赖项:将
rasterio和geopy添加到安装说明中。项目结构:明确文件角色和测试覆盖率。