Skip to main content
Glama

AstroCalc: Vedic astrology

What the planets are doing for someone on a date

sky_on_date
Read-onlyIdempotent

Planet positions on any date from 1900 to 2100 read against a person's chart: each planet's sign, nakshatra and retrograde status, its house from their Lagna and from their Moon, whether Sade Sati is running, and short notes for Saturn, Jupiter, Rahu and Ketu (positions at 12:00 IST). From birth details (free, no sign-in) or for a person saved on the user's AstroCalc account (profile; that needs a free sign-in). Use when the user asks what is changing for them this year or around a date, whether a date suits a plan, or about Sade Sati or Saturn and Jupiter transits ("Sade Sati chal rahi hai kya"). Read-only.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "sky_on_date"
  }
}

Input Schema

NameRequiredDescriptionDefault
onNoDate, YYYY-MM-DD. Defaults to today (IST).
latNoBirth latitude in decimal degrees (north positive). Give together with lon.
lonNoBirth longitude in decimal degrees (east positive). Give together with lat.
dateNoDate of birth, YYYY-MM-DD (Gregorian calendar).
langNoLanguage of the text fields: 'en' (English, default) or 'hi' (Hindi).
timeNoLocal clock time of birth, 24-hour HH:MM (e.g. '06:45', '21:10'); '6:45 am' / '9:10 PM' also work. Use 'unknown' (or omit) if not known: noon is used, the Moon sign stays reliable but the Lagna is approximate.
placeNoBirth city or town, e.g. 'Lucknow' or 'Pune, Maharashtra, India'. The best match is used (Indian cities preferred); call search_place first if unsure. Not needed when lat and lon are given.
profileNoA saved kundli on the user's AstroCalc account: its name as listed by my_profiles (e.g. 'Mummy') or its id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedInput schema / properties / time / description
      Previous value: -"Local clock time of birth, 24-hour HH:MM (e.g. '06:45', '21:10'). Use 'unknown' (or omit) if not known: noon is used, the Moon sign stays reliable but the Lagna is approximate."New value: +"Local clock time of birth, 24-hour HH:MM (e.g. '06:45', '21:10'); '6:45 am' / '9:10 PM' also work. Use 'unknown' (or omit) if not known: noon is used, the Moon sign stays reliable but the Lagna is approximate."
    • changedInput schema / properties / time / pattern
      Previous value: -"^(([01]\\d|2[0-3]):[0-5]\\d|unknown)$"New value: +"^(([01]?\\d|2[0-3]):[0-5]\\d|(0?[1-9]|1[0-2]):[0-5]\\d ?[AaPp][Mm]|unknown)$"
  2. Added

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover the read-only, idempotent, closed-world safety profile, yet the description still adds real context: positions are computed at 12:00 IST, the birth-details path needs no sign-in while the saved-profile path requires a free sign-in, and unknown birth time makes the Lagna approximate. These are operational facts an agent cannot get from the annotations. Return shape and error behavior for out-of-range dates are not described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the returned content, then inputs, then usage triggers, then a one-word 'Read-only.' The single dense paragraph is justified by the volume of distinct outputs, though the long comma-separated enumeration in sentence one is heavy and would scan better as a list.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter, zero-required tool with no output schema, the description does the necessary work: it enumerates the returned fields, covers both input paths, states the date range and snapshot time. Minor gaps remain around behavior for dates outside 1900-2100 and how the two input paths interact if both are supplied.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds meaning on top: it frames lat/lon/place/date/time as the 'birth details' path and 'profile' as the saved-kundli path requiring sign-in, clarifying the two mutually exclusive input modes. It also pins the transit snapshot time to 12:00 IST, which affects how the 'on' date should be interpreted. Individual parameter formats are left to the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a concrete resource and verb-equivalent: planet positions on any date from 1900 to 2100 read against a person's chart, then enumerates exactly what is returned (sign, nakshatra, retrograde, houses from Lagna and Moon, Sade Sati, notes for Saturn/Jupiter/Rahu/Ketu). This is far more than a restatement of the title. It does not explicitly contrast itself with siblings such as today_for or full_chart, which is the only thing separating it from a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear when-to-use triggers: 'what is changing for them this year or around a date', 'whether a date suits a plan', and Sade Sati / Saturn-Jupiter transit questions, including a sample user phrasing. It also explains the two input routes (free birth details vs. signed-in saved profile). No explicit when-not-to-use or named alternative sibling, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources