Skip to main content

KP Chart

asterwise_get_kp_chart

Builds a KP natal chart with sub-lords on grahas and twelve cusps from BirthData using the KP ayanamsa in the response.

Parameters​

ParameterTypeRequiredDescription
birthobjectyesBirth data for tools that need the exact birth time (no sunrise fallback). Required fields: date, time, lat, lon. Optional fields: person_name, timezone, ayanamsa.
response_formatenum: markdown, jsonnoOutput format: 'markdown' (default) for a readable report, or 'json' for the raw structured payload.

What it covers​

Krishnamurti Paddhati charting: lagna row, planet rows with nakshatra_index and sub_lord, house_cusps with matching lords. BirthData.ayanamsa is ignored: the server always uses the KP (Krishnamurti) ayanamsa. house is the KP cusp-to-cusp house (sidereal Placidus cusps; a planet exactly on a cusp starts that house); rasi_house is the whole-sign house. Charts inside the polar circles (no Placidus cusps) are refused with a validation error. Accurate birth time matters; midnight placeholder yields unreliable sub-lords for event timing. Not radix (asterwise_get_natal_chart) nor prashna (asterwise_get_prashna_chart).

Workflow​

BEFORE: RECOMMENDED — cross-check birth record before trusting sub-lords.
AFTER: asterwise_get_kp_significators — house-level significator chains.

Input​

ayanamsa is accepted but ignored (always KP). Birth time is required: this tool has no sunrise fallback. If the user doesn't know it, say so rather than guessing; never pass time='00:00' for unknown.

Output contract​

data.ayanamsa (string — 'kp')
data.house_basis (string — 'placidus_cusp_to_cusp')
data.lagna:
rashi (string)
rashi_index (int)
longitude (float)
nakshatra_lord (string)
sub_lord (string)
data.planets{} — Sun..Ketu:
longitude (float)
rashi_index (int)
rashi (string)
degree (float)
is_retrograde (bool)
house (int — KP cusp-to-cusp house)
rasi_house (int — whole-sign house from the lagna sign)
nakshatra_index (int — 0–26)
nakshatra_lord (string)
sub_lord (string)
data.house_cusps{} — keys '1'..'12':
longitude (float)
rashi_index (int)
rashi (string)
nakshatra_lord (string)
sub_lord (string)

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.

Compute class​

MEDIUM_COMPUTE

Errors​

INVALID_PARAMS (local — caught before upstream call):
None — BirthData Pydantic only.

INVALID_PARAMS (upstream):
— Birth inside the polar circles, where Placidus cusps do not exist → 422 validation_error, surfaces as MCP INTERNAL_ERROR with the API message.

INTERNAL_ERROR:
— Any upstream API failure or timeout → MCP INTERNAL_ERROR

Edge cases:
— Sub-lord chains degrade when true birth time unknown.
— Inside the polar circles (beyond ~66.5°) Placidus cusps do not exist and the API returns 422 validation_error with details[].issue = no_quadrant_houses_at_this_latitude and input_format_ok = true. This is not an input error: tell the user KP cannot be cast for that place and time; do not ask them to correct their details.

Do not confuse with​

asterwise_get_natal_chart — classical bundle without KP sub-lords.
asterwise_get_kp_ruling_planets — rulers at the moment of judgment (now or a given time), not natal cusps.

Connect​

Remote MCP endpoint: https://mcp.asterwise.com/mcp. Authenticate with Authorization: Bearer <API key> or OAuth. See the MCP setup guide.