Event timing
Elect a Departure for a Journey
find_travel_departure_time
Elect the moment to begin a journey: the departure itself, not the booking and not the arrival. Elects on houses 3, 9 and 11, quoted from Astrology for Beginners p.786: "the 9th house indicates journey to distant places and the 11 th house shows a successful journey or that it will be pleasant without any mishap." Note the deliberate difference from the promise group. Judging whether foreign travel is promised at all uses 3, 9 and 12. The ELECTION uses 11, not 12, and the two answer different questions. For whether the journey is promised, call 'analyze_natal_promise' or 'get_foreign_settlement'. ASK FOR THE DEPARTURE'S USABLE HOURS AND PASS THEM AS 'preferred_time_of_day'. A train leaves, a flight leaves, a border post opens, and this is the corpus's own habit: KSK elects a Venus sub that "operates between 6.12 and 10.29 a.m." precisely because the train left Madras in the morning. It is the single biggest improvement to this answer. Returns '{ event, granularity, windows[], selection, significatorSet, scanSummary, provenanceSummary, relaxations[], disclaimer, summary }'. Each window carries startLocal, endLocal, durationMinutes, layersSatisfied, verdict, resolvingLayer, matchedConditions[], discriminator and rank. There is no score and no top ten. Election in KP is read-only. It locates a moment this chart already points at and it does not make a journey safe. Report windows in startLocal and endLocal, never in UTC.
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. |
| bosmia_lens | boolean | No | no description |
| scan_start | string | No | First moment to consider, ISO 8601. A bare datetime is read as local time at the place of the action. Defaults to now. |
| scan_days | number | No | Days to scan. Clamped by granularity: 365 for day, 90 for hour, 30 for minute. Default 7. |
| granularity | enum: day | hour | minute | No | Election precision. 'minute' runs the Ascendant layer and gives the narrowest window, 'hour' stops at the Moon sub, 'day' groups by local civil day. Defaults to this event's own default. |
| preferred_time_of_day | object | No | What this window is, for example "office hours" or "before the registrar closes". Echoed back in the response. |
| event_latitude | number | No | Latitude of where the action happens. Defaults to the birth latitude. KP computes the Ascendant for the place of the action, not the place of birth. |
| event_longitude | number | No | Longitude of where the action happens. Defaults to the birth longitude. |
| event_utc_offset_minutes | number | No | UTC offset at the place of the action, in minutes. Defaults to the birth offset. Drives every local time in the response. |
| max_windows | number | No | Override the default output shape and take a pool of up to 25 instead of the one elected moment. Only use this when the user explicitly asks to see the whole field. |
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": "find_travel_departure_time",
"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.