Skip to content
docs
UseBuildChangelog
Open Lumin
All tools

Advanced techniques

Shadbala index, a Lumin 0-100 planetary strength index [Lumin extension]

get_shadbala_index

[Lumin extension] NOT the BPHS Shadbala and not comparable with a printed one (F047): Lumin's own index of six 0-100 components per planet, averaged. Returns '{ planets: [{ planet, components: { sthana, dig, kala, cheshta, naisargika, drik, total }, rank, relativeStrength: STRONG | MODERATE | WEAK, requirement: { virupas, rupas }, bandCut, requirementRatio, notes }], nodes, strongest, weakest, summary, method: 'lumin-strength-index', methodNote, scoreProvenance, houseConvention }'. Sourced: the six component names, the Dig bala directions, the Naisargika series (the one component that IS the classical quantity), the day/night assignment, the exclusion of the nodes, and the per-planet requirement of BPHS 27.32-33, whose RATIOS set each planet's own 'bandCut' on this scale ('requirementRatio' keeps the shape of the classical test, actual over required, not its number). Not sourced, and named in 'scoreProvenance': every 0-100 score, the averaging, the 65 anchor and the moderate cut. Rahu and Ketu are computed in 'nodes' and never ranked against the seven. Say it is a Lumin index every time it is used. The classical virupas are 'get_classical_shadbala', and how far the two rankings disagree is 'divergence' on 'get_shadbala'. Gates no KP verdict. The same blocks 'get_shadbala' returns at its top level ('planets', 'nodes', 'strongest', 'weakest', 'summary', 'method', 'methodNote', 'scoreProvenance', 'houseConvention').

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.

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_shadbala_index",
    "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.