Advanced techniques
Node drishti spread: five stated readings of Rahu's and Ketu's aspects [Parashari]
get_node_drishti_spread
Parashari, not KP. Whether Rahu and Ketu cast graha drishti is stated five ways (F175, Q043), and this is the spread across them, none picked and none folded into the seven: the 7th only (derived, the 'all planets' rule of BPHS 26.2-5 applied to the nodes), none (modern; BPHS 9.11 gives Rahu a drishti), both nodes 5/7/9 (modern), Rahu full on 5/7/9/12 with half on 2/10 and quarter on 3/6 (later, the Khemraj BPHS 51.26; Uttara Kalamrita 2.18 denies the 12th; Ketu not stated), and Rahu 5/7/9 with Ketu 3/7/10 (the Ketu half unsourced). Returns '{ houseSystem: 'whole-sign', lagnaSign, nodeReadings: [{ reading, label, methodNote, heldBy, source, contradictedBy }], nodes: [{ node, sign, wholeSignHouse, readings: [{ reading, stated, signCounts, signs, wholeSignHouses, partial: [{ signCount, sign, wholeSignHouse, fraction }], source }] }], notes, sources }'. 'heldBy' names which engine tool answers which way, so a node aspect read elsewhere can be traced to its reading. Name the reading whenever you cite a node's aspect. The same blocks 'get_graha_drishti' returns as 'nodeReadings' and 'nodes'.
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. |
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_node_drishti_spread",
"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.