Skip to content
docs
UseBuildChangelog
Open Lumin
All tools

Advanced techniques

Complete Year Outlook Workflow

run_year_outlook_complete

[Cross-system composite: KP, Tajik, Parashari] Atomic year-outlook composite for annual-subscription B2B products. Bundles: 12-month annual forecast (KP, the calendar target year) + Tajik Varshaphala (solar return + Muntha) + Tithi Pravesha (soli-lunar return) + 5 key Sahams (Punya/Yasas/Karya/Karya-Siddhi/Vivah, on the annual chart as keySahams[] and on the natal chart as keySahamsNatal[]) + Yogini dasha + Ashtottari dasha + Sade Sati phases + eclipse impacts. EVERY dated block reads the target year (F157): the Tajik year from its solar return to the next, with the dashas and Sade Sati read at the return (or at query_date when it falls inside that year), every Yogini, Ashtottari and Sade Sati period overlapping the year listed, and the eclipse scan starting at the return; 'readDates' names each instant. 'blockSystems[]' names each block's system and method note. 'yearTone' is a Lumin ladder over Tajik, Parashari and eclipse instruments, labelled by 'synthesis.scoreProvenance', not a verdict any system makes. Returns '{ targetYear, varshaphala, tithiPravesha, keySahams[], yoginiCurrent, yoginiInYear[], ashtottariCurrent, ashtottariInYear[], sadeSatiStatus, sadeSatiInYear[], eclipseImpacts[], readDates, blockSystems[], synthesis: { yearTone: GROWTH|CONSOLIDATION|CAUTION|TRANSFORMATION, scoreProvenance, topMonths[] } }'. Saves 8 round-trips per annual report.

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.
target_yearnumberNoYear to analyze (default: current).
query_datestringNoISO date inside the target year at which the dashas and Sade Sati are read (default: the target year's solar return). A date outside the target year is set aside and readDates says why. Send a zone (Z, or +hh:mm as in 2026-10-20T10:30:00+05:30). A value without a zone is read as UTC, never as local time, and a date alone is midnight UTC. This is a different moment from judgement_datetime, which is a local wall clock sent with its own offset.

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": "run_year_outlook_complete",
    "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.