Methodology v2
Transit Timing Hierarchy
get_transit_timing_hierarchy
KP transit timing hierarchy: Saturn narrows to ~2.5yr window, Jupiter to the year, Sun to the month, Moon to the day. A transit in the star of a RETROGRADE natal planet is a DELAYED window, never an invalid one (F011): it stays in the hierarchy, and since F063 it carries turnsDirect (when that natal planet next stations direct) and passesStartingPoint (when it re-crosses its turning degree, the horary Sutra 32 release), so the delay has a date. Requires fruitful significators internally. **A window opens only where the transiting planet's star lord AND sub lord are both fruitful significators**, per KP Reader 5 canon p.195: the star lord says what is offered, the sub lord says whether it materialises. Each window also carries 'offeredFrom', the earlier moment the star lord alone became fruitful. That is when the matter came on offer, NOT when to act: canon p.192 says "do not expect the result on the day of entry, you have to wait till the significator comes to the sub". Quote 'start', not 'offeredFrom', when giving a date. Books: KP Reader 5 canon pp.192, 195.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| birth_datetime | string | Yes | Birth date and time in ISO 8601 format (e.g., "1990-05-15T14:30:00"). |
| latitude | number | Yes | Birth location latitude. Range: -90 to 90. |
| longitude | number | Yes | Birth location longitude. Range: -180 to 180. |
| utc_offset_minutes | number | Yes | UTC offset in minutes (e.g., 330 for IST, -300 for EST). |
| ayanamsa | enum: kp | kp_new | lahiri | raman | true_chitra | khullar | No | Ayanamsa system. Defaults to kp. |
| event | event name | No | Life event to find transit timing for. If omitted, the engine derives the most active event from the running MD+AD lord's signification with Ruling Planets tie-break, and returns it in the eventResolution field. Ignored if house_group is provided. |
| start_date | string | No | Start date for transit scan (ISO 8601 datetime with UTC offset, e.g. '2026-04-01T00:00:00+05:30'). Defaults to current moment. |
| house_group | array<house number (1-12)> | No | Override event lookup with explicit house numbers (1-12). When provided, event is ignored. |
Example call
Send the request as a standard MCP tools/call:
POST https://mcp.lumin.guru/mcp
Authorization: Bearer mcp_yourkey...
Accept: application/json, text/event-stream
Content-Type: application/json
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_transit_timing_hierarchy",
"arguments": {
"birth_datetime": "1992-08-14T04:32:00",
"latitude": 6.927,
"longitude": 79.861,
"utc_offset_minutes": 330,
"ayanamsa": "kp"
}
}
}Birth data
This tool requires birth data on every call. The MCP server is stateless, so calling set_birth_profile first validates the data and returns the reading plan, but it does not store anything. Repeat the same five fields here.