Skip to main content
Glama
Retrograde MCP

Retrograde MCP

by Griboedow

Retrograde MCP

Because your CI/CD pipeline deserves to know that Mercury is in retrograde.

Python ≥ 3.10 MCP Data: NASA JPL Data: NOAA SWPC

A Model Context Protocol server that surfaces real astronomical data — planetary positions from the NASA JPL DE421 ephemeris and geomagnetic activity from NOAA SWPC — wrapped in the kind of rigorous astrological commentary your incident reports have been missing.

No fake planetary positions. No hardcoded retrograde dates. Every result is computed from actual ephemeris data at query time. If Mars suddenly goes rogue out of schedule, you WILL know.

What it does

Tool

Description

get_planetary_status

Motion status (direct / retrograde / stationary) for Mercury through Neptune, with ecliptic longitude, daily speed, and domain interpretation

get_lunar_phase

Current Moon phase with illumination and deployment recommendations

get_space_weather

Real-time Kp-index from NOAA SWPC; geomagnetic storm level

get_cosmic_risk_score

Composite risk score 0–100: retrograde planets + lunar phase + Kp-index

should_i_do_it

Yes/no astrological recommendation for any action (deploy, merge PR, force push, rewrite auth...)

explain_incident

Give it an incident description; receive a rigorous astrological root-cause analysis

get_favorable_window

Next calendar window when planetary and lunar conditions are relatively benign

get_daily_briefing

Morning cosmic standup: what's in the sky and what it means for your pipeline

retrograde_history

All retrograde periods for any planet over the last N years — overlay against your deploy log

Analysis methodology

Planetary retrograde detection uses geocentric ecliptic longitude computed from the NASA JPL DE421 ephemeris (downloaded automatically via Skyfield). A planet is classified as:

  • Retrograde when its ecliptic longitude is decreasing (speed < 0) and the absolute rate exceeds the planet's stationary threshold

  • Stationary when the absolute rate of change falls below a per-planet threshold (the brief reversal period before/after retrograde) — thresholds follow professional-ephemeris convention: Mercury 0.083°/day, Venus 0.050°/day, Mars 0.025°/day, Jupiter/Saturn 0.017°/day, Uranus 0.006°/day, Neptune 0.003°/day

  • Direct when its ecliptic longitude is increasing and the absolute rate exceeds the planet's stationary threshold

Lunar phase is computed from the angular separation between the Moon and the Sun in ecliptic coordinates, also from DE421.

Space weather (Kp-index) is fetched in real time from services.swpc.noaa.gov. The server tries the 1-minute feed first, falls back to the 3-hour consolidated product.

Cosmic risk score weights:

  • Mercury and Mars retrograde: +20 each (critical infra/communication planets)

  • Other retrograde planets: +10 each

  • Stationary planets: +5 each

  • Lunar phase: −10 to +20

  • Kp-index: −5 to +50


Related MCP server: Precision astronomical ephemeris and planetary positions via the Swiss Ephemeris.

Installation

Prerequisites

  • Python 3.10+

  • ~20 MB disk for the JPL ephemeris file (downloaded automatically on first run)

  • Internet access for NOAA real-time Kp (gracefully degraded if unavailable)

With uv (recommended)

uvx retrograde-mcp

With pip

pip install retrograde-mcp
retrograde-mcp

From source

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

Claude Desktop configuration

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

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

Or with uvx:

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

Ephemeris cache location

The JPL DE421 file is cached to ~/.retrograde-mcp/ by default. Override with the RETROGRADE_CACHE_DIR environment variable:

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

Usage examples

"Should I deploy right now?"

should_i_do_it get_cosmic_risk_score

Cosmic Risk Score: 🟠 ELEVATED (45/100)

Blocking factors:

  • Geomagnetic storm (G1) in progress (Kp=5.7) — mental clarity across the team may be compromised

Caution factors:

  • Full Moon 🌕 — maximum lunar intensity, not favorable for deployments

In your favor: Mercury, Mars, and Venus are all direct and supportive.

Recommendation: Hold off. Use get_favorable_window to find a better moment.

"Why did our API go down?"

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

All planets are currently direct. The incident represents a triumph of purely human error, unassisted by celestial interference.

Contributing factors:

  • Uranus (stationary at 58.51°) — disruption of unexpected outages, paradigm shifts, zero-day exploits

  • Neptune (stationary at 1.94°) — unclear requirements, scope creep, ambient confusion

  • Full Moon (98% illumination) — amplified cosmic instability

  • Kp-index: 5.7 — G1 geomagnetic storm in progress

