Evaluates Saturn's seven-and-a-half-year Moon-sign cycle phases against natal data for the current day and returns intensity, upcoming cycles, and historical rows.
SECTION: WHAT THIS TOOL COVERS
Sade Sati mechanics: natal Moon sign in English, three reference signs (rising/peak/setting), active flag, current phase label, intensity score/label, next occurrence metadata, all_periods[] timeline with nested phase objects, mitigation booleans, classical note. "Today" is implicit — no date parameter. Signs are English, not Sanskrit. It is not general Gochar (asterwise_get_gochar) or dasha overlay (asterwise_get_dasha_transits).
SECTION: WORKFLOW
BEFORE: RECOMMENDED — asterwise_get_natal_chart — confirm Moon sign context.
AFTER: asterwise_get_gochar — broader transit canvas if needed.
SECTION: INPUT CONTRACT
No explicit query date — API pins to current day. BirthData global contract applies.
SECTION: OUTPUT CONTRACT
data.natal_moon_sign (string — English, e.g. 'Libra')
data.natal_moon_sign_index (int — 0–11)
data.sade_sati_signs:
rising (string)
peak (string)
setting (string)
data.is_currently_active (bool)
data.current_phase (string — 'rising', 'peak', 'setting', or null)
data.current_phase_description (string or null)
data.intensity_score (int — 0–10)
data.intensity_label (string — 'low', 'moderate', or 'high')
data.next_sade_sati:
starts (string — YYYY-MM-DD)
phase (string)
years_away (float)
data.all_periods[] — each:
sade_sati_number (int)
overall_start (string — YYYY-MM-DD)
overall_end (string — YYYY-MM-DD)
duration_years (float)
phases:
rising — { name, description, start, end, saturn_sign, intensity }
peak — same shape
setting — same shape
data.mitigated_by_own_sign (bool)
data.mitigated_by_exaltation (bool)
data.classical_note (string)
SECTION: RESPONSE FORMAT
response_format=json serialises the complete response as indented JSON — use this for programmatic parsing, typed clients, and downstream tool chaining. response_format=markdown renders the same data as a human-readable report. Both modes return identical underlying data — no fields are added, removed, or filtered by either mode.
SECTION: COMPUTE CLASS
MEDIUM_COMPUTE
SECTION: ERROR CONTRACT
INVALID_PARAMS (local — caught before upstream call):
None — BirthData Pydantic only.
INVALID_PARAMS (upstream):
— None — upstream rejection surfaces as MCP INTERNAL_ERROR at the tool layer.
INTERNAL_ERROR:
— Any upstream API failure or timeout → MCP INTERNAL_ERROR
Edge cases:
— English sign names throughout — do not expect Sanskrit.
SECTION: DO NOT CONFUSE WITH
asterwise_get_gochar — nine-planet daily scan including sade_sati_active flag but less Sade Sati detail than this tool.
asterwise_get_transits — ingress/station feed, not Moon-focused Saturn phase model.