Skip to main content
Glama

AstroWay Chinese metaphysics

Yearly Forecast

astroway_bazi_yearly
Read-onlyIdempotent

Compares target year pillar against natal day master + natal year branch. Returns element-flow relation (companion / mother / output / control / wealth) per Sheng-Ke cycle, branch clashes (六冲), and trine support (三合).

[Group: BaZi (Four Pillars)] [Endpoint: POST /v1/bazi/yearly] [Required: natalDate, targetYear] [Cost: 10 credits (Tier 1)]

Input Schema

NameRequiredDescriptionDefault
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
genderNo
languageNo
timezoneNoIANA zone name such as Europe/Kyiv, or auto to look the zone up from latitude and longitude. The server takes the offset that zone kept at this local date and time, summer time included, and uses it in place of timezoneOffset. A clock time that happened twice takes the first occurrence; one skipped when clocks went forward takes the offset from before the change. Abbreviations such as EST are refused. Before 1970 the tz database is not reliable for every place, so send timezoneOffset when the local clock is known.
longitudeNo
natalDateYes
natalTimeNo
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.
targetYearYes
dayBoundaryNo
includeMonthsNo
natalTzOffsetNoIgnored when timezone is sent.
trueSolarTimeNo

Output Schema

NameRequiredDescriptionDefault
notesNo
disclaimerNo
targetYearNo
elementFlowNo
targetPillarNo
natalDayMasterNo
branchInteractionsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / gender
      Added value: +{
      +  "enum": [
      +    "male",
      +    "female"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / includeMonths
      Added value: +{
      +  "type": "boolean"
      +}
  2. Changed5 schema fields changed
    • addedInput schema / properties / dayBoundary
      Added value: +{
      +  "enum": [
      +    "23:00",
      +    "midnight"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / longitude
      Added value: +{
      +  "maximum": 180,
      +  "minimum": -180,
      +  "type": "number"
      +}
    • addedInput schema / properties / natalTzOffset / description
      Added value: +"Ignored when timezone is sent."
    • addedInput schema / properties / timezone
      Added value: +{
      +  "description": "IANA zone name such as Europe/Kyiv, or auto to look the zone up from latitude and longitude. The server takes the offset that zone kept at this local date and time, summer time included, and uses it in place of timezoneOffset. A clock time that happened twice takes the first occurrence; one skipped when clocks went forward takes the offset from before the change. Abbreviations such as EST are refused. Before 1970 the tz database is not reliable for every place, so send timezoneOffset when the local clock is known.",
      +  "type": "string"
      +}
    • addedInput schema / properties / trueSolarTime
      Added value: +{
      +  "type": "boolean"
      +}
  3. First observed

TDQS

B3/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description usefully adds the 10-credit Tier 1 cost and the analytical nature of the output, but says nothing about determinism, auth requirements, or rate behavior beyond what annotations imply.

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?

The core computation is front-loaded in one dense sentence and the metadata block is compact and scannable. The bracketed lines are slightly repetitive of schema-level facts but earn their place by surfacing cost and endpoint.

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

Completeness3/5

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

For a 13-parameter analytical tool, purpose and cost are well covered and an output schema exists so return values need not be re-explained. However, usage context versus siblings and the semantics of the many optional BaZi parameters remain unaddressed.

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

Parameters2/5

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

Schema coverage is only 31% across 13 parameters, so the description must compensate, yet it only names the two required fields (natalDate, targetYear). Meaningful parameters such as dayBoundary, trueSolarTime, includeMonths, gender, and natalTime receive no explanation here or in 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 specific operation: comparing the target year pillar against the natal day master and natal year branch, and names the exact outputs (element-flow relation, branch clashes, trine support). It is clear what the tool computes, but it never distinguishes itself from close siblings like astroway_bazi_year_pillar, astroway_bazi_year_pillar_decade, or astroway_bazi_monthly.

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

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance is given. The bracketed metadata supplies required params, endpoint and credit cost, but nothing tells an agent when to reach for this over the year_pillar or monthly siblings.

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