Remediation:

  1. Document the incident with planetary positions recorded above

  2. Schedule the post-mortem during a Mercury-direct period (you're clear — Mercury went direct on March 20)

  3. Implement fixes during a waxing Moon phase for maximum cosmic support

  4. Use retrograde_history to check if similar incidents correlate with the same planetary configurations

"When can I safely ship next?"

get_favorable_window · get_cosmic_risk_score

Next favorable window: April 19–29, 2026 — 11 days of cosmic cooperation with zero retrograde planets.

Today (April 3) scores 🟠 ELEVATED (45/100):

  • Uranus & Neptune stationary (+10)

  • Full Moon (+20)

  • G1 geomagnetic storm, Kp=5.7 (+15)

No planets are retrograde, which is good — but the Full Moon and active geomagnetic storm push the risk up. If the release is ready and well-tested with solid rollback plans, today is survivable. If you can wait, April 19 is when the cosmos fully clear out for you.

"Give me the morning briefing"

get_daily_briefing

Cosmic Risk: MODERATE (27/100)

Stationary: Uranus, Neptune. Direct: Mercury, Venus, Mars, Jupiter, Saturn. Full Moon — 98% illumination. Kp-index: 1.7 — Quiet.

Proceed mindfully. Conditions are workable. Prioritize well-tested releases over experiments. Keep rollback procedures fresh.

"What was Mercury doing during our outages last months?"

retrograde_history

Mercury was retrograde from February 26 to March 20, 2026 — covering most of last month. That's 22 days where Mercury's apparent motion was reversed, which, according to the ephemeris data, means your March outages had a cosmically valid root cause.

The two other retrograde periods in the past year were: Jul 18 – Aug 11, 2025 (24 days) Nov 9 – Nov 29, 2025 (19 days)

If your outages clustered in early-to-mid March, they fell squarely within retrograde window #3. Cross-reference your incident log timestamps against Feb 26 – Mar 20 and you may find a suspicious overlap.


Development

pip install -e ".[dev]"
pytest

Data sources

Source

What it provides

URL

NASA JPL DE421

Planetary and lunar positions

https://ssd.jpl.nasa.gov/ftp/eph/planets/bsp/de421.bsp

NOAA SWPC 1-min Kp

Near-real-time Kp-index

https://services.swpc.noaa.gov/json/planetary_k_index_1m.json

NOAA SWPC 3-hour Kp

Consolidated Kp-index (fallback)

https://services.swpc.noaa.gov/products/noaa-planetary-k-index.json


Disclaimer

Planetary positions are computed from real astronomical data. The causal relationship between Mercury's ecliptic velocity and your deployment success rate has not been peer-reviewed. The author accepts no liability for outages, regressions, or existential crises arising from following or ignoring this advice.

That said: Mercury has been retrograde during a statistically suspicious number of incidents. We're just saying.

Available Tools

9 tools
explain_incidentA

Receive an incident or outage description and return a rigorous astrological root-cause analysis.

The explanation references the actual current planetary positions and motion to construct a causally coherent cosmic narrative. The tone is professionally grave.

Args: description: A description of the incident, outage, or anomaly.

Inputs: description (required). Returns: result

get_cosmic_risk_scoreA

Compute a composite cosmic risk score from 0 (blissful ignorance) to 100 (do not touch the keyboard).

Score components:

  • Retrograde planets: +10 per planet (Mercury/Mars weighted higher)

  • Stationary planets: +5 per planet

  • Lunar phase modifier: −10 to +20

  • Kp-index modifier: −5 to +50 (when NOAA data is available for the date)

Data sources: NASA JPL DE421 ephemeris + NOAA SWPC Kp-index.

Args: date: Optional date to evaluate (ISO 8601 format, e.g. "2026-03-10"). If not specified, uses the current date/time.

Inputs: date. Returns: result

get_daily_briefingA

Generate a morning cosmic standup: a concise summary of today's astrological conditions for software teams.

Covers planetary status, lunar phase, space weather, overall risk score, and a single actionable recommendation for the day.

Data sources: NASA JPL DE421 ephemeris + NOAA SWPC Kp-index.

Inputs: no named parameters. Returns: result

get_favorable_windowA

Find the next calendar window where cosmic conditions are relatively favorable for deployments and major technical decisions.

A window qualifies when:

  • At most max_retrograde_planets planets are retrograde

  • The Moon is in a waxing crescent, first quarter, or waxing gibbous phase

The search covers 90 days from the start date. Calculations use real JPL ephemeris data.

Data source: NASA JPL DE421 ephemeris via Skyfield.

Args: max_retrograde_planets: Maximum number of retrograde planets to tolerate in the window. Default is 1. start_date: Optional start date for the search (ISO 8601 format, e.g. "2026-08-01"). If not specified, searches from now.

Inputs: max_retrograde_planets, start_date. Returns: result

get_lunar_phaseA

Return the lunar phase with illumination percentage and a software development interpretation.

New Moon → poor time for deployments. Full Moon → expect irrational user behavior. Waxing phases → good for shipping. Waning phases → good for cleanup and review.

Data source: NASA JPL DE421 ephemeris via Skyfield.

Args: date: Optional date to evaluate (ISO 8601 format, e.g. "2026-03-10"). If not specified, uses the current date/time.

Inputs: date. Returns: result

get_planetary_statusA

Return the motion status (direct, retrograde, or stationary) of all tracked planets — Mercury through Neptune — based on real JPL ephemeris data.

Each planet entry includes its ecliptic longitude, daily speed, domains of responsibility in software development, and an interpretation of its current motion.

Data source: NASA JPL DE421 ephemeris via Skyfield.

Args: date: Optional date to evaluate (ISO 8601 format, e.g. "2026-03-10"). If not specified, uses the current date/time.

Inputs: date. Returns: result

get_space_weatherA

Fetch the current planetary Kp-index (geomagnetic activity) from NOAA SWPC.

The Kp-index measures disturbances in Earth's magnetic field: 0–1 → Quiet. Excellent conditions for deep focus work. 2–3 → Unsettled. Minor disruption to attention spans. 4 → Active. Standups run long. 5–6 → G1–G2 Storm. Freeze deployments. 7–9 → G3–G5 Severe/Extreme. All bets off.

Data source: NOAA Space Weather Prediction Center (services.swpc.noaa.gov).

Inputs: no named parameters. Returns: result

retrograde_historyA

Return all retrograde periods for a given planet over the last N years.

Useful for overlaying against your deployment history to 'discover' correlations. The search uses the NASA JPL DE421 ephemeris.

Args: planet: Planet name, one of: mercury, venus, mars, jupiter, saturn, uranus, neptune. Default is 'mercury'. years: Number of years to look back. Default is 3. Max is 10.

Inputs: planet, years. Returns: result

should_i_do_itA

Get a yes/no astrological recommendation for a specific action.

Examples of action: "deploy", "merge PR", "force push", "database migration", "rewrite the auth service", "hire a contractor", "send the email".

The recommendation is based on the motion status of the planets that govern the relevant domain, combined with the current lunar phase and Kp-index.

Data sources: NASA JPL DE421 ephemeris + NOAA SWPC Kp-index.

Args: action: The action you are considering. Be specific. date: Optional date to evaluate (ISO 8601 format, e.g. "2026-03-10"). If not specified, uses the current date/time.

Inputs: action (required), date. Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.1/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool targets a distinct astrological function: incident explanation, risk score, briefing, window finding, lunar phase, planetary status, space weather, historical retrograde periods, and action recommendation. No two tools overlap in purpose.

    Naming Consistency4/5

    Most tools follow a 'verb_noun' pattern (e.g., get_planetary_status), but 'retrograde_history' reverses the order and 'should_i_do_it' uses a full phrase. This slight inconsistency is minor and does not hinder understanding.

    Tool Count5/5

    With 9 tools, the server covers the core functionalities for an astrological software advisory service without being bloated or sparse. Each tool serves a clear role.

    Completeness4/5

    The set covers risk assessment, daily briefings, favorable windows, lunar phases, planetary status, space weather, historical retrograde periods, and action recommendations. Missing perhaps a detailed full report tool, but the existing set is largely complete for the stated purpose.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      A Model Context Protocol server that provides daily horoscope readings and fortune telling for all 12 zodiac signs across multiple time ranges (today, tomorrow, week, month).
      727 npm
      6
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      A self-contained MCP server that gives AI agents the ability to calculate high-precision astronomical data. It provides tropical zodiac coordinates, planetary speeds, retrograde detection, and house cusps using the trusted Swiss Ephemeris engine. 100%
      4
      AGPL 3.0
    • A
      license
      A
      quality
      C
      maintenance
      Astrology MCP server that computes natal charts, transits, synastry, progressions, returns, eclipses, retrogrades, and moon phases from a real ephemeris, enabling AI agents to provide accurate astrological calculations without hallucination.
      12
      75 npm
      1
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that provides computed planetary positions using the Swiss Ephemeris engine, validated against JPL Horizons to under one arcsecond. It enables AI assistants to answer astrology and astronomy questions with real, never-guessed data.
      19
      75 npm
      PolyForm Noncommercial 1.0.0