Retrograde MCP
Provides real planetary positions and lunar phases computed from NASA JPL DE421 ephemeris, enabling astrological analysis and cosmic risk scoring.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Retrograde MCPshould I deploy to production today?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Retrograde MCP
Because your CI/CD pipeline deserves to know that Mercury is in retrograde.
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 |
| Motion status (direct / retrograde / stationary) for Mercury through Neptune, with ecliptic longitude, daily speed, and domain interpretation |
| Current Moon phase with illumination and deployment recommendations |
| Real-time Kp-index from NOAA SWPC; geomagnetic storm level |
| Composite risk score 0–100: retrograde planets + lunar phase + Kp-index |
| Yes/no astrological recommendation for any action (deploy, merge PR, force push, rewrite auth...) |
| Give it an incident description; receive a rigorous astrological root-cause analysis |
| Next calendar window when planetary and lunar conditions are relatively benign |
| Morning cosmic standup: what's in the sky and what it means for your pipeline |
| 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-mcpWith pip
pip install retrograde-mcp
retrograde-mcpFrom source
git clone https://github.com/Griboedow/Retrograde-MCP
cd Retrograde-MCP
pip install -e .
retrograde-mcpClaude 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_itget_cosmic_risk_scoreCosmic 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_windowto 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:
Document the incident with planetary positions recorded above
Schedule the post-mortem during a Mercury-direct period (you're clear — Mercury went direct on March 20)
Implement fixes during a waxing Moon phase for maximum cosmic support
Use
retrograde_historyto check if similar incidents correlate with the same planetary configurations
"When can I safely ship next?"
get_favorable_window·get_cosmic_risk_scoreNext 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_briefingCosmic 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_historyMercury 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]"
pytestData sources
Source | What it provides | URL |
NASA JPL DE421 | Planetary and lunar positions | |
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 toolsexplain_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.
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses key behaviors: references current planetary positions, constructs a causally coherent cosmic narrative, and maintains a professionally grave tone. It does not mention whether the tool is read-only or has side effects, but given the nature (analysis), this is reasonable. A 4 reflects good disclosure for an analysis tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is succinct with three sentences and an Args section. The first sentence immediately states the purpose. Every part contributes value: purpose, planetary references, tone, and parameter doc. No redundant or unnecessary text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (1 required param, no nested objects) and the presence of an output schema, the description covers all essential aspects: purpose, parameter meaning, and behavioral traits. It does not need to explain return values because an output schema exists. The description is fully complete for the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description includes a docstring for the 'description' parameter: 'A description of the incident, outage, or anomaly.' This adds meaning beyond the input schema, which only provides type and title. With schema description coverage at 0%, the description effectively compensates by clarifying parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action: 'Receive an incident or outage description and return a rigorous astrological root-cause analysis.' It specifies the verb (receive/return), resource (incident/outage description), and output (astrological analysis). This differentiates it from sibling tools like get_cosmic_risk_score or get_daily_briefing, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this tool versus its siblings. It implies use for incident descriptions but offers no exclusions, prerequisites, or comparisons to the 8 sibling tools. This lack of usage context reduces its helpfulness for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries full burden. It discloses score components, data sources, and parameter behavior but does not mention side effects, permissions, rate limits, or error handling for missing data. The phrase 'when NOAA data is available' hints at conditional behavior but without stating fallback.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the purpose, uses bullet points for readability, and every sentence adds value. It provides a clear structure without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description explains the score components and data sources thoroughly. However, it does not summarize the output format (even though an output schema exists) and omits potential error conditions for unavailable data. Despite this, it is largely complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% coverage for the date parameter, but the description explains its ISO 8601 format, optionality, and default behavior, adding significant meaning beyond the schema's minimal definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool computes a composite cosmic risk score from 0 to 100, lists the components and data sources, and distinguishes it from sibling tools that focus on individual factors or actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for obtaining a risk score, but it does not explicitly state when to use this tool versus alternatives like get_lunar_phase or get_planetary_status. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden for behavioral disclosure. It mentions data sources but does not disclose any behavioral traits such as rate limits, authentication requirements, or side effects. This is insufficient for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with three sentences, each adding value. It is front-loaded with the tool's purpose and efficient in conveying essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and the existence of an output schema, the description adequately covers the tool's functionality and data sources. It is complete for a no-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so the baseline score of 4 applies. The description does not need to add parameter meaning since there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a 'morning cosmic standup' summarizing astrological conditions for software teams, listing covered aspects (planetary status, lunar phase, space weather, risk score, recommendation). It distinguishes itself from sibling tools that provide individual components.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context (morning, for software teams) implying when to use it, but does not explicitly state when not to use it or mention alternatives. It gives clear usage context without exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| max_retrograde_planets | No | ||
| start_date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of transparency. It discloses that the tool uses real JPL ephemeris data, searches a 90-day range, and defines favorable conditions. It does not mention what happens if no window is found, but overall it provides good behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and concise: a headline sentence, bullet-point criteria, followed by details on search range and data source, then parameter documentation. Every sentence adds value, and key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with an output schema (not shown) and 2 parameters, the description covers all essential aspects: purpose, criteria, search range, data source, and parameter details. It is complete enough for an agent to understand when and how to invoke the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must add meaning. It clearly explains each parameter: max_retrograde_planets (maximum tolerated, default 1) and start_date (optional, ISO 8601 format, defaults to now). This adds significant value beyond the schema's type and default values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Find the next calendar window where cosmic conditions are relatively favorable for deployments and major technical decisions.' This verb+resource combination is specific and distinguishes it from sibling tools like get_cosmic_risk_score or get_daily_briefing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains when to use the tool (for deployments and major technical decisions) and details the qualifying criteria (max retrograde planets, moon phase). However, it lacks explicit exclusions or comparisons to alternatives, such as when to prefer get_cosmic_risk_score instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses data source (NASA JPL DE421 via Skyfield), default behavior (current date if not specified), and the type of output (illumination percentage and interpretation). This is good transparency for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (7 short sentences) with a clear structure: purpose, phase interpretations in bullet format, data source, and parameter documentation. Every sentence adds value, no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (not shown), the description appropriately focuses on inputs and purpose. It covers parameter, data source, and phase meanings, but could add brief mention of error handling or return format expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides no description for the date parameter (0% coverage), but the description compensates by specifying it is optional, ISO 8601 format, and defaults to current date/time. This adds necessary meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it returns 'lunar phase with illumination percentage and a software development interpretation', with specific phase meanings. This clearly distinguishes it from sibling tools like get_planetary_status or get_cosmic_risk_score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides contextual usage guidance through phase interpretations (e.g., 'New Moon → poor time for deployments'), implying when to use. However, it lacks explicit when-not-to-use or direct comparison with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses data source (JPL DE421 ephemeris), output content (longitude, speed, domains, interpretation), and optional date format. It is transparent about what each entry includes, though the mention of 'domains of responsibility in software development' may be confusing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear opening sentence, details, and data source attribution. It is slightly verbose but each sentence adds value; could be slightly more concise without losing clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description appropriately explains what each planet entry includes (longitude, speed, etc.). It covers parameter semantics, data source, and scope, making it complete for selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'date' is fully described: ISO 8601 format, optional, defaults to current date if not specified. Although schema description coverage is 0%, the description compensates completely.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns motion status of all tracked planets (Mercury through Neptune) with details like ecliptic longitude and speed. It distinguishes from sibling tools like 'retrograde_history' or 'get_lunar_phase' by focusing on planetary status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the optional date parameter and default behavior but does not explicitly state when to use this tool versus similar siblings. Usage context is implied through the tool's focus on planetary motion, but no when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only states data source. It does not disclose behavioral traits such as read-only nature, latency, rate limits, or error handling, leaving significant unknowns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise at two sentences plus a list, with the purpose stated first. Every sentence adds value, including the Kp-index scale and data source, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple no-param tool that returns the Kp-index, the description is reasonably complete: it explains what the tool returns and its interpretation. The presence of an output schema likely covers return format. Minor lack of tie-in to sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, and schema description coverage is 100% trivially. The baseline is 4 for zero parameters, and the description adds no extra param info, which is acceptable.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches the current planetary Kp-index from NOAA SWPC, a specific verb-resource combination. It distinguishes from sibling tools like get_lunar_phase by focusing on geomagnetic activity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool vs alternatives. The description explains Kp-index levels but does not mention situations favoring this tool over siblings like get_daily_briefing or get_cosmic_risk_score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| planet | No | mercury | |
| years | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It mentions the use of 'NASA JPL DE421 ephemeris' and that the maximum years is 10, which adds validity. However, it does not discuss error handling, performance, or what happens when no records are found.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with purpose, and structured with an Args section. Every sentence contributes value: purpose, use case, and parameter details. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that an output schema exists, the description does not need to explain return values. Parameters are thoroughly described, and behavioral info like ephemeris source is provided. Minor gaps exist (e.g., no mention of error responses), but overall completeness is high for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description fully compensates by detailing each parameter. For 'planet,' it lists accepted values and default. For 'years,' it explains the meaning, default, and maximum. This adds significant meaning beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Return all retrograde periods for a given planet over the last N years.' This specifies the verb (return), resource (retrograde periods), and scope (last N years). It distinguishes from siblings like 'get_favorable_window' and 'get_planetary_status' by focusing on historical periods.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description suggests using the tool for 'overlaying against your deployment history to discover correlations,' providing a clear use case. However, it does not explicitly state when not to use it or mention alternatives among siblings, leaving the decision partially implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | ||
| date | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description explains the recommendation is based on planetary motion, lunar phase, and Kp-index, with data sources from NASA and NOAA. It mentions optional date with default. However, it does not disclose the output format or any potential limitations, though annotations are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a clear first sentence stating purpose, followed by examples, data sources, and parameter details. Each part earns its place without unnecessary verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and that an output schema exists, the description covers input parameters and methodology adequately. It lacks mention of any prerequisites or domain limitations, but overall is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has no descriptions (0% coverage), but the description compensates fully: for 'action', it says 'Be specific' with examples; for 'date', it specifies ISO 8601 format and default behavior. This adds significant meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides a yes/no astrological recommendation for a specific action, using specific verbs and resource. Examples and data source details distinguish it from sibling tools like get_cosmic_risk_score or get_favorable_window.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides examples of actions but offers no explicit guidance on when to use this tool versus sibling tools like get_favorable_window or get_cosmic_risk_score. There is no mention of when not to use it or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
9 tool updates
v0.1.0- First observed
explain_incident - First observed
get_cosmic_risk_score - First observed
get_daily_briefing - First observed
get_favorable_window - First observed
get_lunar_phase - First observed
get_planetary_status - First observed
get_space_weather - First observed
retrograde_history - First observed
should_i_do_it
TDQS
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.
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.
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.
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
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Real-time planetary signal engine and Model Context Protocol (MCP) server for autonomous AI agents.
Professional Vedic astrology tools for AI agents via MCP.
MCP server for aerospace calculations: orbital mechanics, ephemeris, DSN operations, ...
Real astrology for AI agents: cosmic weather, synastry, timing, astrocartography, and divination.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA 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).4706MIT
- AlicenseNot gradedqualityCmaintenanceA 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%4AGPL 3.0
- AlicenseAqualityAmaintenanceAstrology 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.12721MIT
- AlicenseAqualityBmaintenanceAn 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.1968PolyForm Noncommercial 1.0.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Griboedow/Retrograde-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server