Skip to content
Lumindocs
UseBuildChangelog
Open Lumin
All tools

Advanced techniques

Four-Step Theory Cross-Validator (Hariharan)

get_four_step_verdict

Hariharan Four-Step Theory cross-validator. KP treats the Sub Lord as the end-result indicator; Four-Step Theory treats the STAR LORD OF THE SUB LORD as the end-result indicator. Running both side-by-side per cusp produces an agreement signal: STRONG_AGREEMENT (≥75% of cusps agree) → high confidence; PARTIAL_AGREEMENT (50-74%) → moderate; DIVERGENCE (<50%) → borderline reading requiring deeper analysis. Use as a second-opinion layer after analyze_natal_promise.

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 | lahiri | raman | true_chitraNoAyanamsa system. Defaults to kp.
eventevent nameNoEvent name (e.g., "Marriage"). Required if primary_houses + house_group not provided.
house_grouparray<house number (1-12)>NoOverride required houses.
denial_grouparray<house number (1-12)>NoOverride denial houses.
primary_housesarray<house number (1-12)>NoOverride which cusps to score.

Example call

Send the request as a standard MCP tools/call:

http
POST https://mcp.lumin.guru/mcp
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_four_step_verdict",
    "arguments": {
      "birth_datetime": "1992-08-14T04:32:00",
      "latitude": 6.927,
      "longitude": 79.861,
      "utc_offset_minutes": 330,
      "ayanamsa": "kp"
    }
  }
}

Engine endpoint

This tool delegates to the kp-engine endpoint:

http
POST /v1/kp/four-step-verdict

The engine is a private internal service. All public access flows through the MCP server, which handles auth, rate limiting, and response compaction.

Birth data

This tool requires birth data. If you have already called set_birth_profile in the same conversation, the MCP server injects those fields automatically and you can omit them from the call.