关于 eme-mcp
eme-mcp 是面向业余无线电地月地通信的本地 MCP 服务,可计算月球可见时段、链路损耗和基于距离的衰减,无需网络连接。
主要功能
- 01月球可见时段及双方共同窗口
- 02多波段或频率的路径损耗
- 03基于距离的衰减估算
- 04低衰减日期日历
- 05本地计算月球位置
适用场景
- 01按网格定位规划通信时段
- 02查找双方都能看到月球的时间
- 03估算指定频率的 EME 链路损耗
- 04按距离衰减筛选未来日期
MCP 相关
向 MCP 客户端提供月球窗口、路径损耗、衰减、日历和版本查询工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 1 天前
此工具无需参数。
详细介绍
eme-mcp
用于 EME(Earth-Moon-Earth,月面反射通信)的 MCP 服务。月亮从你的网格坐标看何时升起、计划两端何时能同时看到月亮、2m、70cm 和 23cm 频段的路径损耗,以及未来哪些日期的衰减最小。
这是 qso-graph 项目的一部分。无需网络,无需身份验证。
为什么它不需要访问网络
月亮的位置在本地计算,依据的是 Meeus 在 Astronomical Algorithms 第 47 章中列出的精简版 ELP-2000/82 系列。这只需约 250 行标准库代码和一个系数表。WSJT-X 也是这样做的,这也是 EME 软件的常规做法。
这样做不只是为了简洁。每个网格方格的月出和月落时间都不同,因此,依赖服务的回答意味着每个位置、每次查询都要发送请求——而规划工具可能会因远程服务而卡住、受到速率限制或无法使用。
JPL Horizons 仍在使用——作为测试基准。 已记录的 Horizons 响应作为测试样例,因此每次 CI 运行都会将这些数值与 NASA 的数据对比,而不是与自身对比。以 Boise 网格为例,与 Horizons 相比:
| 一致程度 | |
|---|---|
| 方位角 | 误差在 0.01° 以内 |
| 仰角 | 误差在 0.003° 以内 |
| 距离 | 与约 392,000 相差 9 km(0.002%) |
误差仅 30 角秒,而 432 MHz 天线阵列的波束宽达数度。
安装
uvx eme-mcp # run it; nothing to install
工具
| 工具 | 描述 |
|---|---|
eme_moon_window | 随时间变化的月亮相对于某网格方格的方位角、仰角和距离;若提供第二个定位器,还会返回两座电台都能看到月亮的共同时间窗口 |
eme_path_loss | 2m / 70cm / 23cm 频段或任意频率下的单程、往返和回波路径损耗 |
eme_degradation | 当前时刻相比近地点的衰减程度,以及月球赤纬 |
eme_calendar | 未来衰减最小的日期 |
get_version_info | 服务版本和所用的星历系列 |
目前尚不支持的功能
尚未包含天空噪声。 EME 操作者用于规划的完整衰减值,需将距离因素与月亮背后的银河背景噪声结合起来,后者取自 Haslam 408 MHz 全天空图。该图目前尚未随项目提供并固定版本,因此 eme_degradation 和 eme_calendar 会在每个回答中明确说明,它们返回的是距离因素,而不会给出一个看似完整、实际并不完整的数值。相关问题见 qso-graph-devel#52。
仰角为几何值:未考虑大气折射;折射会使接近地平线的天体升高约半度。
两种路径损耗数值
它们回答的是不同问题,而且常被混淆,因此会同时返回:
echo_db是用于电台预算的数值——基于雷达方程,并计入月亮反射到达它的信号中约 6.5% 的因素。在平均距离下,2m 频段约为 252 dB,70cm 频段约为 262 dB,23cm 频段约为 271 dB;这些都是 EME 操作者熟悉的数值。round_trip_db是自由空间损耗的两倍,完全不考虑月亮。
许可证
GPL-3.0-or-later。详见 LICENSE。
算法源自 Jean Meeus 的 Astronomical Algorithms(第 2 版,Willmann-Bell,1998 年)第 7、11、12、22、40 和 47 章——各算法的使用位置均在源代码中注明。实现由我们编写;数学方法属于他人,本项目不主张拥有。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。