Advanced techniques
Graha drishti by sign (BPHS ch. 26): full and partial aspects [Parashari]
get_graha_drishti_by_sign
Parashari, not KP. Layers 1 and 2 of graha drishti, Brihat Parashara Hora Shastra ch. 26 (Santhanam; ch. 28 in Sharma), whole sign, houses counted from the lagna's sign and never read off the Placidus chart: the FULL aspects by sign, every planet the 7th, Mars the 4th and 8th, Jupiter the 5th and 9th, Saturn the 3rd and 10th ('sources.fullAspects', classical), and the PARTIAL aspects by sign, a quarter on the 3rd and 10th, a half on the 5th and 9th, three quarters on the 4th and 8th where no full aspect applies ('sources.partialAspects', derived from the degree scale because no sign-level verse is on disk). Returns '{ houseSystem: 'whole-sign', lagnaSign, planets: [{ planet, sign, wholeSignHouse, signAspects: [{ signCount, sign, wholeSignHouse, grade: full | three-quarter | half | quarter, fraction, full }] }], houses: [{ house, sign, lord, fullAspectBy, partialAspectBy: [{ planet, grade }] }], mutualFullAspects: [[planet, planet]], notes, sources }'. A claim at the resolution of signs; the virupas by degree are 'get_sputa_drishti' and can differ. The nodes' own drishti is 'get_node_drishti_spread'. No score; gates no KP verdict. The same blocks 'get_graha_drishti' returns as 'planets', 'houses' and 'mutualFullAspects'.
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_graha_drishti_by_sign",
"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.