Skip to main content
Glama
HellenicStar Astrology MCP Server

HellenicStar Astrology MCP Server

render_saturn_jupiter_cycles

Read-onlyIdempotent

Render a 1200x660 PNG panorama of lifetime Saturn/Jupiter angle crossings with event labels and a reference-age indicator for a visual overview.

Instructions

Render a 1200x660 PNG panorama of lifetime Saturn/Jupiter angle crossings, with event labels and a reference-age indicator. Use this for a visual overview; use calculate_saturn_jupiter_cycles for exact event tables and cycle data, or calculate_house_ingresses for entries into houses. Requires exact local birth date/time and a confirmed location_id; person_name is only a display label. Returns an inline MCP PNG and cycle summary after calculating and checking its source. stdio provides no public image URL; image display requires client support. Missing or invalid birth inputs return an input error without an image; unavailable rendering returns render_failed. The window starts at birth and ends at max_age (default 80, allowed 1-120). Wave height is geometry, not life quality or an event prediction.

Input Schema

NameRequiredDescriptionDefault
dayNoLocal civil birth day; must form a valid date with year and month.
foldNoFor an ambiguous repeated local time, use 0 for the earlier occurrence or 1 for the later one after user confirmation. Otherwise omit.
hourNoExact local civil birth hour, 0-23; not UTC. Do not substitute an unknown time.
yearNoExact birth year in the local civil calendar. Birth fields are required for a successful calculation; ask for missing data rather than guessing.
as_ofNoReference calendar date YYYY-MM-DD, evaluated at 12:00 UTC; omitted or empty uses the current UTC date. Sets the age indicator/current cycle position, not the chart start or end.
monthNoLocal civil birth month, 1-12; interpreted with year and day.
minuteNoExact local civil birth minute, 0-59.
max_ageNoLifetime window endpoint in years since birth: integer 1-120, default 80. Starts at birth; larger ranges require more calculation.
location_idNoCopy a confirmed ID from resolve_birth_coordinates or search_birthplace. It supplies coordinates and the IANA timezone; a person name does not replace it.
person_nameNoOptional display label printed on the image. It is not an identity lookup and does not replace birth fields or location_id.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • addedInput schema / properties / as_of / description
      Added value: +"Reference calendar date YYYY-MM-DD, evaluated at 12:00 UTC; omitted or empty uses the current UTC date. Sets the age indicator/current cycle position, not the chart start or end."
    • addedInput schema / properties / day / description
      Added value: +"Local civil birth day; must form a valid date with year and month."
    • addedInput schema / properties / fold / description
      Added value: +"For an ambiguous repeated local time, use 0 for the earlier occurrence or 1 for the later one after user confirmation. Otherwise omit."
    • addedInput schema / properties / hour / description
      Added value: +"Exact local civil birth hour, 0-23; not UTC. Do not substitute an unknown time."
    • addedInput schema / properties / location_id / description
      Added value: +"Copy a confirmed ID from resolve_birth_coordinates or search_birthplace. It supplies coordinates and the IANA timezone; a person name does not replace it."
    • addedInput schema / properties / max_age / description
      Added value: +"Lifetime window endpoint in years since birth: integer 1-120, default 80. Starts at birth; larger ranges require more calculation."
    • addedInput schema / properties / minute / description
      Added value: +"Exact local civil birth minute, 0-59."
    • addedInput schema / properties / month / description
      Added value: +"Local civil birth month, 1-12; interpreted with year and day."
    • addedInput schema / properties / person_name / description
      Added value: +"Optional display label printed on the image. It is not an identity lookup and does not replace birth fields or location_id."
    • addedInput schema / properties / year / description
      Added value: +"Exact birth year in the local civil calendar. Birth fields are required for a successful calculation; ask for missing data rather than guessing."
  2. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: describes return of an inline MCP PNG plus cycle summary, the stdio limitation (no public image URL, client image support needed), error behaviors (input error without image, render_failed), the birth-to-max_age window, and warns wave height is geometry not prediction. Annotations already cover safety; this adds rich operational context.

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-loads the purpose and routing guidance before behavioral details; most sentences carry unique information. It is dense and long, but each clause (errors, stdio limitation, window semantics) earns its place for a rendering tool with no output schema.

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

Completeness5/5

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

Given no output schema and 10 parameters, the description supplies return format, error modes, client constraints, and window semantics, so an agent has everything needed to invoke and interpret it correctly.

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 schema documents all 10 params; the baseline would be 3. The description adds value by clarifying as_of sets the age indicator rather than the chart start/end, that person_name is display-only, and max_age window behavior, though most param detail duplicates schema text.

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

Purpose5/5

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

States a specific verb and resource: renders a 1200x660 PNG panorama of lifetime Saturn/Jupiter angle crossings with labels and a reference-age indicator. It explicitly contrasts with calculate_saturn_jupiter_cycles (exact tables) and calculate_house_ingresses, so an agent can distinguish it from siblings.

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

Usage Guidelines5/5

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

Explicitly says to use this for a visual overview and names the two alternatives for exact data and house ingresses. It also states the required inputs (exact local birth date/time, confirmed location_id), leaving nothing to inference.

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