Skip to main content
Glama

chart_facts

A chart's validated facts as ranked, citable atoms for interpretation. Each fact has a stable id (e.g. "aspect:moon~neptune:conjunction"), the bodies it concerns, a salience score (luminaries, angular placements, the chart ruler, tight/hard aspects, configurations rank high), and a plain-language statement. Facts span placements, aspects, configurations, the structural signature, dispositors and receptions, a body's tight conjunction with a bright fixed star (e.g. "star:jupiter:Sirius"), and the Part of Fortune and Spirit (e.g. "lot:fortune"). Read the facts, write the interpretation in your own words, and cite the [id] each statement rests on — do not introduce facts not listed. Returns the ranked facts plus a ready-to-interpret brief.

By default a real birth chart: pass date+lat+lon. The chart's grounding is first-class via realm (what it is: observed/forecast/fictional/mythic/archetypal/…) and the time: an exact date, an uncertain earliest+latest range (the brief then frames it as provisional and trusts the Moon/angles/houses less), constraints for an archetypal chart with no time (synthesized via the compiler), or a full structured when (relative-to-another-event or a narrative calendar). A when of kind relative looks its anchorId up in anchors (a map of id → UTC instant supplied in the request). Omit lat+lon for a placeless chart (nominal houses).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude, north positive
lonNoLongitude, EAST positive (Americas are negative)
dateNoExact UTC instant, ISO 8601 (e.g. 1990-06-10T14:30:00Z); convert local to UTC first
whenNoFull structured temporal anchor; overrides date/earliest/latest. Use for relative or narrative time.
limitNomax facts to return, highest salience first (default 24)
placeNoNamed place, e.g. "Paris" or "Springfield, US" — resolved to a city centroid via the bundled gazetteer (GeoNames) when lat/lon are not given. Resolution is approximate by construction and reported as such
realmNoWhat the chart is; frames the interpretation (default observed)observed
whereNoFull structured spatial anchor; overrides lat/lon and place. `fictional` carries the narrative value only — a fictional place never resolves to coordinates (the chart reads on the planetary layer, houseless), by design
latestNoEnd of an uncertain-time range (UTC ISO)
zodiacNotropical (default) or sidereal:<ayanamsa>tropical
anchorsNoReference instants for a `relative` when: { anchorId: UTC ISO }
earliestNoStart of an uncertain-time range (UTC ISO); use with `latest` instead of `date`
calendarsNoCalendar lookups for a `narrative` when: { calendarName: { value: UTC ISO } }. The caller owns the mapping (a regnal year, a story epoch, a game calendar) — the engine resolves through it, never invents it
constraintsNoGeometric constraints for an archetypal/conceptual chart with no time (compiler synthesis). Longitude kinds (aspect/sign/degree) plus the latitude-aware kinds: declination (via the fixed J2000 obliquity), parallel/contraparallel of declination, and separation3d (true great-circle separation)
target_dateNoUTC ISO instant for transits and time-lords vs this natal chart; omit for natal-only facts
house_systemNoHouse system (default placidus). Case- and spacing-insensitive; valid: placidus, whole_sign, equal, porphyry, koch, regiomontanus, campanus, alcabitius, morinus, meridian, polich_page, vehlow (aliases like "whole sign" also work).placidus
include_vedicNoWith target_date: project nakshatra/varga/yoga (default true when zodiac is sidereal)

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so richly: it discloses output shape ('ranked facts plus a ready-to-interpret brief'), the constraint 'do not introduce facts not listed', provisional trust for uncertain time ranges, compiler synthesis for constraints, and caller-owned calendar mappings. This is far beyond schema field semantics.

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

Conciseness5/5

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

The description is dense but purposeful, front-loading the tool's purpose before grounding details. Despite its length, every sentence contributes operational or interpretive context, and the structure logically moves from output semantics to input grounding — appropriate for a 17-parameter tool.

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 no annotations, the description compensates fully: it explains return values (ranked facts and brief), the fact structure, citation requirements, all major input modes, and special behaviors like fictional places resolving to no coordinates. An agent has enough information to select and invoke the tool 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 description coverage is 100%, so the baseline is 3, but the description adds meaningful cross-parameter context: constraints for archetypal charts, when/anchors for relative time, earliest/latest for provisional trust, and 'omit lat+lon for a placeless chart'. These connections are not present in the individual schema property descriptions.

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?

The description opens with 'A chart's validated facts as ranked, citable atoms for interpretation' and specifies the exact output: stable ids, bodies, salience scores, and plain-language statements. It clearly differentiates from plain chart computation by instructing the agent to 'read the facts, write the interpretation... and cite the [id]', establishing a unique interpretive role among siblings.

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?

Provides clear context for when to use the tool and how to ground it: 'By default a real birth chart: pass date+lat+lon', archetypal constraints, relative anchors, and placeless charts with omitted lat/lon. However, it never explicitly names alternatives or states when NOT to use this tool versus a sibling like natal_chart or aspect_patterns.

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.

TDQS

A3.9/5.0
Disambiguation5/5

Each tool has a highly specific and well-described purpose. Despite the large number, their functions are clearly distinct—e.g., natal_chart vs current_sky vs composite, or dasha vs firdaria vs profections vs releasing. The detailed descriptions prevent ambiguity.

Naming Consistency3/5

Names are consistently in snake_case but vary in style: some are noun phrases (natal_chart, cosmic_weather), some are verb-like (releasing, returns), and some are descriptive (aspect_patterns, find_aspect_dates). There is no strict verb_noun pattern, leading to moderate consistency.

Tool Count4/5

34 tools is high but appropriate for a comprehensive astrology API covering natal, transits, progressions, returns, synastry, time-lord techniques, sky events, and synthetic bodies. Each tool serves a specific niche, so the count feels justified rather than excessive.

Completeness5/5

The tool surface is extremely thorough, covering all major areas of astrology: chart generation, aspects, configurations, dignities, time-lord techniques (multiple systems), synastry, composite, progressions, returns, transits, sky events, rectification, electional, and synthetic bodies. No obvious gaps for the intended domain.