天文数据分析服务器

一个基于NASA和NOAA数据的Model Context Protocol服务器,提供实时天文数据分析和占星建议,帮助优化CI/CD流程。

  • by Griboedow
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Griboedow/Retrograde-MCP

使用说明

逆行MCP

因为你的CI/CD管道值得知道水星正在逆行。

A. 模型上下文协议 服务器显示真实的天文数据——来自美国国家航空航天局喷气推进实验室DE421星历表的行星位置和来自美国国家海洋和大气管理局SWPC的地磁活动——这些数据被包裹在你的事件报告中缺失的严格的占星评论中。

没有虚假的行星位置。没有硬编码的逆行日期。每个结果都是根据查询时的实际星历数据计算的。如果火星突然失控,你会知道的。

它做什么

工具 说明
get_planetary_status 水星穿过海王星的运动状态(直接/逆行/静止),包括黄道经度、日速度和域解释
get_lunar_phase 当前月相及照明和部署建议
get_space_weather NOAA SWPC的实时Kp指数;地磁风暴水平
get_cosmic_risk_score 综合风险评分0-100:逆行行星+月相+Kp指数
should_i_do_it 对任何行动(部署、合并PR、强制推送、重写认证……)都没有占星建议
explain_incident 给它一个事件描述;接受严格的占星根本原因分析
get_favorable_window 下一个日历窗口,此时行星和月球状况相对温和
get_daily_briefing 晨间宇宙站:天空中有什么,它对你的管道意味着什么
retrograde_history 过去N年中任何行星的所有逆行期——与您的部署日志叠加

分析方法

行星逆行探测 使用根据美国国家航空航天局喷气推进实验室DE421星历表计算的地心黄道经度(通过自动下载 Skyfield).行星被分类为:

  • 逆行 当它的黄道经度正在下降(速度<0)并且绝对速率超过行星的静止阈值时
  • 文具 当绝对变化率低于每颗行星的阈值(逆行前后的短暂反转期)时,阈值遵循专业星历惯例:水星0.083°/天,金星0.050°/天;火星0.025°/天
  • 直接的 当它的黄道经度增加,绝对速率超过行星的静止阈值时

月相 根据同样来自DE421的黄道坐标系中月球和太阳之间的角间距计算。

空间天气 (Kp指数)从以下位置实时获取 services.swpc.noaa.gov服务器首先尝试1分钟的订阅源,然后回退到3小时的合并产品。

宇宙风险评分 重量:

  • 水星和火星逆行:各+20(关键的基础设施/通信行星)
  • 其他逆行行星:各+10颗
  • 静止行星:每颗+5颗
  • 月相:-10至+20
  • Kp指数:-5至+50

安装

先决条件

  • Python 3.10+
  • 约20 MB磁盘用于JPL星历表文件(首次运行时自动下载)
  • 美国国家海洋和大气管理局实时Kp的互联网接入(如果不可用,则优雅降级)

随着 uv (推荐)

uvx retrograde-mcp

随着 pip

pip install retrograde-mcp
retrograde-mcp

来源

git clone https://github.com/Griboedow/Retrograde-MCP
cd Retrograde-MCP
pip install -e .
retrograde-mcp

Claude桌面配置

添加 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "retrograde": {
      "command": "retrograde-mcp"
    }
  }
}

或与 uvx:

{
  "mcpServers": {
    "retrograde": {
      "command": "uvx",
      "args": ["retrograde-mcp"]
    }
  }
}

星历表缓存位置

JPL DE421文件被缓存到 ~/.retrograde-mcp/ 默认情况下。 用覆盖 RETROGRADE_CACHE_DIR 环境变量:

{
  "mcpServers": {
    "retrograde": {
      "command": "retrograde-mcp",
      "env": {
        "RETROGRADE_CACHE_DIR": "/tmp/retrograde-cache"
      }
    }
  }
}

用法示例

“我现在应该部署吗?”

should_i_do_it get_cosmic_risk_score

宇宙风险评分:🟠 升高(45/100)

阻碍因素:

  • 地磁风暴(G1)正在进行中(Kp=5.7)——整个团队的思维清晰度可能会受到影响

注意事项:

  • 满月🌕 — 最大月球强度,不利于部署

对你有利:水星、火星和金星都是直接和支持的。

建议:暂缓使用 get_favorable_window 找到一个更好的时刻。

“为什么我们的API下降了?”

explain_incident("API gateway returned 504s for 30 minutes starting at 14:00 UTC")

目前,所有行星都是直行的。这一事件代表了纯粹人为错误的胜利,没有受到天体干扰的帮助。

影响因素:

  • 天王星(静止在58.51°)——意外中断、范式转变、零日漏洞的破坏
  • 海王星(静止在1.94°)——要求不明确、范围蠕变、环境混乱
  • 满月(98%光照)——宇宙不稳定性放大
  • Kp指数:5.7--G1地磁暴正在进行中

补救措施:

  1. 用上面记录的行星位置记录事件
  2. 安排在水星顺行期间进行尸检(你很清楚,水星顺行是在3月20日)
  3. 在月圆阶段实施修复,以获得最大的宇宙支持
  4. 使用 retrograde_history 检查类似事件是否与相同的行星配置相关

“我下一次什么时候可以安全发货?”

get_favorable_window · get_cosmic_risk_score

下一个有利的窗口:2026年4月19日至29日——与零逆行行星进行为期11天的宇宙合作。

今日(4月3日)得分🟠 升高(45/100):

  • 天王星和海王星静止(+10)
  • 满月(+20)
  • G1地磁风暴,Kp=5.7(+15)

没有行星逆行,这是好事,但满月和活跃的地磁风暴会增加风险。如果发布已经准备就绪,并且经过了良好的测试,并且有可靠的回滚计划,那么今天是可以生存的。如果你能等,4月19日是宇宙为你完全清理的时候。

“给我上午的简报”

get_daily_briefing

宇宙风险:中等(27/100)

静止:天王星、海王星。直接:水星、金星、火星、木星、土星。 满月——98%的光照。Kp指数:1.7——安静。

小心行事。条件是可行的。优先考虑经过充分测试的版本,而不是实验。保持回滚过程新鲜。

“水星在上个月的停电期间做了什么?”

retrograde_history

2026年2月26日至3月20日,水星逆行,覆盖了上个月的大部分时间。这是水星表观运动逆转的22天,根据星历表数据,这意味着你3月份的停电有一个大规模有效的根本原因。

过去一年的另外两个逆行期是: 2025年7月18日至8月11日(24天) 2025年11月9日至11月29日(19天)

如果您的停机集中在3月初到中旬,那么它们正好落在逆行窗口#3内。将您的事件日志时间戳与2月26日至3月20日进行对照,您可能会发现可疑的重叠。


发展

pip install -e ".[dev]"
pytest

数据源

来源 它提供了什么 URL
美国国家航空航天局喷气推进实验室DE421 行星和月球位置 https://ssd.jpl.nasa.gov/ftp/eph/planets/bsp/de421.bsp
NOAA SWPC 1分钟Kp 近实时Kp指数 https://services.swpc.noaa.gov/json/planetary_k_index_1m.json
NOAA SWPC 3小时Kp 综合Kp指数(回退) https://services.swpc.noaa.gov/products/noaa-planetary-k-index.json

免责声明

行星的位置是根据真实的天文数据计算出来的。水星的黄道速度与部署成功率之间的因果关系尚未经过同行评审。对于因遵循或忽视此建议而导致的中断、倒退或生存危机,作者不承担任何责任。

也就是说:在统计上可疑的事件中,水星一直在逆行。我们只是说说而已。