Computes divisional (varga) chart positions from BirthData; pass chart_type for one varga, or omit chart_type for all sixteen.
SECTION: WHAT THIS TOOL COVERS
When chart_type is provided, returns only that one divisional chart.
When chart_type is omitted, returns all sixteen standard classical divisional charts
(D1, D2, D3, D4, D7, D9, D10, D12, D16, D20, D24, D27, D30, D40, D45, D60).
D30 omits Sun and Moon per convention. Does not return Shadbala
(asterwise_get_chart_strength) or radix-only graha drishti (asterwise_get_natal_chart).
SECTION: WORKFLOW
BEFORE: RECOMMENDED — asterwise_get_natal_chart — anchor D1 before reading higher vargas.
AFTER: None.
SECTION: INPUT CONTRACT
chart_type enum is enforced locally (Pydantic). BirthData follows the global contract.
SECTION: OUTPUT CONTRACT
When chart_type is provided:
data — object with a single key (the requested chart, e.g. 'D9'):
planet_name (Sun..Ketu) → { sign (string), sign_num (int), degree (float) }
When chart_type is omitted:
data — object with keys D1, D2, D3, D4, D7, D9, D10, D12, D16, D20, D24, D27,
D30, D40, D45, D60 — each: planet_name → { sign, sign_num, degree }
(D30 excludes Sun and Moon entries.)
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):
— Invalid chart_type enum → MCP INVALID_PARAMS (via Pydantic)
INVALID_PARAMS (upstream):
— None — unknown ayanamsa for a varga surfaces as MCP INTERNAL_ERROR at the tool layer.
INTERNAL_ERROR:
— Any upstream API failure or timeout → MCP INTERNAL_ERROR
SECTION: DO NOT CONFUSE WITH
asterwise_get_natal_chart — radix chart with houses and drishti, not the full varga dictionary.
asterwise_get_chart_strength — embeds vargas inside strength metrics, different primary payload.