Skip to content
docs
UseBuildChangelog
Open Lumin
All tools

Advanced techniques

Sudarshana Chakra (BPHS ch. 74): one chart read from lagna, Moon and Sun

get_sudarshana_chakra

Parashari, not KP. The Sudarshana Chakra of Brihat Parashara Hora Shastra ch. 74 (Santhanam; ch. 76 in Sharma): three rings of twelve whole-sign bhavas counted from the lagna, from the Moon's sign and from the Sun's sign (vv. 4-6), each bhava judged by the majority of benefic over malefic influences among its occupants and the planets aspecting it by graha drishti, with the lord counting for advancement (vv. 10-14), the Sun taken benefic in a ring's first bhava and malefic elsewhere and an exalted malefic exempted (v. 9). The composite reports, bhava by bhava, whether the three rings AGREE, as a word and never as a score. THE GATE IS APPLIED: vv. 19-20 say the chakra is to be used only when the Sun, the Moon and the lagna are in three different signs, otherwise 'the judgment of effects should be made from the Rasi Kundali only'; 'applicable' and its reason are returned and the rings are still shown. Also returns the Sudarshana dasha of vv. 21-26 (each bhava a year in turn from the first, twelve repeating, and a month within the year) for 'at', defaulting to now, with the assessment lists the verses give for the year-lagna; get_sudarshana_dasha carries the same block, from the same function, laid out as the years of the current round and the months of the current year. v. 13 sends an equal count to strength: every ring bhava that is 'mixed' by count carries 'tieBrokenBy', the advancing side (benefics plus the lord) against the harming side on the BPHS ch. 27 Shadbala in virupas (never the 0-100 index), under TWO readings of 'stronger', both returned and neither picked: raw total virupas, and each planet's total over its own 27.32-33 requirement. 'verdict', 'verdicts' and 'concordant' stay the count reading; 'tieBroken' and 'concordantBhavasTieBroken' give the composite under each reading, and 'tieBreak' counts how many ties each resolved, so a caller sees whether breaking ties moved the agreement. A tie with Rahu or Ketu in it stays mixed, since the nodes have no Shadbala. vv. 15-16 (a benefic in a majority of inauspicious vargas acts as a malefic, a malefic in a majority of auspicious ones as a benefic) are computed in TWO readings, both returned, neither picked: 'shadvarga', the six vargas the printed line names, and 'saptavarga', the seven the commentaries' worked examples count. 'vargaModulation' gives each planet's varga placements with their grounds (own sign, exaltation, a benefic's sign; an enemy's, a malefic's, debilitation), its tally and majority per reading, and per reading the composite re-counted with those natures and the ring bhavas whose verdict moved; how a varga on grounds of both sides is counted is the engine's stated reading ('classingSource', derived), and the nodes are not modulated. vv. 27-28 are QUOTED, not computed ('ashtakavargaCrossCheck'): the chakra's reading and the Ashtakavarga's, in full when they agree, by strength when they differ; how a year's Ashtakavarga reading is taken is stated in no edition. The dasha's months start at each year's own bhava (v. 23, F176 fixed), with the old count from the 1st beside as a labelled legacy field. This is the closest thing Parashari has to a convergence procedure and is the candidate for the panel's Parashari column. Edition stated. Gates no KP verdict. Two blocks are also tools of their own, named in 'methodSeams': 'get_sudarshana_varga_modulation' ('vargaModulation', vv. 15-16) and 'get_sudarshana_dasha' ('dasha', vv. 21-26, with the periods laid out). Call those when a reading needs one claim; this tool returns every block in one call.

Parameters

NameTypeRequiredDescription
birth_datetimestringYesBirth date and time in ISO 8601 format (e.g., "1990-05-15T14:30:00").
latitudenumberYesBirth location latitude. Range: -90 to 90.
longitudenumberYesBirth location longitude. Range: -180 to 180.
utc_offset_minutesnumberYesUTC offset in minutes (e.g., 330 for IST, -300 for EST).
ayanamsaenum: kp | kp_new | lahiri | raman | true_chitra | khullarNoAyanamsa system. Defaults to kp.
atunknownNoISO 8601 date-time for which to read the Sudarshana dasha (vv. 21-26). Defaults to now.

Example call

Send the request as a standard MCP tools/call:

http
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_sudarshana_chakra",
    "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.