AstroWay Hellenistic and traditional
Server Details
Lots, sect, triplicity rulers, zodiacal releasing, annual profections and horary.
- Status
- Healthy
- Uptime
- 97.9% over 25 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 83 tools
The surface is heavily polluted with duplicate tools: every Brennan, Greenbaum, and Schmidt endpoint appears twice, once under a full name (astroway_hellenistic_brennan_*) and once under a short alias (astroway_helb_*/helg_*/hels_*) that is explicitly 'a cursor-friendly alias for' the same endpoint. An agent cannot reliably choose between two identical tools, and there is additional overlap (e.g. astroway_horary_horary vs astroway_horary_diagnostics).
The astroway_ prefix and snake_case are used throughout, and the full Hellenistic names follow a readable group_tradition_technique pattern. However, the alias families (helb, helg, hels, mcp, mcp_ai) use inconsistent ad-hoc abbreviations, producing four different naming schemes for effectively the same operations.
83 tools is far beyond the 25+ threshold for 'too many', and the count is inflated roughly 2x by redundant aliases rather than genuine distinct capability. While astrological domains are broad, this many near-duplicate endpoints makes the set unwieldy.
Core Hellenistic, horary, and timing techniques are broadly covered, so the domain is reasonably served. However, the surface mixes utility/account tools and AI/MCP chat endpoints with the astrological techniques, and coverage is hard to assess given the duplicated aliases.
Available Tools
83 toolsastroway_account_statusAccount StatusARead-onlyIdempotentInspect
Check current API key status: tier, credit balance, rate limits, monthly cycle reset. Run this BEFORE invoking expensive endpoints (Tier 4+ at 100+ credits, Tier 6/7 at 500-5000 credits) to confirm the user has budget. Returns plain-text human-readable summary.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, idempotentHint. Description adds that it returns a 'plain-text human-readable summary' and clarifies the budget-checking purpose, providing useful context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three efficient sentences: purpose, usage guidance, and return format. Front-loaded with key information, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite lacking an output schema, the description specifies the return format (plain-text human-readable summary). For a simple status check tool, this is complete and sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Tool has zero parameters, so schema coverage is 100%. Description does not need to explain parameters, and it adds value by hinting at the output format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Check' and the resource 'API key status' with specific attributes (tier, credit balance, rate limits, monthly cycle reset). It distinguishes itself from the many sibling astrology calculation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to run this tool BEFORE invoking expensive endpoints, providing credit thresholds (Tier 4+ at 100+ credits, Tier 6/7 at 500-5000 credits) to confirm budget.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_agent_toolsAgent tool definitionsARead-onlyIdempotentInspect
Tool definitions for an agent framework, generated from the live OpenAPI document, so the schema a model fills is the schema the endpoint validates. format=openai (default) returns { type, function } objects you can spread straight into a chat completion; format=anthropic returns { name, description, input_schema }. The objects carry nothing of ours: how to call each tool lives in a separate executors map keyed by tool name, because an unexpected key inside a vendor tool object is a 400 at their end.
[Group: Agent Platform] [Endpoint: GET /v1/agent/tools] [Cost: see your plan — endpoint not in the public credit manifest]
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Free-text filter applied within the selection, matched against path, summary, description and group. | |
| limit | No | How many tools to return. The ceiling is the OpenAI limit of 128 functions per request; models degrade well before it. Anything left out is counted in `totalMatched`. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| format | No | Which vendor contract the tool objects follow. `openai` returns `{ type, function }`, `anthropic` returns `{ name, description, input_schema }`. | openai |
| select | No | What to hand over: `starter` (the curated set, the default), `all`, `group:<tag>` such as `group:Vedic`, or `paths:/chart,/synastry` for an explicit list. An unknown path is named in `notes` rather than dropped. | starter |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | No | |
| notes | No | |
| tools | No | |
| format | No | |
| select | No | |
| executors | No | |
| truncated | No | |
| totalMatched | No | |
| totalAvailable | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), yet the description adds genuine behavioral context beyond them: executors are kept out of the vendor objects because an unexpected key causes a 400 on the vendor side, and cost is flagged as not in the public credit manifest. That is real operational value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Roughly three sentences, front-loaded with the purpose before the format and executor caveats. It is dense but each sentence carries information, though the format explanation partially duplicates the schema's own enum description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and full annotation coverage, the description need not explain return values, and it appropriately focuses on the vendor-shape contract and the executors/400 gotcha. It is nearly complete, with the only gap being sibling disambiguation rather than missing operational detail.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents every parameter in depth (limit ceiling rationale, select values, precision semantics). The description only restates format and its default, adding no parameter meaning the schema lacks. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool returns: tool definitions for an agent framework, generated from the live OpenAPI document. It is specific about the resource and the vendor-shape variants (openai vs anthropic objects). However, it never distinguishes this from the near-identical sibling astroway_mcp_tools_list, which an agent would plausibly confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use, when-not-to-use, or alternative-naming guidance. The mention that openai objects 'spread straight into a chat completion' implies a use case, but the agent is left to infer when this endpoint is preferable to astroway_mcp_tools_list or the MCP tool-call streaming siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_cost_estimateCost EstimateARead-onlyIdempotentInspect
Estimate the credit cost of one or more endpoints WITHOUT invoking them. Returns total + per-endpoint breakdown with tier annotations. Useful when planning multi-step workflows: estimate first, ask user confirmation, then invoke. Cache TTL 5 min.
| Name | Required | Description | Default |
|---|---|---|---|
| endpoints | Yes | Endpoint paths to estimate, e.g. ["/chart", "/synastry", "/reports/natal"]. Leading slash optional. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety bar is low; the description still adds real value by clarifying that endpoints are NOT invoked and that results are cached with a 5-minute TTL. It also discloses the return shape (total + per-endpoint breakdown with tier annotations), which is meaningful since no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the core capability and the non-invocation guarantee, followed by workflow guidance and the cache note. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having no output schema, the description explains the return value, and the invocation-free and cache behaviors are covered. For a one-parameter, read-only estimator this is fully sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'endpoints' parameter is fully documented with examples and the leading-slash rule in the schema. The description only restates 'one or more endpoints' without adding format or constraint detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Estimate the credit cost of one or more endpoints') and immediately pins the scope with 'WITHOUT invoking them', which no sibling tool does. An agent can distinguish this from the many invocation/report siblings at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit workflow guidance: 'estimate first, ask user confirmation, then invoke' for multi-step planning. This is clear when-to-use context, though it names no alternative tool or when-not-to-use condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helb_bonifications_maltreatmentsBonifications/MaltreatmentsBRead-onlyIdempotentInspect
Planet conditions per Valens: 9 categories.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/bonifications-maltreatments] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_brennan_bonifications_maltreatments.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No | |
| source | No | |
| doctrine | No | |
| conditions | No | |
| disclaimer | No | |
| perPlanetSummary | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description usefully adds the cost (10 credits, Tier 1) and the endpoint, but says nothing about the nature of the nine categories or any rate/usage constraints beyond cost.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the one-line purpose and then packs group, endpoint, required params, cost, and alias into tight bracketed lines. Efficient; the redundancy of restating the four required params is the only minor waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and the alias/endpoint/cost framing is complete for an alias tool. However, with 15 params at 33% schema coverage and a domain term ('9 categories') left unexplained, the description is only marginally adequate for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33% across 15 parameters, so the description carries the burden of compensating — but it merely repeats the four required params (date, time, latitude, longitude) already listed in the schema and says nothing about the ayanamsa, timezone, houseSystem, fields, precision, or zodiacType options.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the resource and scope ('Planet conditions per Valens: 9 categories') and explicitly identifies itself as a Cursor-friendly alias for the canonical `astroway_hellenistic_brennan_bonifications_maltreatments`, which helps distinguish it from the many HB siblings. The intent is somewhat jargon-dependent ('bonifications/maltreatments'), but an agent can place it in the Hellenistic/Brennan family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The required inputs, endpoint, and credit cost are given, and the alias relationship implies when it is interchangeable with the canonical tool. There is no explicit when-to-use-vs-alternatives guidance against the other Brennan/Hellenistic tools (e.g. joys_of_planets, lots_15).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helb_profections_detailProfections DetailCRead-onlyIdempotentInspect
Annual profection year-lord with full classical condition.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/profections-detail] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_brennan_profections_detail.)
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| ageYear | No | |
| doctrine | No | |
| yearLord | No | |
| disclaimer | No | |
| yearEndDate | No | |
| profectedSign | No | |
| yearStartDate | No | |
| monthlyProfections | No | |
| yearLordNatalContext | No | |
| profectedHouseFromAsc | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, openWorldHint=false, so the safety profile is covered. The description adds only metadata (group, endpoint, cost) but nothing about behavioral traits such as what the response contains, pagination, or error conditions. For a read/compute tool with annotations in place, this is thin but not contradictory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loaded with the key concept. The bracketed metadata block (group, endpoint, cost) adds operational utility without bloat. It's efficient, though the core sentence could be more action-oriented.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has an output schema, so return-value explanation isn't required. The description covers group, endpoint, cost, and alias relationship, but omits what the tool actually computes and when to use it relative to the many profection/time-lord siblings. Adequate but with notable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents parameters including timezoneOffset, houseSystem, targetAge, and fields/precision. The description adds no parameter meaning beyond the schema, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description reads 'Annual profection year-lord with full classical condition,' which tells the agent what the output is but not what the tool does as an action. It's close to a restatement of the title/name rather than a verb+resource statement. It does not distinguish itself from siblings like astroway_prognostics_profections or astroway_hellenistic_brennan_time_lord_stack.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no when-to-use guidance, no alternatives, and no exclusions. The only routing hint is the note that it is a 'Cursor-friendly alias' for astroway_hellenistic_brennan_profections_detail, which is about naming, not usage selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helb_triplicity_rulersTriplicity RulersBRead-onlyIdempotentInspect
Dorothean triplicity rulers (day/night/common).
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/triplicity-rulers] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_brennan_triplicity_rulers.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No | |
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnlyHint, idempotentHint, non-destructive, closed-world), so the description is not the main carrier here. It does add genuinely useful operational context in the cost (10 credits, Tier 1) and the required-parameter list, but says nothing about output shape or computation limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core purpose is front-loaded in one line, followed by compact bracketed metadata (group, endpoint, required, cost) and a short alias note. Nothing is padded, though the bracketed blocks are metadata rather than explanatory content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and the endpoint/cost/required blocks cover the minimum needed to invoke the call. However, for a 15-parameter tool with low schema description coverage, the description does not do enough to round out the missing parameter meaning.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% and 15 parameters exist, so the description is expected to compensate but does not. It lists the four required parameters (date, time, latitude, longitude), which merely repeats the schema's required array, and leaves the remaining eleven parameters undocumented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the specific technique (Dorothean triplicity rulers) and its scope variants (day/night/common), which is a concrete astrological resource rather than a tautology. It also explicitly identifies itself as an alias of a named sibling, aiding disambiguation, though it does not explain how it differs from other Hellenistic triplicity-family tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance and no selection criteria against alternatives. The alias note tells the agent this is interchangeable with one sibling, but nothing indicates the context in which a caller should reach for this technique.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helb_zodiacal_releasing_fortuneZR from FortuneBRead-onlyIdempotentInspect
Zodiacal Releasing from Lot of Fortune: body/livelihood periods.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zodiacal-releasing-fortune] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_brennan_zodiacal_releasing_fortune.)
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| summary | No | |
| doctrine | No | |
| disclaimer | No | |
| l1Sequence | No | |
| lotOfFortune | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful non-schema facts — the 10-credit cost tier, the POST endpoint, and the Brennan-tradition grouping. It does not describe what a "body/livelihood period" output looks like (decade/peak structure), but with full annotations and an output schema that gap is tolerable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the technique and its meaning in the first line, followed by tightly packed metadata blocks. Every element is short, though the alias/endpoint/cost boilerplate is administrative rather than task-guiding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations plus a 100%-covered input schema carry the parameter and safety burden. The description supplies the remaining context an agent needs (cost, endpoint, tradition, alias mapping), leaving little missing for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the rich nested birth-data schema documents date/time/latitude/longitude, timezone handling and the fields/precision compact-mode params in detail. The description adds no parameter meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific Hellenistic technique (Zodiacal Releasing from the Lot of Fortune) and its subject matter (body/livelihood periods), which is enough to separate it from the sibling ZR-from-Spirit tool. It stops short of explicitly contrasting itself with that sibling, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no mention of the sibling astroway_helb_zodiacal_releasing_spirit or astroway_hellenistic_brennan_zodiacal_releasing_fortune. An agent has to infer from the name alone which releasing technique to pick and when Fortune rather than Spirit is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helb_zodiacal_releasing_spiritZR from SpiritARead-onlyIdempotentInspect
Zodiacal Releasing from Lot of Spirit: career/action periods.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zodiacal-releasing-spirit] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_brennan_zodiacal_releasing_spirit.)
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| summary | No | |
| doctrine | No | |
| disclaimer | No | |
| l1Sequence | No | |
| lotOfSpirit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds useful non-annotation context: cost (10 credits, Tier 1) and the exact endpoint. It says nothing about the response shape or computation depth, but with an output schema present that omission is minor.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then tightly bracketed metadata for group, endpoint, and cost, ending with the alias note. Every element earns its place, though the bracketed lines are more structural boilerplate than prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a rich output schema, the description need not explain return values; it complements the schema with cost and endpoint. The only real gap is the absence of any routing guidance against the Fortune/Loosing-of-Bond siblings in this crowded Hellenistic family.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the nested body schema is thoroughly documented (date/time formats, timezone behavior, house system letters). The description adds no parameter meaning beyond this, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific technique and object ('Zodiacal Releasing from Lot of Spirit') plus the interpretive domain ('career/action periods'). It implicitly distinguishes from the sibling 'zodiacal_releasing_fortune' by naming the Lot of Spirit, but it never explicitly contrasts the two, leaving that inference to the agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by 'career/action periods'; there is no explicit when-to-use, when-not, or pointer to the Fortune counterpart. The alias note helpfully clarifies it is a duplicate of the canonical brennan tool, which is a genuine usage signal, but no comparative guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helb_zr_loosing_of_bondZR Loosing of BondBRead-onlyIdempotentInspect
Loosing of Bond detection within ZR sequence.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zr-loosing-of-bond] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_brennan_zr_loosing_of_bond.)
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | No | |
| source | No | |
| fromLot | No | |
| lotInfo | No | |
| doctrine | No | |
| disclaimer | No | |
| loosingOfBondEvents | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description's genuine additions are cost (10 credits, Tier 1) and the canonical endpoint, which an agent can use for budgeting and auditing. It still says nothing about response behavior, pagination or the years window's effect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded purpose line followed by short bracketed metadata tags; nothing is padded or repeated. The tags earn their place as cost/group/alias signals.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a rich output schema, full parameter documentation and safety annotations, the definition is serviceable for invocation. The remaining gap is that an agent cannot tell from this text what the technique means or when it should be preferred over the sibling ZR tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the nested body schema is unusually well documented (formats, timezone handling, houseSystem casing). The description adds no parameter meaning of its own, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific technique and scope ('Loosing of Bond detection within ZR sequence') and pins it to the Hellenistic: Brennan tradition, which lets an agent place it in the right family. It falls short of 5 because the jargon is never unpacked and it doesn't distinguish itself from near siblings such as zr_peak_periods or zodiacal_releasing_fortune/spirit. The alias note does usefully resolve it against astroway_hellenistic_brennan_zr_loosing_of_bond.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus the other ZR or zodiacal-releasing siblings, and no prerequisites or exclusions. The only routing information is endpoint, group and cost metadata.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_antiscia_hellenisticAntiscia (Hellenistic)BRead-onlyIdempotentInspect
Solstitial antiscia per Hellenistic conventions.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/antiscia-hellenistic] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_antiscia_hellenistic.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No | |
| antiscionContacts | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description usefully adds the credit cost (10, Tier 1) and the underlying endpoint, but says nothing about what the computation returns or any limits beyond the cost.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence followed by compact bracketed metadata; no sentence is wasted. The bracket-block style is terse and machine-oriented rather than prose, but it is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and annotations carry the safety profile. Still, for a 15-parameter, 10-credit calculation tool the description leaves optional-parameter behavior and result content entirely to the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33% across 15 parameters, so the description must compensate; it merely repeats the four required fields already marked as required in the schema. The many optional parameters (city, name, cosmogram, zodiacType, houseSystem, ayanamsaId) get no elucidation from the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific technique (solstitial antiscia) with a named tradition (Hellenistic conventions), which separates it from the general astroway_aspects_antiscia and from astroway_helg_contra_antiscia. The alias note also identifies the Greenbaum-lineage sibling it duplicates, aiding disambiguation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The alias line tells the agent this is interchangeable with astroway_hellenistic_greenbaum_antiscia_hellenistic, which is a useful routing hint. However there is no stated condition for choosing antiscia over contra-antiscia or the aspects variant, so usage is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_contra_antisciaContra-AntisciaBRead-onlyIdempotentInspect
Equinoctial contra-antiscia.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/contra-antiscia] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_contra_antiscia.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No | |
| contraAntiscionContacts | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely non-schema information: the credit cost (10 credits, Tier 1) and the fact that this is a duplicate alias of another endpoint, which helps an agent avoid double-billing for the same computation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded domain term followed by bracketed structured metadata (group, endpoint, required, cost, alias). No filler sentences, though the body is arguably too terse to be self-sufficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations cover safety. But for a 15-parameter astrological computation with only 33% schema description coverage, the description leaves the caller without an explanation of the technique, the effect of ayanamsa/houseSystem/zodiacType, or how results are shaped.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, with 15 parameters including enums for ayanamsa, zodiacType and houseSystem. The description merely restates the four required fields already declared in the schema's required list and adds no syntax, defaults, or meaning for the undocumented parameters, so it neither compensates for the gap nor adds value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the deliverable ('equinoctial contra-antiscia') and, via the alias note, distinguishes itself from the canonical sibling astroway_hellenistic_greenbaum_contra_antiscia. However, it never states what the tool actually computes or returns (positions? aspect pairs?) – it is a bare domain noun phrase with no verb, opaque to anyone not already versed in Greenbaum Hellenistic technique.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not guidance. The alias note ('Cursor-friendly alias for ...') implicitly tells the agent either name works, which is marginally useful, but nothing explains when contra-antiscia analysis is the right choice versus siblings like astroway_helg_antiscia_hellenistic or astroway_hellenistic_greenbaum_dodekatemoria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_daimon_tyche_axisDaimon-Tyche AxisCRead-onlyIdempotentInspect
Spirit-Fortune axis as primary chart spine.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/daimon-tyche-axis] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_daimon_tyche_axis.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| axis | No | |
| basis | No | |
| source | No | |
| spirit | No | |
| fortune | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds genuinely new operational context - the 10-credit Tier 1 cost and the required parameter set - but says nothing about authentication needs, rate limits, or what the response actually contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short, bracket-structured, and front-loads the key facts (group, endpoint, required params, cost). The opening phrase 'as primary chart spine' is interpretive filler, but the remainder is dense and earns its space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value documentation is not required. However, for a 15-parameter sidereal-capable calculation in a family with many near-identical Hellenistic siblings, the description omits what distinguishes this axis output from related Greenbaum tools and how the timezone/zodiac options affect the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 15 parameters and only 33% schema description coverage, the description is expected to compensate, and it does not. It merely repeats the four already-required fields (date, time, latitude, longitude) that the schema marks as required, leaving timezone vs timezoneOffset, ayanamsa/ayanamsaId, zodiacType, and houseSystem semantics entirely unexplained in the description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (Spirit-Fortune / Daimon-Tyche axis) but never states what the tool actually does with it - no verb like 'computes' or 'returns'. It does provide sibling differentiation by explicitly identifying itself as the Cursor-friendly alias of `astroway_hellenistic_greenbaum_daimon_tyche_axis`, which is genuinely useful among hundreds of siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance: nothing says when a practitioner should request the Daimon-Tyche axis versus zodiacal releasing, lots, or any other Hellenistic technique. The only routing cue is the alias note, which tells the agent this is interchangeable with the canonical name rather than when to choose it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_lot_of_eros_detailLot of Eros DetailBRead-onlyIdempotentInspect
Eros calculation with conditions analysis.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/lot-of-eros-detail] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_lot_of_eros_detail.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| eros | No | |
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| venusContact | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false, and destructiveHint=false. The description usefully adds the credit cost (10 credits, Tier 1) and discloses that it is a cursor-friendly alias of the canonical tool, but it omits auth prerequisites, rate limits, and any other operational caveats.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Five short lines with the purpose front-loaded and metadata in scannable bracket tags. The alias note is mildly redundant with the tool-name suffix, but there is no wasted prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter specialized Hellenistic tool that does have an output schema, the description supplies tradition, endpoint, cost, and required inputs, which covers the basics. However, it leaves the 11 non-required parameters and all usage context unaddressed, so an agent can invoke it but has little help choosing or configuring it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 15 parameters and only 33% schema description coverage, the description only restates the four required fields (date, time, latitude, longitude) that the schema's required array already declares. It says nothing about fields, ayanamsa, timezone, precision, timezoneOffset, or the other optional parameters, so it fails to compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a calculation of the Lot of Eros plus 'conditions analysis', and the group tag frames it as the Greenbaum Hellenistic tradition. It is clearer than a bare name restatement, but it never clarifies what 'conditions analysis' comprises and does not distinguish this alias from the canonical `astroway_hellenistic_greenbaum_lot_of_eros_detail` other than noting they are the same.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no named alternatives, and no exclusions. The bracket block only lists required inputs and credit cost, so an agent gets no signal on when this detail variant is preferable to the broader lots or Hellenistic tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_quality_of_timeQuality of TimeCRead-onlyIdempotentInspect
Synchronistic quality of a moment.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/quality-of-time] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_quality_of_time.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| qualityOfTime | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safe read-only, idempotent, non-destructive profile, so the bar is low. The description adds genuinely useful context: the 10-credit Tier 1 cost and the note that it is a cursor-friendly alias of astroway_hellenistic_greenbaum_quality_of_time, which signals duplication. No auth or rate-limit details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Dense and front-loaded: one purpose line followed by compact bracketed tags for group, endpoint, required inputs, and cost. Little waste, though the opening line carries almost no functional information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter tool with 33% schema coverage, the description omits guidance on the optional configuration params that distinguish Hellenistic variants. An output schema exists, so return values are excused, but the input-side complexity is largely unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (15 params), so the description must compensate, but it merely repeats the four required params already marked required in the schema. Nothing is added about the eleven optional params (houseSystem, zodiacType, ayanamsa, fields, precision, timezone), which materially affect a Hellenistic calculation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Synchronistic quality of a moment" is close to a restatement of the name/title and does not say what the tool actually computes. However, the bracketed metadata names the tradition (Hellenistic: Greenbaum) and endpoint, which does differentiate it from the Brennan/Schmidt/Hand siblings in the same family.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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, and no named alternatives (e.g., vs. astroway_hellenistic_brennan_quality_of_time or other timing tools). The cost tag is the only decision-relevant hint provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_sphaera_barbaricaSphaera BarbaricaCRead-onlyIdempotentInspect
Constellations beyond the zodiac.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/sphaera-barbarica] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_sphaera_barbarica.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| angles | No | |
| source | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and openWorld=false, so the safety profile is covered. The description adds genuinely useful context beyond the annotations — the cost (10 credits, Tier 1) and the endpoint — but it says nothing about what computation is performed or what the caller should expect, so the value is moderate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is tight and front-loads the one descriptive phrase before bracketed metadata, with no filler sentences. The bracketed block is machine-oriented rather than prose, but it is compact and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value documentation is not required. But for a 15-parameter calculation tool the description omits the conceptual result, any usage context, and all optional-parameter meaning, leaving the agent without enough to invoke it purposefully beyond the four required fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, and the description's '[Required: date, time, latitude, longitude]' merely restates the schema's required array. The optional parameters (ayanamsa, timezone, houseSystem, fields, precision, cosmogram) get no explanation in the description, so it does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific technique ('Constellations beyond the zodiac', Hellenistic Greenbaum tradition) and disambiguates itself as a cursor-friendly alias of astroway_hellenistic_greenbaum_sphaera_barbarica. However, it never states what the tool actually does or returns — no verb like 'compute' or 'derive the Sphaera Barbarica placements for a chart' — so the agent knows the topic but not the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no alternatives named. The bracketed metadata lists required inputs and cost but says nothing about the conditions under which this technique is appropriate, nor how it differs in use from related Hellenistic siblings (decans, dodekatemoria, temple doctrine).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_temple_doctrineTemple DoctrineCRead-onlyIdempotentInspect
Temple-house assignments per Greenbaum.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/temple-doctrine] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_temple_doctrine.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| temples | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so safety is covered. The description usefully adds non-annotation context: cost (10 credits, Tier 1) and the POST endpoint. However it says nothing about response shape, latency, or failure modes beyond what annotations give, so it sits at the baseline-plus level.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracket-tag layout is front-loaded and scannable, with the technique name first and metadata after. No prose padding, though the alias line is the only content that isn't derivable from structured fields or the endpoint path.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 15 parameters, 33% schema coverage, and no parameter explanation in the description, the definition is thin for the tool's complexity. The output schema handles return values and annotations handle safety, but the large block of undocumented parameters leaves the agent guessing about inputs like ayanamsa, house system, and compact mode.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries a heavier burden. It merely restates the four required params (date, time, latitude, longitude) already flagged as required in the schema, and adds nothing about the undocumented params (city, name, cosmogram, zodiacType, houseSystem, ayanamsaId). It fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific named technique (temple-house assignments) and attributes it to the Greenbaum tradition, which distinguishes it from the Brennan/Hand/Schmidt Hellenistic siblings. The parenthetical alias note clarifies its relationship to `astroway_hellenistic_greenbaum_temple_doctrine`, preventing duplicate calls. It stops short of saying what the output actually contains, but the purpose is identifiable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to reach for this technique versus other Hellenistic tools (dodekatemoria, zodiacal decans, quality of time). The alias note implies 'either this or the canonical name', but that is routing hygiene, not usage guidance. An agent gets no condition that selects this tool over its many siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_helg_zodiacal_decansZodiacal DecansCRead-onlyIdempotentInspect
Zodiacal decans with attributions.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/zodiacal-decans] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_greenbaum_zodiacal_decans.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is fully covered. The description contributes the credit cost (10 credits, Tier 1) and the fact that this is a cursor-friendly alias of astroway_hellenistic_greenbaum_zodiacal_decans, which is genuinely useful, but the remaining bracket lines (endpoint, required fields) are operational metadata rather than tool-specific behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short and front-loads the subject before the bracketed metadata, with no padding sentences. The structure is scannable, though the opening line carries very little information relative to the space the bracket block occupies.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations cover safety. However, for a 15-parameter endpoint with 33% schema coverage, the description supplies no explanation of what 'attributions' means, no usage context, and no disambiguation from the many adjacent Hellenistic decan/zodiacal tools, leaving real gaps an agent would face.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, with 15 parameters and no explanation of city, name, cosmogram, zodiacType, ayanamsaId, or houseSystem beyond bare enums/defaults. The description's only parameter content is '[Required: date, time, latitude, longitude],' which merely repeats what the schema's required array already states, so it does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (zodiacal decans) and adds 'with attributions,' but it has no verb and largely restates the title 'Zodiacal Decans.' It does nothing to distinguish this Greenbaum decans endpoint from close siblings such as astroway_hellenistic_hand_decanic_rulers or astroway_hellenistic_greenbaum_dodekatemoria.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this tool versus alternatives, and no named sibling for disambiguation. The '[Required: ...]' and '[Cost: ...]' brackets convey invocation mechanics, not usage guidance, so an agent gets no help deciding whether this or a neighboring Hellenistic technique fits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_bonifications_maltreatmentsBonifications/MaltreatmentsCRead-onlyIdempotentInspect
Planet conditions per Valens: 9 categories.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/bonifications-maltreatments] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No | |
| source | No | |
| doctrine | No | |
| conditions | No | |
| disclaimer | No | |
| perPlanetSummary | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered by structured data. The description usefully adds operational context the annotations do not carry — the 10-credit cost and the required input set — but says nothing about authentication, output shape, or what the "9 categories" actually contain. With annotations doing the heavy lifting, this is an adequate 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The statement is front-loaded and free of filler, and the bracketed metadata is compact. However, the terse phrasing tips into under-specification: the description is short because it omits information, not because it is economical.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be explained, but for a 15-parameter tool with weak schema coverage the description should do far more. It gives no usage context, no disambiguation from the sibling helb_bonifications_maltreatments, and no explanation of the nine categories, leaving an agent under-informed for a non-trivial chart calculation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries real burden — but it merely restates the four required parameters, which are already listed in the schema's required array, and adds no semantic meaning. Undocumented parameters such as cosmogram, zodiacType, and ayanamsaId receive no clarification here, so the coverage gap is left unfilled.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a bare statement of what is computed ("Planet conditions per Valens: 9 categories"), which is enough to recognize the Hellenistic bonification/maltreatment concept but not a specific verb+resource framing. It does not distinguish itself from near-identical siblings such as astroway_helb_bonifications_maltreatments or astroway_dignities_essential_dignities, leaving the agent to guess which variant to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use, when-not-to-use, or alternative-tool guidance anywhere in the description. The only routing-like content is a group tag and endpoint path, which tell the agent where the tool lives but not when to choose it over the highly similar helb_ and hand_ Hellenistic tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_joys_of_planetsJoys of PlanetsBRead-onlyIdempotentInspect
Classical planetary joys (Sun-Leo-9th, etc.).
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/joys-of-planets] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| evaluations | No | |
| planetsInJoy | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, closed-world and non-destructive behavior, so the safety profile is covered. The description adds two genuinely useful facts beyond annotations — the credit cost (10, Tier 1) and the required parameter set. It does not disclose how timezone/ayanamsa defaults affect results, which matters for a chart tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Compact and front-loaded: the meaning sentence comes first, followed by terse bracketed metadata. No meandering prose. The bracket fields are dense but each carries operational value, so little is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, and annotations cover the safety profile; required inputs and cost are given. However, for a 15-parameter chart tool the absence of any guidance on zodiac/house/ayanamsa options leaves the definition only minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description must compensate, but it only restates the four required parameters already marked required in the schema. It says nothing about behavior-affecting optional params (zodiacType, houseSystem, ayanamsa, timezone vs timezoneOffset) that materially change the output, leaving those enums unexplained in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific astrological resource ('Classical planetary joys') and anchors it with a concrete example ('Sun-Leo-9th'), so an agent can tell what domain it computes. The '[Group: Hellenistic: Brennan tradition]' tag distinguishes it from the many other Hellenistic sibling tools. It lacks an explicit verb (e.g. 'returns/computes'), keeping it just short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives, no prerequisite context (it needs a full birth moment), and no routing to related tools such as lots_15 or bonifications_maltreatments. The only usage signal is the machine-readable bracket metadata listing required params and cost.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_lots_1515 Hermetic LotsBRead-onlyIdempotentInspect
All 15 Hermetic Lots per Brennan §11.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/lots-15] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| lots | No | |
| sect | No | |
| count | No | |
| source | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and closed-world, so the safety profile is covered. The description adds genuinely new operational context the annotations do not carry: the credit cost and tier (10 credits, Tier 1) and the exact required input set, which is comparable to disclosing rate/cost constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the purpose, then terse bracketed metadata with no filler sentences. The endpoint URL is the only arguably redundant element, and the whole definition is short enough to scan instantly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and required inputs plus cost are stated. However, for a 15-parameter tool at 33% schema coverage sitting in a dense cluster of near-identical Hellenistic lot tools, the definition does not explain the optional parameters or justify choosing it over its siblings, leaving real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries the burden of compensating — and it does not. It repeats the four required fields already listed in the schema's 'required' array and says nothing about the meaningful optional inputs (fields compact mode, ayanamsa/sidereal school, timezone vs timezoneOffset, zodiacType, houseSystem, precision).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ('All 15 Hermetic Lots per Brennan §11') and scopes it to a named author/tradition, which separates it from the Greenbaum, Hand and Schmidt lot tools in the sibling list. It never states an explicit verb (compute/derive), and the differentiation from other lot endpoints is carried by the '[Group: Hellenistic: Brennan tradition]' tag rather than prose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the agent must infer that this is the tool for the 15-lot Brennan set specifically. There is no statement of when to prefer this over astroway_hellenistic_hand_lots_of_seven or the Greenbaum lot endpoints, and no prerequisites beyond the required-field list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_profections_detailProfections DetailBRead-onlyIdempotentInspect
Annual profection year-lord with full classical condition.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/profections-detail] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| ageYear | No | |
| doctrine | No | |
| yearLord | No | |
| disclaimer | No | |
| yearEndDate | No | |
| profectedSign | No | |
| yearStartDate | No | |
| monthlyProfections | No | |
| yearLordNatalContext | No | |
| profectedHouseFromAsc | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds real context beyond that – a cost of 10 credits (Tier 1) and the POST endpoint – which an agent budgeting calls needs, but says nothing about result shape or cost-sensitive behavior beyond the flat price.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short lines with the purpose front-loaded and only machine-relevant metadata (group, endpoint, cost) following. No sentence is padded; the only mild inefficiency is that the bracket metadata is structured like tags rather than prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a rich input schema, an output schema, and full annotations, the description's omission of return-value detail is acceptable. The remaining gap is routing: in a namespace containing astroway_prognostics_profections and astroway_helb_profections_detail it never says what 'detail' adds or when this Brennan variant is the right choice.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the embedded birth-data object is documented in exhaustive detail, so the baseline of 3 applies. The description contributes nothing about parameters, notably not explaining targetAge, the single required key that actually distinguishes this call from a plain natal chart.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Annual profection year-lord with full classical condition' names a specific astrological computation and its scope ('full classical condition'), and the [Hellenistic: Brennan tradition] group tag separates it from greenbaum/schmidt/helb profection siblings. It is however a noun phrase with no verb, and it does not explicitly contrast with astroway_prognostics_profections or astroway_helb_profections_detail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no statement of when to prefer this over the other profection tools in the namespace. The 'annual' phrasing implies a yearly time-lord context but nothing tells the agent which sibling to pick for a non-Brennan or non-detail request.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_time_lord_stackTime-Lord StackCRead-onlyIdempotentInspect
Combined stack of profection + ZR + decennials for a date.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/time-lord-stack] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| stack | No | |
| source | No | |
| ageYear | No | |
| doctrine | No | |
| yearStart | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint=false, openWorldHint=false), so the bar is lower. The description adds genuinely useful business context the annotations do not carry: the endpoint and a per-call cost of 10 credits (Tier 1). It says nothing about pagination, response shape, or how the combined output interleaves the three systems, but against annotations it is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence plus bracketed metadata; nothing is padded. It is arguably too terse, but every element present earns its place and the core purpose leads.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described. But for a combined time-lord synthesis tool, the description leaves open what the stack actually reports and how targetAge interacts with the birth date, which is exactly the context an agent needs to call it instead of the three single-technique siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the nested birth-data schema is unusually detailed (timezone vs timezoneOffset rules, houseSystem letters, rejected short forms). The description adds nothing about parameters and does not explain the relationship between date and targetAge. Baseline 3 is correct when the schema does all the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names the three techniques it merges (profection, ZR, decennials) and the input it works from (a date), so the general function is inferable. However, 'ZR' is an unexpanded abbreviation and the description never distinguishes this aggregate from the sibling tools that each deliver one of these techniques individually (profections_detail, zodiacal_releasing_*, hand_decennials). It states a purpose but does not let an agent cleanly separate it from its neighbours.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of the individual profection/ZR/decennial tools as alternatives. An agent receiving this has to guess whether the combined stack or the single-technique sibling is the right call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_triplicity_rulersTriplicity RulersBRead-onlyIdempotentInspect
Dorothean triplicity rulers (day/night/common).
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/triplicity-rulers] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No | |
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds two genuinely useful behavioral facts not in the annotations: the credit cost (10 credits, Tier 1) and the exact set of required inputs. It says nothing about output shape or determinism 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is terse and front-loaded: the substantive sentence comes first and the bracketed metadata follows in scannable lines. Every line carries information (cost, endpoint, required inputs), though the body sentence is arguably under-specified rather than merely concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and cost/required inputs are covered. However, for a 15-parameter calculation endpoint with only 33% schema coverage, the description leaves key optional parameters and the distinction from the near-identical helb sibling undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description is expected to compensate, but it merely re-lists the four required parameters (date, time, latitude, longitude) that the schema already marks required. It adds no meaning for the 11 optional parameters such as houseSystem, zodiacType, ayanamsa, or the compact-mode fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (triplicity rulers) with its tradition flavor (Dorothean) and the three rulership categories it returns (day/night/common), which is more informative than a bare name restatement. It does not, however, distinguish itself from the very similar sibling astroway_helb_triplicity_rulers, leaving the agent to infer the difference from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description contains no when-to-use guidance, no prerequisites, and no mention of alternatives such as astroway_helb_triplicity_rulers or astroway_dignities_almuten. Only the template metadata (required params, cost) hints at anything operational.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_zodiacal_releasing_fortuneZR from FortuneBRead-onlyIdempotentInspect
Zodiacal Releasing from Lot of Fortune: body/livelihood periods.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zodiacal-releasing-fortune] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| summary | No | |
| doctrine | No | |
| disclaimer | No | |
| l1Sequence | No | |
| lotOfFortune | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds genuinely useful operational context absent from annotations: the cost tier (10 credits) and the endpoint/group membership. It does not explain computation behavior or how the periods are derived, but the annotation bar is met.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded in a single clause, followed by bracketed metadata (group, endpoint, cost) that is compact and scannable. Nothing is wasted, though the body is arguably too thin to be ideal for a tool in such a crowded namespace.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return-format explanation is not required, and the input schema is comprehensive. The gaps are around disambiguation from the many ZR siblings and any sense of what the result is used for, which leaves the definition merely adequate for a specialized computation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the birth-data schema is extremely well documented (formats, tz handling, houseSystem letters, rejection of short forms). The description adds no parameter-level information, so the baseline 3 for fully-covered schemas is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific technique (Zodiacal Releasing) and its source point (Lot of Fortune), and adds the derived subject matter ('body/livelihood periods'), which is enough to distinguish it conceptually from the Spirit-based sibling. However, it never names the near-duplicate siblings (e.g. astroway_helb_zodiacal_releasing_fortune, astroway_hellenistic_brennan_zodiacal_releasing_spirit), so an agent cannot separate the Brennan variant from the helb variant on the description alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus the Spirit variant, the peak-periods sibling, or the helb duplicate. The description gives no context on what question the output answers or what prerequisites apply. Only the technique name implies usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_zodiacal_releasing_spiritZR from SpiritARead-onlyIdempotentInspect
Zodiacal Releasing from Lot of Spirit: career/action periods.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zodiacal-releasing-spirit] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| summary | No | |
| doctrine | No | |
| disclaimer | No | |
| l1Sequence | No | |
| lotOfSpirit | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive safety, so the bar is lower; the description adds genuinely useful behavioral facts not in any structured field — the credit cost (10 credits, Tier 1), the group/tradition, and the exact endpoint. It still says nothing about how long the computation spans or how ageing periods are resolved, so it stops short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The technique and its domain are front-loaded in the first line, with metadata confined to bracketed lines. There is no filler prose, though the three metadata lines are boilerplate shared across the whole tool family rather than content specific to this tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and full schema coverage, return values and parameters need no further explanation. However, for a specialised time-lord technique with several near-identical ZR siblings, an agent is given no cue for choosing this one over the fortune/peak-period variants — the one gap that matters here is left unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the description adds no parameter meaning whatsoever — nothing about the required birth data, the optional 'years' horizon (default 80), or the compact-mode 'fields'/'precision' controls. Baseline 3 is the correct score when the schema carries the entire parameter burden.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the exact Hellenistic technique ('Zodiacal Releasing from Lot of Spirit') and the domain it covers ('career/action periods'), which is a specific resource, not a tautology. The 'Spirit' qualifier implicitly separates it from the sibling zodiacal_releasing_fortune and zr_peak_periods tools, but the description never makes that contrast explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'career/action periods' implies the use case (career timing questions) but there is no explicit when-to-use/when-not guidance and no mention of the alternative ZR tools (fortune, loosing of bond, peak periods) that share nearly identical input signatures. Usage is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_zr_loosing_of_bondZR Loosing of BondCRead-onlyIdempotentInspect
Loosing of Bond detection within ZR sequence.
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zr-loosing-of-bond] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | No | |
| source | No | |
| fromLot | No | |
| lotInfo | No | |
| doctrine | No | |
| disclaimer | No | |
| loosingOfBondEvents | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered without the description. The description does add real value beyond the annotations by disclosing the cost (10 credits, Tier 1) and the transport endpoint, which the structured fields do not carry. It says nothing, however, about prerequisites (e.g. that a natal chart with a ZR sequence is required) or any rate/size constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short, front-loaded with the core action, and contains no filler or repetition. The three bracketed metadata lines are compact and each carries distinct information, so nothing meaningful is wasted for the size given.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is an obscure Hellenistic technique paired with a bare one-line label; without any definition of Loosing of Bond or of the ZR (Zodiacal Releasing) sequence, an agent cannot know what the result signifies or when it is the right tool. An output schema does exist, so return values need not be explained, but the conceptual gap and the inability to separate it from the 'helb' twin remain serious omissions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the nested body schema already documents date, time, latitude, longitude, timezone and houseSystem in unusual depth. The description adds nothing about the parameters (including the meaning of the 'years' field for ZR span), so the baseline 3 for fully documented schema applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names an action and resource ('Loosing of Bond detection within ZR sequence'), which is more specific than a tautology, but 'ZR' and 'Loosing of Bond' are unexplained jargon and the phrasing is close to restating the title. Critically, it makes no attempt to distinguish itself from near-identical siblings such as astroway_helb_zr_loosing_of_bond or astroway_hellenistic_brennan_zr_peak_periods, so an agent cannot route between them from the text alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use, when-not-to-use, or alternative-tool guidance anywhere in the description. The bracketed Group/Endpoint/Cost lines are operational metadata, not usage guidance. An agent must infer selection purely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_brennan_zr_peak_periodsZR Peak PeriodsCRead-onlyIdempotentInspect
Peak periods in ZR (angular signs from Lot).
[Group: Hellenistic: Brennan tradition] [Endpoint: POST /v1/hellenistic/brennan/zr-peak-periods] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | No | |
| source | No | |
| fromLot | No | |
| doctrine | No | |
| disclaimer | No | |
| peakPeriods | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds genuinely new behavioral context — a 10-credit Tier 1 cost and the POST endpoint — but says nothing about what is computed, the technique's assumptions, or rate/limit behavior. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and front-loaded: the resource line comes first, followed by structured metadata tags. Nothing is padded, though the metadata lines contribute more routing/tooling value than descriptive value, and the core sentence is doing minimal work.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described. However, for a specialized Hellenistic timing technique the description leaves the core question unanswered — what a peak period is, what the Lot-based angular-sign calculation yields, and how it relates to the ZR fortune/spirit/loosing-of-bond siblings. Input richness cannot compensate for an opaque purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema is unusually rich (timezone, timezoneOffset, houseSystem letters, field names are all documented inline), so the schema carries the parameter burden. The description adds nothing about parameters — notably it never mentions the `years` span (20-120, default 80) that shapes peak-period output. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource ("Peak periods") and glosses the abbreviation ZR as "angular signs from Lot", which is slightly more than the bare title. But it never states a verb (compute/return/derive) and never explains what a "peak period" actually is in this technique, so an agent cannot tell what it produces. It also fails to distinguish itself from the many ZR-adjacent siblings (zodiacal_releasing_fortune, zodiacal_releasing_spirit, zr_loosing_of_bond).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use statement, no prerequisites, and no mention of alternatives among the ZR siblings. The only routing-adjacent information is the [Group: Hellenistic: Brennan tradition] tag and the endpoint/cost metadata, which give context but not selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_antiscia_hellenisticAntiscia (Hellenistic)CRead-onlyIdempotentInspect
Solstitial antiscia per Hellenistic conventions.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/antiscia-hellenistic] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No | |
| antiscionContacts | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and closed-world behavior, so the safety profile is covered. The description adds genuinely useful non-annotation facts: the exact endpoint and a 10-credit cost. It does not disclose the response shape, but an output schema exists so that burden is reduced.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One-line summary followed by dense, front-loaded bracket metadata; nothing is wasted. The format is terse and scannable, though the summary line itself is quite thin.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and annotations covering safety, the description need not explain return values, and it does note cost and endpoint. Still, for a 15-parameter calculation tool with three enums and low schema coverage, it leaves the optional parameters and the distinction from sibling antiscia tools unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description needs to compensate. Instead it merely repeats the four required parameters already declared in the schema and adds nothing about the eleven optional ones (houseSystem, zodiacType, fields, precision, ayanamsa, etc.). It adds no semantic value beyond structured data.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific astrological technique (solstitial antiscia) within a named tradition (Hellenistic/Greenbaum), which is more specific than a tautology. However, it supplies no verb describing what is computed or returned, and it does not distinguish itself from near-identical siblings such as astroway_helg_antiscia_hellenistic or astroway_aspects_antiscia. Purpose is identifiable but underspecified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus the many antiscia-related siblings (astroway_aspects_antiscia, astroway_helg_antiscia_hellenistic, astroway_hellenistic_greenbaum_contra_antiscia). The bracket metadata gives operational facts (required params, cost, endpoint) but nothing about selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_contra_antisciaContra-AntisciaCRead-onlyIdempotentInspect
Equinoctial contra-antiscia.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/contra-antiscia] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No | |
| contraAntiscionContacts | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and closed-world scope, so safety is covered. The description does add genuinely useful operational context the annotations lack: an explicit 10-credit Tier 1 cost and the POST endpoint. It says nothing about precision of results or what the computation covers, though.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata format is compact and front-loads the tool term, and the cost line is worth its space. However, the '[Required: ...]' line is pure duplication of the schema and the block contains no explanatory prose at all, so brevity here is achieved by omission rather than by tight writing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation in the description. Even accounting for that, a 15-parameter astrological computation tool with no statement of what it computes, no differentiation from near-identical siblings, and undocumented optional parameters is not complete enough for reliable selection or invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only the four required parameters are listed, which merely repeats the schema's 'required' array. With 15 parameters and 33% schema description coverage, the description needed to explain the optional parameters such as cosmogram, zodiacType, houseSystem and the compact-mode fields, and it explains none of them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is essentially a restatement of the name and title: 'Equinoctial contra-antiscia' names no verb, no output, and no scope of computation. The one distinguishing word, 'equinoctial', is left unexplained, so an agent cannot tell what is actually being calculated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no reference to alternatives, despite siblings like astroway_helg_contra_antiscia, astroway_helg_antiscia_hellenistic, and astroway_aspects_antiscia that an agent must choose between. The '[Group: Hellenistic: Greenbaum tradition]' tag gives weak routing context but no selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_daimon_tyche_axisDaimon-Tyche AxisCRead-onlyIdempotentInspect
Spirit-Fortune axis as primary chart spine.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/daimon-tyche-axis] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| axis | No | |
| basis | No | |
| source | No | |
| spirit | No | |
| fortune | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description's genuinely additive facts are the credit cost (10 credits, Tier 1) and the HTTP endpoint, which help an agent judge expense. It says nothing about sect handling, computational prerequisites, or whether ayanamsa/zodiacType materially change the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short, front-loaded with the purpose line, and the bracketed metadata lines are scannable rather than prose padding. Slightly over-reliant on a structured block instead of explanatory sentences, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter computation with an output schema present (so return values need no explanation), the description is still too thin: it never explains what the Daimon/Tyche axis is used for astrologically, how it relates to the duplicative sibling, or which of the many optional parameters actually matter. An agent has the mechanics but not the judgment needed to invoke it well.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries real burden — yet it only restates the four required fields already declared in the schema's required array. The eleven optional parameters (city, name, cosmogram, zodiacType, houseSystem, ayanamsaId, etc.) receive no clarification, and the sidereal/tropical distinction is especially relevant for a Hellenistic tool and goes unmentioned.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Spirit-Fortune axis as primary chart spine" names a recognizable astrological construct, so the resource is identifiable, but there is no verb describing what is produced (compute? list? interpret?) and no indication of what the axis output means for the agent. It also fails to distinguish itself from the near-identical sibling astroway_helg_daimon_tyche_axis, which carries the same title-ish concept under a different prefix.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The bracketed block states required inputs and cost but gives no when-to-use guidance, no prerequisites, and no routing advice relative to the many other Hellenistic lot/spine tools in the sibling list. An agent cannot tell from this text why it would pick this over astroway_helg_daimon_tyche_axis or the Greenbaum lots tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_dodekatemoriaDodekatemoriaCRead-onlyIdempotentInspect
Dodecatemoria sub-divisions of zodiac.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/dodekatemoria] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so safety behavior is covered. The description adds genuinely useful context beyond that — the POST endpoint, the four required inputs, and the 10-credit (Tier 1) cost — but says nothing about what the calculation produces or any preconditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and cleanly front-loaded, with the bracket block giving a scannable structure and no filler sentences. However, the brevity crosses into under-specification rather than tight writing, so it is efficient without being informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter Hellenistic calculation with sidereal/house-system options and an output schema, an agent needs to know what is being computed and under which frame; the description supplies none of that. The existence of an output schema excuses it from describing return values, but it is still too thin for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33% across 15 parameters, so the description should compensate, but all it offers is '[Required: date, time, latitude, longitude]', which merely restates the schema's own required array. It adds no meaning for the eleven optional parameters (zodiacType, houseSystem, ayanamsa/ayanamsaId, precision, cosmogram, etc.).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The text 'Dodecatemoria sub-divisions of zodiac' essentially restates the tool name/title with a dictionary gloss; it contains no verb and never says what the tool actually computes or returns (e.g. dodekatemoria placements for a chart). It also does nothing to distinguish this from near-neighbor siblings like astroway_hellenistic_greenbaum_duodecima or astroway_helg_zodiacal_decans.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use statement and no named alternative or exclusion. The only context is the bracket metadata (group/endpoint/required/cost), which is operational plumbing rather than guidance about when this tool is the right choice over its several Hellenistic subdivisions siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_duodecimaDuodecimaCRead-onlyIdempotentInspect
Duodecima: 2.5° micro-sign per planet.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/duodecima] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely new operational facts — cost of 10 credits (Tier 1) and the endpoint — but says nothing about return shape, edge cases, or what a call produces beyond the concept label. Modest added value over annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The concept is front-loaded in the first line and the bracketed metadata block is scannable with zero filler. It is tight, though arguably too terse for a 15-parameter tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex 15-parameter tool with three enum sets and a close sibling, the description is far too thin: no usage context, no differentiation, no parameter explanation. An output schema exists so return values need not be described, but the input-side and selection-side gaps remain substantial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries a heavy burden and does not meet it. It merely restates the four required fields already listed in the schema, and explains none of ayanamsa, zodiacType, houseSystem, timezone, fields, or precision.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment 'Duodecima: 2.5° micro-sign per planet' names the technique and its output granularity but contains no verb describing the operation and relies on specialized jargon. It fails to distinguish itself from the sibling astroway_hellenistic_greenbaum_dodekatemoria, which the agent will likely confuse with it. Purpose is implied rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus the very similar dodekatemoria sibling, nor any prerequisite or context statement. The bracket summary supplies required fields and cost but nothing about selection conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_lot_of_eros_detailLot of Eros DetailCRead-onlyIdempotentInspect
Eros calculation with conditions analysis.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/lot-of-eros-detail] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| eros | No | |
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| venusContact | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful non-schema context: the endpoint, the required inputs, and a 10-credit Tier 1 cost. It still says nothing about what 'conditions analysis' computes or any auth/rate constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is front-loaded and the bracketed metadata block is compact and scannable, with no redundant prose. It is efficiently sized for the information it actually conveys.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described. But for a 15-parameter Hellenistic calculation with 33% schema coverage, no explanation of the parameters, no differentiation from the Greenbaum/HELG twins, and an undefined 'conditions analysis' scope, the definition is not complete enough to invoke confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description should compensate; instead it merely restates the four required fields, which the schema's required array already declares. Undocumented options like ayanamsa, houseSystem, zodiacType and fields get no explanation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
It names a resource (Eros lot) and a computation, so the agent knows it produces an Eros-related chart output. However, "conditions analysis" is undefined jargon, and nothing distinguishes it from near-duplicate siblings such as astroway_helg_lot_of_eros_detail or astroway_hellenistic_hand_lots_of_seven.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no routing among the many Hellenistic lot tools. The presence of a near-identical astroway_helg_lot_of_eros_detail sibling makes the absence of differentiation especially costly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_quality_of_timeQuality of TimeCRead-onlyIdempotentInspect
Synchronistic quality of a moment.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/quality-of-time] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| qualityOfTime | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/no-open-world, so the safety profile is covered. The description adds genuinely useful behavior context — cost (10 credits, Tier 1) and the coarse endpoint — but says nothing about what the response contains or any limits. Nothing contradicts the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and the bracketed metadata is easy to scan, but the one prose sentence carries almost no information while the blocks relay facts (group, endpoint, cost) that mostly duplicate the tool name and schema. It is compact without being informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter tool with a full output schema, the description omits the two things that matter most: what 'quality of time' actually returns and how it differs from astroway_helg_quality_of_time. An output schema exists so return values needn't be described, but purpose and sibling disambiguation are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description should compensate — instead it merely repeats the four required parameters (date, time, latitude, longitude) already marked required in the schema and adds nothing about the 11 optional ones (ayanamsa, timezone, houseSystem, zodiacType, fields, precision). With low coverage, this leaves a large semantic gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says only 'Synchronistic quality of a moment,' which essentially restates the name/title ('Quality of Time') without stating what the tool computes or returns. The Greenbaum group label and endpoint give some framing, but an agent cannot tell what output it would get, and it is indistinguishable from the near-identical sibling astroway_helg_quality_of_time.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative guidance is provided. With siblings like astroway_helg_quality_of_time and the electional/muhurta tools in the catalog, the agent has no instruction on which 'quality of time' variant to select or when this one applies.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_sphaera_barbaricaSphaera BarbaricaCRead-onlyIdempotentInspect
Constellations beyond the zodiac.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/sphaera-barbarica] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| angles | No | |
| source | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavioral facts the annotations lack: a cost of 10 credits (Tier 1) and the POST endpoint. However it says nothing about what the operation evaluates or how expensive/large the result is; the cost line is the only substantive addition. The POST endpoint alongside readOnlyHint=true is unusual but not a contradiction, since POST is a transport detail rather than a side-effect claim.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and scannable, with the bracketed metadata lines front-loading group, endpoint, required params, and cost in a consistent format. The trade-off is that the brevity reflects under-specification rather than efficient compression: the opening line carries almost no information and no sentence explains the tool's actual behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter tool with only 33% schema coverage, the description is far too thin. An output schema exists, so return values need not be explained, but the description never clarifies which branch parameters (zodiacType tropical vs sidereal, ayanamsa, houseSystem) matter for this Hellenistic technique, nor how it differs from the sibling helg_sphaera_barbarica duplicate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so two-thirds of the 15 parameters (zodiacType, houseSystem, cosmogram, name, city, and others) are undocumented in both schema and description. The description's only parameter content is '[Required: date, time, latitude, longitude]', which merely restates the schema's required array and adds no syntax, format, or default guidance. It does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a four-word gloss of the Latin name ('Constellations beyond the zodiac') with no verb and no statement of what computation or output the tool produces. An agent cannot tell from this whether the tool returns paranatellonta/extra-zodiacal star risings, a text passage, or a rendering. It also does nothing to distinguish itself from the near-identical sibling astroway_helg_sphaera_barbarica.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative-tool guidance appears anywhere. The only routing signal is the bracketed '[Group: Hellenistic: Greenbaum tradition]' label, which hints at the tradition family but does not say why an agent would pick this over the Brennan, Schmidt, Hand, or helg variants, nor over the duplicate helg_sphaera_barbarica.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_temple_doctrineTemple DoctrineCRead-onlyIdempotentInspect
Temple-house assignments per Greenbaum.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/temple-doctrine] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| temples | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, so safety is covered. The description adds genuinely useful operational context the annotations don't carry: the POST endpoint and the 10-credit (Tier 1) cost. However it says nothing about what the temple-house doctrine output contains or any constraint on its interpretation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short sentence plus compact bracket metadata; the core purpose is front-loaded and there is no filler prose. The metadata lines are dense and scannable, though the block conveys more about billing than about usage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return formatting needn't be explained, but the semantic gaps remain: an agent knows the required inputs and the cost yet has no idea what a 'temple doctrine' result represents or when to invoke it. For a 15-parameter chart endpoint with 33% schema coverage, the description is not sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description must compensate, and it does not. It merely repeats the four required fields already enforced by the schema and omits any mention of the substantive optional inputs (ayanamsa/ayanamsaId, zodiacType, houseSystem, timezone vs timezoneOffset, fields/precision).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Temple-house assignments per Greenbaum" names a specific calculation and its tradition, which is better than a tautology, but it uses domain jargon ("temple-house assignments") that an agent cannot translate into what the tool actually computes or returns. It also does not distinguish itself from the near-identical sibling astroway_helg_temple_doctrine.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites, and names no alternative tool (e.g. why pick this over astroway_helg_temple_doctrine or the other Greenbaum endpoints). The [Required:] line restates the schema's required array but does not tell the agent when this tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_greenbaum_zodiacal_decansZodiacal DecansCRead-onlyIdempotentInspect
Zodiacal decans with attributions.
[Group: Hellenistic: Greenbaum tradition] [Endpoint: POST /v1/hellenistic/greenbaum/zodiacal-decans] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful non-schema context in the cost (10 credits, Tier 1) and the explicit endpoint and required-parameter list, but says nothing about computation scope, what the 'attributions' contain, or any limits. With annotations carrying safety, the added cost line justifies a 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and the bracketed block is scannable, so there is no wasted prose. However, the brevity is under-specification rather than economy: the front sentence carries almost no information and the rest is administrative metadata.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, but for a 15-parameter chart tool with only 33% schema coverage the description leaves too much unstated — notably which optional settings matter for a decan chart and how timezone, zodiac type and ayanamsa interact. The definition is not complete enough to invoke confidently without reading the schema in depth.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description must compensate and does not. It merely repeats the four required parameters (date, time, latitude, longitude) that the schema's required array already enforces, and says nothing about the semantically important undocumented options such as zodiacType, houseSystem, timezone/timezoneOffset, fields, or ayanamsaId.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource ('zodiacal decans') and notes it includes 'attributions', but it is essentially a restatement of the title with a qualifier rather than a distinct verb+resource statement. It offers no differentiation from the very close sibling astroway_helg_zodiacal_decans (or the related decan/dodekatemoria siblings), so an agent cannot tell why this Greenbaum version exists alongside them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only operational guidance is bracketed metadata: required inputs, endpoint, and cost tier. There is no statement of when to reach for decans, when to prefer a sibling traditon (e.g. helg_zodiacal_decans or dodekatemoria), or what a decan computation is appropriate for. The agent must infer usage entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_boundsEgyptian BoundsCRead-onlyIdempotentInspect
Ptolemaic Egyptian bounds rulers.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/bounds] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No | |
| egyptianBoundsTable | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/destructiveHint=false, so the safety profile is covered. The description usefully adds the cost (10 credits, Tier 1), the endpoint, and the required inputs, which are not in the annotations. It says nothing about response shape or how the ruler assignment is bounded, but with annotations and an output schema in place the added cost/endpoint context earns a mid score.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely tight: one subject line followed by bracketed metadata, with the technique name front-loaded. Nothing is padded, though the metadata block substitutes for content rather than supplementing it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter chart-computation endpoint this is thin. The output schema relieves it of describing return values, but it leaves unaddressed which optional inputs matter (sidereal school, zodiac type, house system) and give no indication of when the bounds technique is applicable — a gap that matters in a catalogue with hundreds of near-identical Hellenistic siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description is expected to compensate and does not. It merely restates the four required fields already encoded in the schema's required array and explains none of the optional parameters (ayanamsa, zodiacType, houseSystem, fields, precision, timezone) or how they alter the bound-ruler output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific astrological technique (Ptolemaic Egyptian bounds rulers) and the group tag places it in the Hand tradition rather than the Greenbaum/Schmidt/Brennan branches. However, it never states the verb or what is actually returned — no indication that it computes/returns the bound (term) ruler per zodiacal segment for a chart. It also does not distinguish itself from close siblings like astroway_hellenistic_hand_decanic_rulers, whose name suggests a similar ruler-table output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites, and no alternatives. The only contextual lines are the endpoint, required-field list, and credit cost, which are operational metadata rather than usage guidance. An agent must infer from the technique name alone whether bounds are the right tool versus decans, critical degrees, or lots.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_critical_degreesCritical DegreesCRead-onlyIdempotentInspect
Critical degrees by modality.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/critical-degrees] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| onCritical | No | |
| criticalDegreeMap | No |
TDQS
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 adds only the required-param list and a credit cost, repeating what structured fields already supply, and discloses nothing about output shape, deterministic computation, or cost-tier behavior beyond the tag.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is tiny and contains no filler, but it is essentially a tag block rather than a front-loaded sentence about what the tool does. It is concise without being informative, which is adequate but not earning its structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter, 33%-documented calculation endpoint within a huge sibling set, the definition provides required params and cost but no explanation of the concept, vintage/lineage, or output. The presence of an output schema relieves the need to describe return values, but the missing purpose and disambiguation leave the definition incomplete for correct tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 33% with 15 params, so the schema documents a minority (fields, precision, ayanamsa, timezone, timezoneOffset) while many — city, name, cosmogram, zodiacType, houseSystem, the ayanamsa enum — go undocumented. The description only names the four required params (date, time, latitude, longitude) without adding format or semantic detail, so it neither compensates for the gap nor muddies it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Critical degrees by modality' names the astrological concept, and the bracketed group/endpoint tags identify it as a Hellenistic Hand-tradition calculation. But the description never states in plain prose what the tool returns or does — it relies on the title and endpoint to carry meaning, so the purpose is only inferable, not stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no mention of any sibling alternative. In a catalog of hundreds of Hellenistic tools (hand_bounds, hand_perfections, hand_quarter_lord, etc.), the definition gives the agent nothing to disambiguate against.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_decanic_rulersDecanic RulersCRead-onlyIdempotentInspect
Chaldean decan rulers per planet.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/decanic-rulers] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description only needs to add operational context. It does contribute the cost tier (10 credits, Tier 1) and the exact endpoint/method, which are genuinely useful for budgeting and routing, but says nothing about result shape beyond the title, latency, or whether the calc is tropical-friendly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single line plus a compact metadata block; the required-input and cost lines are front-loaded and scannable. It borders on being too terse to be useful, but nothing is padding, so it does not cost much.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, but for a 15-parameter tool with 33% schema coverage and a crowded sibling set the description is far too thin: it gives no indication which optional parameters matter for this tradition or how the result differs from neighboring decan/ruler endpoints. An agent could call it, but with little confidence it chose correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries a compensation burden it does not meet. It re-lists the four required parameters (date, time, latitude, longitude), which the schema already marks required, and adds nothing about the many undescribed optional parameters (zodiacType, houseSystem, cosmogram, ayanamsaId), whose relevance to a decan-ruler calculation is left to guesswork.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific astrological technique ('Chaldean decan rulers per planet'), which is enough for an agent to know this produces decan-ruler assignments rather than a general chart. It does not, however, distinguish itself from the several decan/ruler-adjacent siblings (astroway_hellenistic_hand_decennials, astroway_helg_zodiacal_decans, the Greenbaum zodiacal_decans) that a selector must choose among, so it stays below a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use statement, no prerequisite, and no named alternative. The bracketed block lists required inputs and cost but never says in what situation an agent should pick this tool over the dozen other Hellenistic 'Hand' tools or the decan tools from other traditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_decennialsDecennialsCRead-onlyIdempotentInspect
Hand's decennial timing technique.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/decennials] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No | |
| source | No | |
| doctrine | No | |
| currentAge | No | |
| decennials | No | |
| disclaimer | No | |
| currentRuler | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description does add non-annotation context — cost tier (10 credits) and the POST endpoint — but says nothing about what is calculated, whether a birth chart is required, or how lifespanYears affects the period count. With annotations carrying the safety burden, this is adequate-but-thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely short and front-loaded: one line of purpose followed by three bracketed metadata lines, with no wasted prose. Its brevity is close to under-specification rather than verbosity, but structurally it is clean.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and the input schema is well documented. Still, this is one of hundreds of chart-calculation siblings, and the description supplies none of the interpretive context (what a decennial period means, how many are returned, relation to lifespanYears) that would let an agent choose it confidently over the neighboring time-lord tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the nested birth-data schema is extensively documented (formats, timezone handling, houseSystem letters), so the schema does the heavy lifting. The description adds no parameter meaning of its own — notably it never explains lifespanYears or the compact-mode fields/precision parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the technique ('Hand's decennial timing technique') and situates it in the Hellenistic Hand tradition, so an agent knows roughly what domain it computes in. However, it is nearly a restatement of the tool name ('decennials' → 'decennial timing technique') and never says what the tool produces or how it differs from siblings such as astroway_hellenistic_hand_perfections or astroway_hellenistic_brennan_time_lord_stack. No verb, scope, or output is stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no conditions selecting this over the many other Hellenistic timing siblings, and no prerequisites mentioned. The endpoint and credit cost lines are logistical metadata, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_horoscopos_trineHoroskopos TrineCRead-onlyIdempotentInspect
Bodies trining the rising sign.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/horoscopos-trine] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| planetsInTrine | No | |
| horoscoposTrine | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly=true, idempotent=true, non-destructive, closed-world, so the safety profile is fully covered. The description adds only the cost tier and endpoint, useful operational context but no behavioral detail beyond annotations. A 3 reflects that the description neither adds much nor contradicts.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four lines, each earning its place: the one-line purpose plus bracketed metadata for group, endpoint, required params, and cost. Efficient and front-loaded, though the bracketed lines are somewhat machine-oriented rather than explanatory.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter astrological calculation tool with only 33% schema coverage and many domain-specific options (ayanamsa schools, house systems, zodiac types), the description is far too thin. It doesn't explain what the output contains, what 'trine to rising sign' means in context, or how the optional params affect results, even though an output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 33%, so many parameters (city, name, cosmogram, zodiacType, houseSystem, ayanamsaId) are undocumented. The description lists required params (date, time, latitude, longitude) which matches the schema's required array, but adds no syntax or semantic meaning beyond that, and doesn't compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Bodies trining the rising sign' states the astrological phenomenon being computed, which is more specific than restating the name 'Horoskopos Trine'. However, it doesn't fully explain what the tool returns (a list of bodies? an analysis?) and doesn't differentiate from sibling Hellenistic tools like hand_perfections or hand_bounds.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no alternatives named, no prerequisites. The endpoint metadata implies it takes a birth chart, but nothing tells an agent when this Hellenistic technique is appropriate versus the dozens of sibling Hellenistic tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_longevity_hylegHyleg LongevityCRead-onlyIdempotentInspect
Tetrabiblos III.10 hyleg + alcocoden.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/longevity-hyleg] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| hyleg | No | |
| notes | No | |
| source | No | |
| caveats | No | |
| doctrine | No | |
| alcocoden | No | |
| hylegSign | No | |
| disclaimer | No | |
| alcocodenSign | No | |
| hylegLongitude | No | |
| lifespanEstimate | No | |
| planetYearsTable | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/destructiveHint, so the safety profile is covered. The description adds genuinely useful operational facts not in annotations: the POST endpoint, the 10-credit Tier 1 cost, and the required field set. It does not disclose what the computation returns or how alcocoden weighting is resolved, but with an output schema present that gap is partly covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata block is compact and front-loads the doctrine reference, but it is schema-like plumbing rather than prose an agent can reason over, and it spends lines restating required params and endpoint path. Nothing is wasted per se, but nothing informs tool selection either.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter, computationally specialized Hellenistic tool with many near-identical siblings, the description omits what the output represents (hyleg/alcocoden years?), how it differs from astroway_dignities_hyleg, and any handling of optional sidereal/house-system parameters. The output schema spares it from explaining return values, but selection-critical context is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description should compensate for undocumented params (city, date, time, name, cosmogram, zodiacType, houseSystem). Instead it merely restates the four required names already listed in the schema's 'required' array, adding no semantics for any optional parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific technique ('Tetrabiblos III.10 hyleg + alcocoden'), which tells a domain-aware agent this computes the classical longevity doctrine rather than a generic chart. However, it never states a verb like 'compute' and does not differentiate itself from the very similar sibling astroway_dignities_hyleg, so the agent must infer which hyleg tool to use.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no named alternative despite a near-duplicate sibling (astroway_dignities_hyleg) and a dozen other hellenistic_hand_* tools. The only routing signal is the '[Group: Hellenistic: Hand tradition]' tag, which is categorization rather than guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_lots_of_sevenLots of SevenCRead-onlyIdempotentInspect
Seven primary Lots per Hand.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/lots-of-seven] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No | |
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| lotsOfSeven | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context absent from the annotations: a billing cost (10 credits, Tier 1) and the required parameter set, plus the HTTP endpoint. It still says nothing about the result shape, but the output schema may cover that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very compact and front-loaded: a one-line purpose followed by bracketed metadata, with no filler or repetition. The brevity works against it only in that the purpose line is under-specified rather than efficiently stated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so the description needn't explain return values, and annotations cover the safety profile. Still, for a 15-parameter Hellenistic computation with a crowded sibling family, the absence of any selection guidance or parameter semantics leaves real gaps an agent must resolve by inspecting the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description must compensate for the undocumented parameters (city, name, cosmogram, zodiacType, houseSystem, ayanamsaId, and the four required core fields). Instead it merely repeats the four required parameters that the schema already marks required, adding no format, unit, or defaulting semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The line 'Seven primary Lots per Hand' is largely a restatement of the tool name (hand_lots_of_seven) and supplies no verb or statement of what is computed or returned. It does hint at the tradition scope ('per Hand'), which loosely separates it from brennan_lots_15 or greenbaum variants, but the separation is carried by the name, not the description.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance. The description lists required inputs and cost but never says when an agent should pick this Hand-tradition lots endpoint over the other lots tools (brennan_lots_15, greenbaum_lot_of_eros_detail, helg_lot_of_eros_detail).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_perfectionsPerfectionsCRead-onlyIdempotentInspect
Perfection-of-aspects timing.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/perfections] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| ageYear | No | |
| doctrine | No | |
| yearLord | No | |
| disclaimer | No | |
| profectedSign | No | |
| yearStartDate | No | |
| profectedHouse | No | |
| perfectionChain | No | |
| yearLordNatalSign | No | |
| yearLordBoundRuler | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered elsewhere. The description adds genuinely useful behavior beyond the annotations: the POST endpoint and a concrete cost of 10 credits (Tier 1), which matters for budgeting calls. It does not contradict the annotations, but it discloses nothing about what the computation returns or its limitations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and front-loaded: the technique statement leads and the group/endpoint/cost metadata follows in brackets with no filler. It is efficient, though the brevity is partly under-specification rather than disciplined concision.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists and the rich body schema is fully described, so return values and parameter mechanics are covered. What remains missing for a specialized Hellenistic technique is any explanation of what a 'perfection' result means or how targetAge shapes it; the annotations and cost line partially compensate but the definition is thin for the domain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents body, fields, precision and every nested birth-data field in detail (including ayanamsa, timezone, houseSystem letter conventions). The description adds nothing about parameters, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific Hellenistic technique (perfection of aspects) and scopes it to timing, which is marginally more than the name/title alone. However it gives no verb or resource and no indication of what is computed or returned, so an agent cannot tell what the output actually is. It also fails to distinguish this from the many other Hellenistic timing techniques among the siblings (decennials, profections, zodiacal releasing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no conditions or prerequisites, and no mention of alternative tools such as the sibling Hellenistic Hand techniques. The bracketed metadata (group/endpoint/cost) is operational detail, not usage guidance. The agent is left to infer everything from the technique name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_quarter_lordQuarter LordCRead-onlyIdempotentInspect
Lord of the chart's seasonal quarter.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/quarter-lord] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| lord | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered by structured data. The description adds only the cost (10 credits, Tier 1) and the endpoint path, which is genuinely useful operational context beyond the annotations, but it discloses nothing about what is computed or what the technique depends on.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded purpose sentence followed by three bracketed metadata tags; there is no padding or repetition. It is tight, though the brevity is under-specification rather than genuine economy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool requires a full natal chart plus a targetDate and returns a specialized Hellenistic time-lord result, yet the description never says what a quarter lord means in practice or how the target date affects the result. With an output schema present, return format need not be explained, but the routing and conceptual context are missing for a technique-level endpoint.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the body/timezone/houseSystem fields carry extensive documentation, so the baseline is 3. The description adds no parameter meaning at all — notably it never explains the targetDate field that distinguishes this from a plain natal chart call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Lord of the chart's seasonal quarter" essentially restates the tool name (quarter_lord). It names the astrological concept but gives no action verb, no scope, and no differentiation from the many other Hellenistic: Hand time-lord siblings (decennials, perfections, bounds, sect_strength), which an agent cannot disambiguate from this line alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of any alternative tool. The agent is given no condition under which this technique should be chosen over the other Hellenistic time-lord endpoints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_hand_sect_strengthSect Strength ScoreCRead-onlyIdempotentInspect
Numerical sect-light dignity scoring.
[Group: Hellenistic: Hand tradition] [Endpoint: POST /v1/hellenistic/hand/sect-strength] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| score | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, and the description is consistent with them. It adds one genuinely new behavioral fact — the 10-credit Tier 1 cost — but says nothing about what the score means, its range, or error behavior. With annotations carrying the safety profile, this is adequate but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The front-loaded one-line purpose followed by compact bracketed tags is efficient and easy to scan, with no wasted prose. The trade-off is that brevity is achieved partly by omitting needed guidance rather than by tight writing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter, niche Hellenistic endpoint with dozens of near-neighbor siblings and an existing output schema, the definition is under-complete: no usage routing, no explanation of the score's semantics, and no coverage of the optional parameters. Only the bare mechanical facts are supplied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description should compensate, but it merely restates the four required fields (date, time, latitude, longitude) already flagged in the schema. None of the eleven optional parameters (zodiacType, houseSystem, ayanamsa, timezone, fields, etc.) are illuminated, leaving a real gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Numerical sect-light dignity scoring' names a specific technique (sect-light dignity) and the output form (a numerical score), so an agent can grasp what is computed. However, it does not distinguish this Hand-tradition sect tool from sibling sect-related tools such as astroway_hellenistic_schmidt_sect_classes, and there is no verb describing the operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides only group, endpoint, required params, and cost — no when-to-use, when-not, or alternative guidance. Nothing tells the agent when to choose this over the many other Hellenistic sect/dignity endpoints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_aspectual_typologyAspectual TypologyCRead-onlyIdempotentInspect
Aspect classes per Schmidt.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/aspectual-typology] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| typology | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower. The description usefully adds billing cost (10 credits, Tier 1) and the four required inputs, but says nothing about what the computation actually produces or how it behaves on edge inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is tight and front-loaded with structured metadata, with zero wasted words. However, the brevity reflects under-specification rather than disciplined concision there simply is not enough content to guide an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present the return format needn't be described, but for a 15-parameter astrological computation the definition omits any explanation of what aspect classes are being classified or how the sidereal/house-system options affect results. It is too thin to be operationally complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is low (33% across 15 parameters), so the description is expected to compensate, but it only re-lists the four required parameters that the schema already marks required. It adds no meaning for ayanamsa, zodiacType, houseSystem, fields, precision, or timezone handling.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Aspect classes per Schmidt" is a bare noun phrase that essentially restates the title "Aspectual Typology" with no verb and no statement of what the tool returns. It gives no basis for distinguishing it from near-identical siblings such as astroway_hels_aspectual_typology or the other Schmidt-tradition tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description contains only group/endpoint/required/cost metadata and says nothing about when to reach for this tool versus the many neighboring Hellenistic or Schmidt tools. No prerequisites, no exclusions, no alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_derivative_houses_methodDerivative HousesCRead-onlyIdempotentInspect
Derived-house technique.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/derivative-houses-method] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| examples | No | |
| disclaimer | No | |
| derivativeMap | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world behavior, so the safety profile is covered. The description adds genuinely useful context the annotations do not: cost (10 credits, Tier 1) and the POST endpoint. It says nothing about the shape of the calculation or output, but with annotations carrying safety this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata lines are scannable and front-loaded, and no sentence is padded. However, the whole payload is a stub rather than a tight summary, so it reads as under-specification rather than disciplined conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and annotations cover safety. But for a 15-parameter specialized Hellenistic technique with a nearly identical sibling, the description omits what the technique produces, how it differs from astroway_hels_derivative_houses_method, and any guidance on the optional chart-configuration parameters that heavily shape the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries a compensation burden it does not meet. It lists the four required fields (date, time, latitude, longitude), which merely duplicates the schema's required array, and explains none of the optional inputs (fields, ayanamsa, zodiacType, houseSystem, precision, etc.).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Derived-house technique" restates the title/name without stating what the tool actually computes or returns. There is no verb or resource explanation, and no differentiation from the near-identical sibling astroway_hels_derivative_houses_method. The metadata brackets add endpoint/cost framing but not purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no named alternatives are given. In a catalog of hundreds of astrology tools, the agent has no signal for choosing this over the sibling derivative-houses methods. The only contextual hint is the implicit group label.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_ennea_mooiraiEnnea MooiraiCRead-onlyIdempotentInspect
Nine fates classification.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/ennea-mooirai] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description usefully adds the cost (10 credits, Tier 1) and the endpoint verb, which are real behavioral facts not in the annotations. It does not describe the response shape or any limits, so it is adequate but not rich.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracket-tag format is compact and front-loads the label, group, endpoint, required params and cost in one block, so nothing is wasteful. However, the brevity comes at the cost of substance — it is concise by omission rather than by tight writing, and the key sentence ('Nine fates classification') conveys little.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter astrological computation with an output schema, the description leaves the core question unanswered: what the 'ennea mooirai' classification is and what an agent gets back. It omits any mention of sidereal/tropical assumptions or house system defaults that materially change the result. The endpoint/cost metadata helps, but the definition is not sufficient to invoke and interpret the tool confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 15 parameters and only 33% schema description coverage, the description needs to compensate, and it does not. It merely repeats the four required parameters (date, time, latitude, longitude) that the schema already marks as required, adding no format, range or meaning for ayanamsa, zodiacType, houseSystem, timezoneOffset or the compact-mode fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The one-line 'Nine fates classification' essentially restates the tool title (Ennea Mooirai = nine fates) without saying what is computed, what chart inputs produce, or what the classification means. Among the many astroway_hellenistic_schmidt_* siblings, nothing distinguishes this tool's output. No verb, no resource specificity beyond a vague label.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The '[Group: Hellenistic: Schmidt tradition]' tag gives weak implied routing among the Schmidt/Brennan/Greenbaum/Hand families, but there is no explicit statement of when to pick this tool over, say, astroway_hellenistic_schmidt_sect_classes or the greenbaum equivalents. No when-not guidance and no prerequisites beyond the required-parameter list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_levels_of_causationLevels of CausationCRead-onlyIdempotentInspect
Schmidt's causation tiers.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/levels-of-causation] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| heimarmene_fate | No | |
| pronoia_providence | No | |
| sympatheia_resonance | No | |
| oikeiosis_familiarity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive, so safety is covered. The description adds genuinely useful non-schema facts: the POST endpoint, the required input set, and the 10-credit Tier 1 cost. It still says nothing about what the computation returns conceptually or any limits beyond cost.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata block is short and front-loaded, but it is a template that conveys no domain content, so its efficiency is partly wasted space. Nothing is padded, yet little earns its place beyond cost and required inputs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a complex 15-parameter, 3-enum astrological computation with a defined output schema, and the description never explains what the tiers of causation are or what the response contains conceptually. Output schema exists so return values need not be explained, but the technique itself is left opaque.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description should carry weight, but it only echoes the four required params already enforced by the schema. Specialized inputs like ayanamsa, zodiacType, houseSystem, fields, and precision receive no clarification here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Schmidt's causation tiers" restates the tool name/title rather than describing an action or output. It gives no verb+resource framing and does not distinguish it from the many other Schmidt-tradition siblings such as astroway_hellenistic_schmidt_sect_classes or astroway_hellenistic_schmidt_aspectual_typology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The block lists required inputs, endpoint, and cost but never says when to use this tool, when not to, or which sibling to prefer. An agent has no basis for choosing between the ~20 Schmidt/Hand/Hellenistic technique endpoints beyond the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_lord_of_predictionLord of PredictionCRead-onlyIdempotentInspect
Predictive significator selection.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/lord-of-prediction] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| lord | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety and repeatability profile is fully covered structurally. The description's only additive behavioral fact is the cost tier (10 credits, Tier 1), which is genuine context not present in the annotations. It says nothing about what the computation depends on, latency, or determinism across different targetAge values, so it goes no further than the metadata block.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four words of purpose plus bracketed metadata lines — front-loaded but severely under-specified rather than concise. The structure is clean, but the content budget is spent on group/endpoint/cost labels instead of the one thing an agent needs (what the tool does and why targetAge matters).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations cover the safety profile. What is missing is any statement of what a 'lord of prediction' computation yields for a given targetAge — the required, tool-specific parameter is entirely unmentioned, leaving an agent unable to judge whether this output fits their question. For a specialized Hellenistic tool with a required age input, this is a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%: the body schema documents birth data, timezone handling, houseSystem letters, and the compact-mode fields/precision parameters in detail. The description adds nothing about parameters, and most notably never mentions targetAge, the one required field specific to this tool. With the schema doing all the work, the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
'Predictive significator selection' is essentially a tautological gloss on the tool's title 'Lord of Prediction' — it names a topic area but never says what is actually computed or returned. It does not distinguish this tool from its near-identical sibling astroway_hels_lord_of_prediction or from the other schmidt-family tools such as derivative_houses_method or levels_of_causation. An agent cannot tell from this text what makes the tool distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no named alternative. The only routing aid is the '[Group: Hellenistic: Schmidt tradition]' tag, which is taxonomic rather than actionable. The metadata does state cost (10 credits, Tier 1) and the endpoint, which is mildly useful for budgeting but not for selecting this tool over a sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_morning_evening_starsMorning/Evening StarsCRead-onlyIdempotentInspect
Morning vs evening star classification.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/morning-evening-stars] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| venus | No | |
| source | No | |
| mercury | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful operational context: the POST endpoint and the 10-credit Tier 1 cost, which the agent cannot get from annotations. It does not describe what the classification computes or any edge cases, but against annotations that bar is lower.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short, front-loaded with the one-line purpose, and the bracketed metadata is compact and scannable. Nothing is padded, though the bracketed lines carry most of the information load rather than the prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained. But for a specialized Hellenistic technique with 15 parameters at 33% coverage, the description does not say what a morning/evening star classification actually yields or when the sidereal/tropical and ayanamsa options matter, leaving the agent under-equipped for a niche computation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description would need to compensate, and it does not. It merely lists the four required parameters (date, time, latitude, longitude), which the schema already marks as required, adding no syntax, format, or meaning. Several params (city, name, cosmogram, zodiacType, houseSystem, ayanamsaId) remain undocumented in both places.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Morning vs evening star classification' names a specific astrological concept and the action of classifying, so the resource is identifiable. However, it is essentially a restatement of the tool name, and it does not differentiate from the near-identical sibling astroway_hels_morning_evening_stars or from astroway_hellenistic_schmidt_stations_and_phases. An agent cannot tell why it should pick this Schmidt variant over the others from the description alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description contains only a metadata block (group, endpoint, required params, cost) and gives no when-to-use context, no prerequisites, and no alternatives. With two other Schmidt/hels sibling tools covering closely related Hellenistic classifications, the absence of routing guidance is a real gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_qualities_and_quantitiesQualities & QuantitiesCRead-onlyIdempotentInspect
Qualitative + quantitative analysis.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/qualities-and-quantities] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description adds genuinely useful operational context beyond that: the POST endpoint, the required inputs, and the 10-credit Tier 1 cost. It does not disclose anything about output shape or depth, but the annotations carry the behavioral burden.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata block is compact and front-loaded, and every line carries information (group, endpoint, required inputs, cost). However, the one prose sentence is wasted space because it is a tautology rather than an actual purpose statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and cost/endpoint are given. But for a 15-parameter tool with only 33% schema coverage, the description is not complete enough: an agent cannot determine what the analysis produces or how to choose among the ~15 Schmidt-tradition siblings, and optional parameters are entirely undocumented.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description must compensate and does not. It merely repeats the four required parameters already marked required in the schema (date, time, latitude, longitude) and says nothing about the semantics of houseSystem, zodiacType, ayanamsa, cosmogram, or the compact-mode fields/precision options.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Qualitative + quantitative analysis" is essentially a restatement of the title "Qualities & Quantities" with no verb or resource naming what is actually computed. The group tag (Hellenistic: Schmidt tradition) and endpoint give context but do not tell the agent what astrological analysis this returns or how it differs from sibling Schmidt tools like ennea_mooirai or levels_of_causation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative guidance appears anywhere in the description. The bracketed metadata lists required inputs and cost but never states the conditions that should select this tool over the many other Hellenistic/Schmidt endpoints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_sect_classesSect ClassesCRead-onlyIdempotentInspect
Sect classifications per Schmidt.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/sect-classes] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| sect | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful operational context not in the annotations: the POST endpoint and the cost (10 credits, Tier 1), which is important for a paid API. It still says nothing about what the computation is sensitive to or how the response is shaped.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short and front-loaded with the purpose sentence, which is good. However, the bracketed metadata block is largely boilerplate, and the [Required: ...] line duplicates the schema's required array rather than earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter computed-chart tool, the definition is thin: it never explains what sect classifications mean, which optional inputs change the result, or how this endpoint relates to its Schmidt/Hellenistic siblings. The existence of an output schema excuses it from describing return values, but the input-side and selection-side gaps remain significant.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description must compensate for undocumented options like houseSystem, zodiacType, and ayanamsa that plausibly affect the classification. Instead it only restates the four required parameters, which the schema already marks as required, adding no semantics beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Sect classifications per Schmidt" identifies the resource and the tradition, but it is a noun phrase with no verb and no explanation of what a sect classification actually is (day/night sect, planet placement in sect, etc.). It does not distinguish itself from nearby siblings such as astroway_hellenistic_hand_sect_strength or the other Schmidt-tradition tools, so the agent must guess which sect-related endpoint is wanted.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use guidance, no prerequisites, and no alternatives. The bracketed [Group]/[Endpoint]/[Required] lines are routing metadata, not selection criteria, so an agent cannot tell from this text when to call this instead of hand_sect_strength or any other Schmidt tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_stations_and_phasesStations & PhasesCRead-onlyIdempotentInspect
Heliacal phases and stations.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/stations-and-phases] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive, and closed-world, so the safety profile is covered. The description adds genuinely new context in the credit cost (10 credits, Tier 1) and the endpoint, but says nothing about what is computed, return shape, or any domain-specific caveats for heliacal phase/station calculations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, front-loaded, and cleanly delimited with bracketed metadata blocks that are easy to scan. The fault is under-specification rather than bloat, so conciseness itself is handled well.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter, POST-based ephemeris tool in a crowded Hellenistic family, this is not complete enough: the functional statement is four words and the rest is boilerplate (group, endpoint, required, cost). An output schema exists so return values needn't be explained, but the description still leaves the agent without enough to confidently distinguish or correctly invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description should compensate, yet it merely repeats the four required fields already marked required in the schema and adds no semantics for the other eleven parameters. No format, range, or interaction guidance (e.g. timezone vs timezoneOffset) is contributed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific astrological resource ('Heliacal phases and stations'), but it is a noun phrase with no verb and largely restates the title 'Stations & Phases'. It gives no indication of what the tool actually computes or returns, and it does not distinguish itself from near-identical siblings such as astroway_hels_stations_and_phases or astroway_hellenistic_schmidt_morning_evening_stars.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives, despite dozens of closely related Hellenistic and Schmidt-tradition siblings. The only usage-adjacent content is a restatement of the required parameters, which is not routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hellenistic_schmidt_stoic_elementhoodStoic ElementhoodCRead-onlyIdempotentInspect
Stoic doctrine of elemental natures.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/stoic-elementhood] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| elements | No | |
| qualities | No | |
| disclaimer | No | |
| dominantElement | No | |
| dominantQuality | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description does add useful operational context the annotations lack: the cost tier (10 credits) and endpoint/group. It says nothing about response size or rate behavior, and the output schema carries the return shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Compact and front-loaded with a clear key-value metadata block; nothing is wasted. The terseness comes at the cost of informativeness, but structurally it is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter tool with low schema coverage, the description is far too thin: it does not explain what the tool produces, how it differs from the redundant hels/Schmidt siblings, or how optional parameters affect results. An agent could invoke it, but not confidently select it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With only 33% schema description coverage across 15 parameters, the description should compensate, but it merely lists the four required parameters (date, time, latitude, longitude), which the schema already marks as required. It adds no format, default, or interaction meaning for the many optional parameters (ayanamsa, houseSystem, precision, fields, etc.).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description says only "Stoic doctrine of elemental natures," which essentially restates the tool name/title rather than stating what the tool computes or returns. It names no verb and gives no way to distinguish it from the many sibling Schmidt/hels Hellenistic doctrine tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives among the dozens of near-identical siblings (e.g. astroway_hels_stoic_elementhood, astroway_hellenistic_schmidt_*). The bracketed metadata is invocation plumbing, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_aspectual_typologyAspectual TypologyCRead-onlyIdempotentInspect
Aspect classes per Schmidt.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/aspectual-typology] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_aspectual_typology.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| typology | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the description adds the credit cost (10 credits, Tier 1) and the endpoint group, which is genuinely useful quota information not present in structured fields. It says nothing about response shape, caching, or limits, but the output schema covers return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very compact and front-loaded: the purpose sentence comes first, followed by scannable bracketed metadata for group, endpoint, required inputs, and cost. The POST endpoint URL is arguably dead weight for an MCP caller, but nothing else is padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be described, and annotations carry the safety profile. What remains missing is any explanation of the eleven optional parameters this tool exposes, which for a 15-param astrological calculation is a meaningful gap even if the shared parameter block is documented elsewhere.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (15 params), and the description contributes nothing beyond restating the four required fields already declared in the schema's `required` array. Cryptic params such as the 25 single-letter `houseSystem` enum, `cosmogram`, `zodiacType`, and `ayanamsaId` are left unexplained in both schema and description, so the description fails to compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Aspect classes per Schmidt" names a topical domain but no verb or output, so the agent cannot tell what is actually computed or returned. It does distinguish the tool topically from the many other Schmidt modules (sect_classes, lord_of_prediction, etc.) and discloses that it duplicates the canonical `astroway_hellenistic_schmidt_aspectual_typology`, which aids identification, but the purpose itself remains vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to choose this tool over the other Schmidt analysis modules or when its output is relevant. The only selection-relevant signal is the parenthetical alias note, which implies the agent should not call both this and the canonical name; that is identity information, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_derivative_houses_methodDerivative HousesCRead-onlyIdempotentInspect
Derived-house technique.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/derivative-houses-method] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_derivative_houses_method.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| examples | No | |
| disclaimer | No | |
| derivativeMap | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely non-structured context: the HTTP endpoint, the four required inputs, and the cost (10 credits, Tier 1). It discloses nothing about what the computation returns or any limits, but the cost and required-input callout exceed what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata layout is compact, front-loaded and easy to scan, with no prose padding. It is slightly redundant in restating the required-parameter list that the schema already declares, but overall it wastes little space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be spelled out, but for a technique-specific Hellenistic computation sitting among hundreds of siblings the description leaves the agent without any sense of what the result represents or when it applies. Combined with 33% schema coverage, the definition is too thin to be complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description is expected to compensate — instead it merely repeats the four required fields already declared in the schema's required array. No meaning is added for the many undocumented parameters (houseSystem, zodiacType, cosmogram, etc.), leaving the agent to infer their effect.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Derived-house technique" essentially restates the title "Derivative Houses" without saying what the tool computes, what a derived house is, or what output the agent gets. The endpoint and group tags identify the family but add no functional verb+resource description. An agent cannot tell from this text what this call actually produces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no exclusions, and no comparison to alternatives. The only routing hint is the parenthetical that this is a "Cursor-friendly alias" for astroway_hellenistic_schmidt_derivative_houses_method, which does tell the agent it is a duplicate name — useful, but it is one hint, not usage guidance across the vast Hellenistic/Schmidt sibling set.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_levels_of_causationLevels of CausationCRead-onlyIdempotentInspect
Schmidt's causation tiers.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/levels-of-causation] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_levels_of_causation.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| disclaimer | No | |
| heimarmene_fate | No | |
| pronoia_providence | No | |
| sympatheia_resonance | No | |
| oikeiosis_familiarity | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safe-read profile is covered. The description adds genuinely useful context beyond that: the credit cost (10 credits, Tier 1), the endpoint, and the confirmed required parameters. It does not say anything further about output behavior, but the safety bar is already met by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short, front-loaded, and structured with bracketed metadata lines, so nothing is padded or rambling. However, efficiency comes at the cost of substance: it is a stub rather than a concise description, so it only reaches the minimum-viable level.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values needn't be documented, but for a 15-parameter specialized Hellenistic technique the description never explains what the tool actually outputs or how it relates to the Schmidt tradition. Listing required params, cost, and endpoint is not enough for an agent to use it confidently against the many near-identical siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description is expected to compensate for undocumented parameters (city, name, cosmogram, zodiacType, houseSystem, etc.) — it does not. It merely repeats the four required parameters that the schema already marks in its `required` array, adding no semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Schmidt's causation tiers" restates the title rather than describing an operation — there is no verb and no explanation of what the tool computes or returns. The only routing value is the note that it aliases `astroway_hellenistic_schmidt_levels_of_causation`, which helps identify the tool but not distinguish its function from siblings like `astroway_hels_aspectual_typology`.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of when this technique applies, and no mention of alternatives among the many `astroway_hels_*`/`astroway_hellenistic_schmidt_*` siblings. The bracketed metadata (group, endpoint, cost) is administrative, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_lord_of_predictionLord of PredictionCRead-onlyIdempotentInspect
Predictive significator selection.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/lord-of-prediction] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_lord_of_prediction.)
| Name | Required | Description | Default |
|---|---|---|---|
| body | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| lord | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this a read-only, idempotent, closed-world, non-destructive call, so safety is covered. The description adds genuine behavioral context the annotations do not: cost (10 credits, Tier 1) and the underlying endpoint. It does not describe the return shape, though an output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the purpose before a compact bracketed metadata block (group, endpoint, cost, alias). Every line carries distinct information with no filler, though the bracketed format is more machine-metadata than prose guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With full annotations, full schema coverage, and an output schema, most structured burden is already carried elsewhere. What remains missing is conceptual completeness: an agent still cannot tell what a 'Lord of Prediction' returns or how targetAge is applied, leaving the tool's core semantics under-explained despite the procedural metadata.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the nested body, fields, and precision parameters are already documented in structured data; the accepted response-'fields books baseline 3. The description adds no parameter meaning of its own (notably it says nothing about the required targetAge), so it neither helps nor compensates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase "Predictive significator selection" nominally pairs a resource (predictive significator) with an action (selection), but it is jargon-heavy and largely restates the title 'Lord of Prediction' without explaining what the technique produces. The most useful clarifying line is the alias note, which at least tells the agent this duplicates `astroway_hellenistic_schmidt_lord_of_prediction`, but nothing distinguishes it functionally from the other Schmidt-tradition siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives such as the canonical `astroway_hellenistic_schmidt_lord_of_prediction` or neighboring Schmidt techniques. The alias remark implies equivalence rather than a selection rule, and nothing states prerequisites (e.g., that targetAge drives predictive timing).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_morning_evening_starsMorning/Evening StarsBRead-onlyIdempotentInspect
Morning vs evening star classification.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/morning-evening-stars] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_morning_evening_stars.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| venus | No | |
| source | No | |
| mercury | No | |
| doctrine | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world, so the safety profile is covered. The description usefully adds cost (10 credits, Tier 1), the HTTP endpoint, and the fact that this is an alias of astroway_hellenistic_schmidt_morning_evening_stars — real behavioral context. It says nothing about what is computed or returned, but with annotations carrying the safety burden this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose is front-loaded, then bracketed metadata lines that are each scannable and factual, ending with the alias note. Nothing is padded, though the metadata block is somewhat dense relative to the single line of actual explanation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations cover safety. However, for a 15-parameter tool at 33% schema coverage, the description omits any guidance on the astrological configuration knobs (ayanamsa, zodiacType, houseSystem) or the meaning of the classification result, leaving it minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description is expected to compensate — but it only restates the four required fields already declared in the schema's required array. It adds no meaning for the required date/time/lat/long inputs and ignores undocumented optional parameters such as city, name, cosmogram, zodiacType, and houseSystem.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The opening line states a specific operation on a specific resource: classifying planets/stars as morning vs evening stars. The group tag '[Group: Hellenistic: Schmidt tradition]' and endpoint path differentiate it from the parallel Brennan/Greenbaum/Hand traditions in the sibling list. It stops short of explaining what the classification output means, but the purpose is clear enough to route correctly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives such as astroway_hels_stations_and_phases or the non-alias form of this same tool. The required-parameter list and cost note are operational facts, not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_qualities_and_quantitiesQualities & QuantitiesCRead-onlyIdempotentInspect
Qualitative + quantitative analysis.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/qualities-and-quantities] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_qualities_and_quantities.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the safe, idempotent, closed-world read profile, so the bar is low. The description adds genuinely useful non-annotation facts, namely the credit cost (10, Tier 1) and the HTTP endpoint, but says nothing about what the analysis produces or any rate/limit behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata blocks are compact and front-loaded with the purpose sentence first, so there is little waste. However the brevity reflects under-specification rather than tight writing, and the endpoint line earns its place only marginally.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 15 parameters, an output schema, and a specialized Hellenistic technique, the description should orient the agent on what the analysis yields and how it differs from other Schmidt endpoints. It supplies only grouping, cost, and an alias, leaving the conceptual behavior unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, so the description is expected to compensate for the 15 parameters. Instead it merely repeats the four required field names, which the schema already marks as required, and adds no meaning for the other eleven undocumented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Qualitative + quantitative analysis" essentially restates the title "Qualities & Quantities" without saying what is computed, what the Schmidt tradition contributes, or what a caller receives. The alias note and group tag do help route it to the correct Schmidt-school sibling, but the substantive purpose is a tautology.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative-selection guidance is given. Naming the parent tool as an alias implies equivalence but doesn't tell the agent when to pick the alias versus the full name, and required params/cost are metadata rather than usage criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_stations_and_phasesStations & PhasesBRead-onlyIdempotentInspect
Heliacal phases and stations.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/stations-and-phases] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_stations_and_phases.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| perPlanet | No | |
| disclaimer | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this a safe, idempotent, closed-world read. The description adds the credit cost (10 credits, Tier 1) and the endpoint, which annotations do not carry. It stops short of describing what the calculation returns or any limits on the date range.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose in the first clause, then packs metadata into bracketed lines. No wasted prose, though the bracketed bookkeeping is dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need no explanation, and cost/endpoint/required fields are covered. However, for a 15-parameter tool with low schema coverage, the definition leaves the agent guessing about the optional inputs and when this tool is the right choice.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description should compensate but does not. It merely restates the four required fields already listed in the schema and adds nothing about the condition-sensitive optional parameters such as ayanamsa, houseSystem, or zodiacType.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource ('heliacal phases and stations') and situates it in the Schmidt tradition group, which distinguishes it from the other Hellenistic sibling families. There is no explicit verb, but the calculation is named precisely enough. The alias note ties it to `astroway_hellenistic_schmidt_stations_and_phases`, aiding disambiguation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to reach for this rather than the canonical tool or any other Hellenistic sibling. The description gives endpoint, cost, and required inputs but no usage context, prerequisites, or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_hels_stoic_elementhoodStoic ElementhoodCRead-onlyIdempotentInspect
Stoic doctrine of elemental natures.
[Group: Hellenistic: Schmidt tradition] [Endpoint: POST /v1/hellenistic/schmidt/stoic-elementhood] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
(Cursor-friendly alias for astroway_hellenistic_schmidt_stoic_elementhood.)
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| source | No | |
| doctrine | No | |
| elements | No | |
| qualities | No | |
| disclaimer | No | |
| dominantElement | No | |
| dominantQuality | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The one real addition is the billing trait — [Cost: 10 credits (Tier 1)] — which is not in the schema or annotations and matters to an agent deciding whether to call it. Nothing else behavioral (error modes, limits) is disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The bracketed metadata block is scannable and front-loads the concept line, but much of it is scaffolding (endpoint path, required-params list) that duplicates structured data already available to the agent. The alias sentence earns its place; the endpoint and required lists do not.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and the annotations cover safety. However, for a doctrinally obscure tool with 15 parameters at 33% coverage, the description gives no sense of what the result represents or which optional parameters matter (e.g. ayanamsa/zodiacType shift the whole computation), leaving the agent under-equipped relative to the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, so the description should compensate for the 11 undocumented parameters, but it does not. The [Required: date, time, latitude, longitude] line merely restates what the schema's `required` array already says, adding zero meaning for city, name, cosmogram, zodiacType, houseSystem, or the compact-mode fields.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Stoic doctrine of elemental natures" names the subject area and the [Group: Hellenistic: Schmidt tradition] tag places it among the schmidt_* siblings, so it is not a pure tautology. But it never says what operation is performed or what the tool returns — a chart computation, a doctrinal text, or a classification — so an agent cannot tell what calling it actually yields.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The note that this is a cursor-friendly alias for `astroway_hellenistic_schmidt_stoic_elementhood` is genuinely useful routing information: it tells the agent this is the same capability under a short name and shouldn't be called alongside the canonical one. Beyond that there is no when-to-use/when-not guidance versus the other Schmidt or Hellenistic tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_horary_diagnosticsHorary DiagnosticsBRead-onlyIdempotentInspect
Run a full horary radicality diagnostic including early/late ASC, Via Combusta, Saturn in 7th, and considerations before judgement.
[Group: Horary] [Endpoint: POST /v1/horary/diagnostics] [Required: date, time, latitude, longitude] [Cost: 20 credits (Tier 2)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| issues | No | |
| passed | No | |
| radical | No | |
| recommendation | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely useful operational context beyond that: a cost of 20 credits (Tier 2), the POST endpoint, and the four required date/time/coordinate inputs. It stops short of describing determinism or any output characteristics, but the credit cost disclosure is a meaningful addition.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The prose is a single front-loaded sentence that names the tool's scope before any metadata, and the bracketed Group/Endpoint/Required/Cost block is scannable and each line carries distinct information. No redundant or filler sentences, though the required-fields line duplicates the schema's own required array.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and the annotations plus cost line cover the safety and budget concerns. However, for a 15-parameter tool with only 33% schema coverage and five horary siblings, the description omits both the alternative-tool routing and any explanation of the sidereal/house-system/timezone parameters that change the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, so the description must carry weight — yet it only restates the four required fields (date, time, latitude, longitude), which the schema's 'required' array already provides. Eleven optional parameters, including the semantically important timezone, timezoneOffset, houseSystem, ayanamsa/zodiacType and the compact-mode fields/precision options, receive no explanation in the description even though they materially affect the diagnostic.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Run a full horary radicality diagnostic') and enumerates the checks it covers (early/late ASC, Via Combusta, Saturn in 7th, considerations before judgement), which is far more informative than the title alone. It does not, however, explicitly distinguish itself from the sibling horary tools such as astroway_horary_horary or astroway_horary_via_combusta, so an agent must infer that this is the composite diagnostic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance: nothing says this should be run before judgement, nor whether the chart should first be cast with astroway_horary_horary. The 'radicality diagnostic' framing implies a pre-judgement check, but the agent is left to infer the workflow and the relationship to the five sibling horary tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_horary_horaryHorary ChartBRead-onlyIdempotentInspect
Calculate a horary chart for a question moment and return the chart data with radicality assessment and significator analysis.
[Group: Horary] [Endpoint: POST /v1/horary] [Required: date, time, latitude, longitude] [Cost: 20 credits (Tier 2)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| chart | No | |
| indicators | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds real context beyond that, namely the POST /v1/horary endpoint and the 20-credit Tier 2 cost, which is useful for budgeting calls, but it says nothing about latency, caching, or failure modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The prose sentence is front-loaded and the bracketed metadata block is compact, scannable, and carries cost and endpoint facts that are not available in structured fields. Slightly bulky formatting but no redundant padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 15-parameter tool with an output schema (so return values need no explanation), the definition covers the core purpose and cost but leaves the timezone-vs-timezoneOffset decision, house/zodiac selection, and sibling disambiguation to the schema alone. Adequate as a minimum viable description, not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description should compensate and does not. It merely restates the four required parameters (date, time, latitude, longitude) that the schema already marks as required, and adds no meaning for houseSystem, zodiacType, cosmogram, name, city, or the ayanamsa choices.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Calculate a horary chart') plus the outputs it yields ('radicality assessment and significator analysis'), which is more informative than the bare name. It does not, however, distinguish this core horary calculation from the five sibling horary tools (diagnostics, moon_aspects, moon_voc, planetary_hours, via_combusta) or from astroway_vedic_kp_horary.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no mention of alternatives, despite several closely related horary siblings. The only routing help is the required-parameter list and cost tag; an agent still has to guess whether this is the base chart call or one of the specialized horary endpoints.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_horary_moon_aspectsHorary Moon AspectsBRead-onlyIdempotentInspect
List all aspects the Moon will make in this horary chart before leaving its sign, the key timing tool in horary.
[Group: Horary] [Endpoint: POST /v1/horary/moon-aspects] [Required: date, time, latitude, longitude] [Cost: 20 credits (Tier 2)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| lastAspect | No | |
| nextAspect | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds the result-bounding rule (aspects only until sign exit) and the metadata block discloses a real behavioral trait not in the schema — cost of 20 credits (Tier 2) and the POST endpoint. It says nothing about auth, rate limits, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense, front-loaded sentence gives purpose and scope immediately, and the bracketed metadata block is scannable rather than prose. No filler sentences; only the lack of any alternative/comparison sentence keeps it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the description need not describe return values, and annotations cover the safety profile. However, for a 15-parameter chart tool sitting among five horary siblings and a near-identical astroway_calendar_moon_aspects, the definition leaves sibling selection and the ayanamsa/zodiac/house-system configuration entirely unexplained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% across 15 parameters, so the description carries a compensation burden it does not meet. It contributes only the required list (date, time, latitude, longitude), while ayanamsaId, zodiacType, houseSystem, cosmogram, city and name remain undocumented in either place, and nothing explains how the chart-defining inputs shape the returned aspects.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (list), a specific resource (Moon aspects), and a precise scope constraint (before the Moon leaves its sign), plus a role label (key timing tool in horary). This clearly separates it from astroway_horary_moon_voc (void of course) and astroway_horary_diagnostics, though it does not name those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"the key timing tool in horary" implies when the tool is appropriate, but there is no explicit when-to-use/when-not guidance, no statement of alternatives, and no prerequisites (e.g. that this is a standalone horary chart cast for the question moment). Usage is inferable rather than instructed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_horary_moon_vocHorary Moon VOCBRead-onlyIdempotentInspect
Check if the Moon is void-of-course in this horary chart and return the last aspect it made and when it enters the next sign.
[Group: Horary] [Endpoint: POST /v1/horary/moon-voc] [Required: date, time, latitude, longitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| city | No | ||
| date | Yes | ||
| name | No | ||
| time | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| ayanamsa | No | Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either. | |
| latitude | Yes | ||
| timezone | No | 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. | |
| cosmogram | No | ||
| longitude | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| ayanamsaId | No | ||
| zodiacType | No | ||
| houseSystem | No | P | |
| timezoneOffset | No | Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent. |
Output Schema
| Name | Required | Description |
|---|---|---|
| voc | No | |
| lastAspect | No | |
| nextSignEntry | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and non-destructive, so the safety profile is covered. The description adds two genuine behavioral facts (it reports the last aspect made and the ingress time), which is useful response-shape context beyond the annotations, but it says nothing about cost handling, caching, or edge cases like a Moon that never goes VOC.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The prose is a single well-formed sentence with the core action front-loaded, followed by a compact metadata block for endpoint/required/cost. Nothing is padded, though the metadata block partly duplicates structured fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be spelled out, and the description is complete for the core calculation. However, for a 15-parameter chart tool with only 33% schema coverage, the definition offers no guidance on the optional configuration parameters an agent must consider.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33%, and the four required parameters (date, time, latitude, longitude) carry no descriptions in either the schema or the prose. The description restates only the required field names in the metadata block, adding no meaning about format, timezone interaction, or how the many optional chart modifiers (houseSystem, zodiacType, ayanamsa) affect the result.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ("Check") and resource (Moon void-of-course) and even lists the returned fields (last aspect, next-sign ingress), so an agent knows exactly what it computes. It implicitly scopes to a horary chart, but it never distinguishes itself from the closely-named sibling astroway_calendar_moon_voc or astroway_stream_void_of_course.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase "in this horary chart" implies the horary/electional use case, but there is no explicit when-to-use guidance and no contrast with the calendar-based or streaming void-of-course siblings. Usage must be inferred from the group tag.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_horary_planetary_hoursHorary Planetary HoursBRead-onlyIdempotentInspect
Return the planetary hour ruler at the exact moment of a horary question and check if it matches the ASC ruler.
[Group: Horary] [Endpoint: POST /v1/horary/planetary-hours] [Required: dayOfWeek, sunriseHour, sunsetHour] [Cost: 20 credits (Tier 2)]
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| dayOfWeek | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| sunsetHour | Yes | ||
| currentHour | No | ||
| sunriseHour | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| match | No | |
| hourEnd | No | |
| ascRuler | No | |
| dayRuler | No | |
| hourRuler | No | |
| hourStart | No | |
| hourNumber | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds genuinely useful context the annotations don't: the POST endpoint, the required field set, and the '20 credits (Tier 2)' cost. It does not explain any rate limiting or result semantics, but with strong annotation coverage a 3 is fair.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose in the first sentence, followed by a compact bracketed metadata block (group, endpoint, required, cost). No filler, though the [Required: ...] line largely duplicates the schema's required array.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained. However, the description leaves the numeric parameter formats undefined and the role of currentHour (unlisted but clearly tied to 'the exact moment') unexplained, which is a meaningful gap for an otherwise simple read-only calculation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 33%: only 'fields' and 'precision' are documented. The description restates the three required params (already in the schema's required array) but gives no units or format for dayOfWeek (0-6? name?) or sunriseHour/sunsetHour (decimal hours? minutes?), and never mentions currentHour, which is schematically present and arguably essential to pin 'the exact moment'. That missing param is a real semantic gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'Return the planetary hour ruler' plus the dual scope 'at the exact moment of a horary question' and 'check if it matches the ASC ruler'. This is much clearer than the generic sibling astroway_calendar_planetary_hours, though it doesn't name that sibling explicitly to help disambiguation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies context (horary question + ASC comparison) but gives no explicit when-to-use, when-not-to-use, or alternatives. With near-identical siblings such as astroway_calendar_planetary_hours and astroway_horary_horary, the agent gets no routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_horary_via_combustaVia Combusta CheckARead-onlyIdempotentInspect
Check if the Moon or ASC is in the Via Combusta (15° Libra – 15° Scorpio), a classical prohibition in horary.
[Group: Horary] [Endpoint: POST /v1/horary/via-combusta] [Required: moonLongitude] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| moonLongitude | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| warning | No | |
| moonSign | No | |
| ascLongitude | No | |
| moonLongitude | No | |
| ascViaCombusta | No | |
| moonViaCombusta | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so safety is covered. The description adds genuine behavioral context beyond that: the exact degree range being tested, its status as a prohibition, and the 10-credit Tier 1 cost, which matters for budgeting repeated calls.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence delivers the purpose, range and astrological significance, followed by terse metadata lines for group, endpoint, required param and cost. Front-loaded and waste-free, though the ASC mention is a small inaccuracy that costs clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations carry the safety profile. The gap is input semantics: for a single-parameter tool the description never states what form moonLongitude takes, and it advertises an ASC check the tool cannot perform.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67%; moonLongitude has no description in the schema, and the description only implies it is the Moon's longitude without specifying the coordinate convention (e.g. 0–360 absolute ecliptic degrees vs. sign-relative). The reference to ASC checks suggests a second input that does not exist, adding confusion rather than clarity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and a precisely bounded astronomical condition ('check if ... in the Via Combusta (15° Libra – 15° Scorpio)'), which clearly separates it from siblings like horary_moon_voc or horary_diagnostics. It loses a point because it claims to check 'the Moon or ASC' while no ASC input exists in the schema, leaving the actual scope slightly ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'a classical prohibition in horary' implies why and when an agent would consult it, but there is no explicit when-to-use, when-not-to-use, or named alternative among the horary siblings. Usage is inferable rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_agent_debateMCP Agent DebateCRead-onlyIdempotentInspect
2 personas debate a topic, multi-round transcript.
[Group: MCP Advanced] [Endpoint: POST /v1/mcp/agent-debate] [Required: topic, agentA, agentB] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart | No | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| topic | Yes | ||
| agentA | Yes | ||
| agentB | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| rounds | No | ||
| language | No | en | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| transcript | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds genuinely useful operational context — cost (100 credits, Tier 4), the required-parameter set, and the endpoint. It stays silent on runtime behavior an agent might care about, such as whether the multi-round debate is long-running, streamed, or bounded in output size. The POST endpoint is not a contradiction of readOnlyHint, but it is worth noting.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Tight and well front-loaded: the core operation comes first, then compact bracketed metadata. Every line carries information (endpoint, required fields, cost) rather than filler. Its brevity is a virtue, though it edges into under-specification.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described. But for an 8-parameter tool with a nested chart object, aless-than-40% coverage, and a cost of 100 credits, the description leaves critical gaps — most importantly the semantics of agentA/agentB and the effect of rounds/language.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 38%, so the description carries a heavier burden, and it does not meet it. It restates the three required parameters that the schema already marks as required, but never explains what agentA/agentB actually are (persona strings? model IDs?) or what topic expects. Optional params like rounds, language, and fields get no mention.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Uses a specific verb-and-resource phrasing: '2 personas debate a topic, multi-round transcript.' An agent can grasp the operation immediately. However it does not differentiate itself from close siblings such as astroway_mcp_multi_agent_coordinate, astroway_mcp_ai_chat, or astroway_mcp_ai_comparison_coach, which plausibly overlap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no named alternative. The bracketed metadata lists required fields and cost but never says when this debate tool is preferable to multi-agent coordination or AI chat. The [Group: MCP Advanced] tag is organizational, not decision-supporting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_agent_pool_statusMCP Agent Pool StatusCRead-onlyIdempotentInspect
8 personas with specialties.
[Group: MCP Advanced] [Endpoint: GET /v1/mcp/agent-pool-status] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| count | No | |
| personas | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint false, and openWorldHint false. The description adds useful behavioral context in the form of the cost (10 credits, Tier 1) and HTTP method (GET), but does not describe what the status output contains or any auth/rate-limit details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The text is short but poorly structured: a vague fragment followed by bracketed metadata lines. It is under-specified rather than concise, and the opening line does not front-load a clear purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although an output schema exists and annotations cover the safety profile, the description still leaves the agent without a clear statement of what the tool does or when to call it. For a status endpoint in a large sibling set, this is a significant omission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the two optional parameters (fields, precision) are fully documented in the schema itself. The description adds no parameter meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives only a fragment, '8 personas with specialties,' which hints at pool composition but never states that this tool returns agent pool status or what that status contains. It lacks a clear verb and resource, and does not distinguish itself from siblings like astroway_mcp_multi_agent_coordinate or astroway_agent_tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool, when not to use it, or which sibling tool is the alternative. The description contains only metadata tags, not usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_ai_chatChart-grounded AI chatARead-onlyInspect
Chat answered from the positions we computed for this birth moment, not from the model's memory of a sun sign. Carries up to 10 turns of history, replies in 21 languages, and takes four voices through persona. Send your own provider key and the turn costs 5 credits instead of the endpoint price.
[Group: AI & MCP] [Endpoint: POST /v1/ai/chat] [Required: message] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart | No | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| history | No | ||
| message | Yes | ||
| persona | No | astrologer | |
| language | No | uk | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| model | No | |
| reply | No | |
| tokens | No | |
| persona | No | |
| language | No | |
| disclaimer | No | |
| duration_ms | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, non-destructive, open-world behavior, so the bar is lower; the description still adds real behavioral facts beyond them — a 10-turn history ceiling, 21 output languages, four selectable voices via persona, and a concrete pricing rule (5 credits with your own provider key vs. the endpoint price). It stops short of stating auth requirements or what happens when the history limit is exceeded. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences: the differentiator first, capabilities second, pricing last, followed by a compact metadata block (group, endpoint, required param, tier cost). Every clause carries new information and nothing is repeated from the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present the description needn't explain return values, and annotations cover the safety profile, so what remains — what the tool is for, its capability envelope, and its cost model — is covered. The main gap is that nothing tells an agent when this endpoint should be picked over the other AI/agent siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Top-level schema description coverage is only 43% (chart, fields and precision documented; message, persona, language and history not), so the description must compensate and partially does — it explains persona (four voices), history (~10 turns) and language (21 options). It says nothing about chart, fields compact-mode paths, or precision, though the nested chart schema does carry unusually rich self-documentation for those.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — an AI chat answered from computed natal-chart positions rather than the model's prior knowledge of a sun sign — and quantifies scope (10 turns, 21 languages, 4 personas). It clearly implies a different product from sibling AI utilities such as astroway_mcp_ai_explain_aspect or astroway_mcp_ai_comparison_coach, but never names them, so the differentiation is by tone rather than explicit contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied rather than stated: the credit-price note ('send your own provider key and the turn costs 5 credits instead of the endpoint price') hints this is a paid, higher-tier call, and 'chart-grounded' hints the input needs birth data. There is no explicit when-to-use-it, when-not-to, or routing rule against the other chat/agent endpoints in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_ai_comparison_coachComparison CoachBRead-onlyInspect
Coach two charts on relationship dynamics.
[Group: AI & MCP] [Endpoint: POST /v1/ai/comparison-coach] [Required: chart1, chart2, question] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart1 | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| chart2 | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| language | No | uk | |
| question | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| coaching | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true and idempotentHint=false, so the safety profile is covered. The description adds genuinely useful operational context (the 100-credit Tier 4 cost and the POST endpoint), but says nothing about the fact that an LLM-backed coach may return non-deterministic prose, what latency to expect, or what deprecates the idempotentHint=false signal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The four lines are tight and the purpose sentence is front-loaded ahead of the bracketed metadata block. Nothing is padded, though the metadata lines are boilerplate rather than definitional content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and the cost/endpoint block is present. But for a six-parameter AI tool embedded among dozens of similar compatibility siblings, the description lacks any hint of what the coaching output contains or what makes a good 'question', leaving the agent to guess at scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67% and the nested chart objects carry extensive inline documentation (formats, rejected short names, timezone semantics, houseSystem letters), so the schema does the heavy lifting. The description only restates the required parameters (chart1, chart2, question), adding no meaning for question, language, fields or precision. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (coach), the resources (two charts) and the domain (relationship dynamics), so the agent knows this produces interpretive guidance rather than raw chart data. It does not, however, distinguish itself from the many sibling compatibility tools (ashtakoot, dashakoota, compatibility_full) or from astroway_mcp_ai_chat, so sibling differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance, and no alternative is named. A reader cannot tell whether to reach for this AI coach versus the deterministic Vedic compatibility endpoints or multi_chart_context. The only constraints given are required parameters and cost, which are not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_ai_explain_aspectExplain AspectBRead-onlyInspect
Detailed explanation of an aspect between two planets.
[Group: AI & MCP] [Endpoint: POST /v1/ai/explain-aspect] [Required: planet1, planet2, aspectType] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart | No | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| planet1 | Yes | ||
| planet2 | Yes | ||
| language | No | uk | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| aspectType | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| explanation | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true and idempotentHint=false, so the safety profile is covered without the description. The description does add genuinely useful operational context not present in the annotations: the credit cost (100 credits, Tier 4) and the endpoint. However it never explains why a read-only operation is flagged non-idempotent (repeated calls likely yield differently worded narrative), which is the one behavioral trait an agent would most want here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The purpose sentence is front-loaded and the payload is small. The '[Required: planet1, planet2, aspectType]' line duplicates the schema's required array, but the cost and endpoint lines justify their space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described. But for a 7-parameter tool with a nested chart object and LLM-backed generation, the description omits the valid domain for planet1/planet2, any usage guidance versus explain_transit, and any hint about generation latency or variable output.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description lists the three required parameters, but schema coverage is only 43% and planet1/planet2 carry no description, no enum and no example anywhere in the schema, so the agent must guess the accepted form (planet names such as 'Mars'?). The description does not compensate for that gap, which is the weakest part of the definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific verb and resource: 'explanation of an aspect between two planets.' An agent can tell it apart from the sibling astroway_mcp_ai_explain_transit by the resource alone, but the description never makes that contrast explicit nor states what kind of explanation is produced.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of the sibling explain_transit as an alternative. The only contextual cues are bracketed metadata (endpoint, required fields, credit cost), which tell the agent what it costs but not when it should be chosen.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_ai_explain_transitExplain TransitBRead-onlyInspect
Explain a current transit hitting your natal chart.
[Group: AI & MCP] [Endpoint: POST /v1/ai/explain-transit] [Required: chart, transitDate, transitPlanet, natalPlanet, aspectType] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| language | No | uk | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. | |
| aspectType | Yes | ||
| natalPlanet | Yes | ||
| transitDate | Yes | ||
| transitPlanet | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| explanation | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description usefully adds the cost (100 credits, Tier 4) and the endpoint, which annotations do not provide. It does not explain why idempotentHint is false for a read-only call, nor what the AI explanation entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the purpose before the bracketed metadata. The bracketed group/endpoint/required/cost lines are slightly noisy but each carries compact information, so there is little waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described. But for a 5-required-parameter tool with a near-twin sibling, the description omits the disambiguation, parameter usage, and cost implications an agent needs before committing. It is minimally adequate rather than complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 38%, so the description should compensate, but it merely restates the five required parameter names that the schema already marks required and says nothing about what transitPlanet, natalPlanet, aspectType accept or how the optional fields/precision/language parameters behave. It adds no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Explain a current transit hitting your natal chart.' An agent can grasp the purpose immediately. However, it never distinguishes itself from the close sibling astroway_mcp_ai_explain_aspect, leaving the borderline case ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no exclusions, and no comparison to the near-identical sibling astroway_mcp_ai_explain_aspect. The '[Required: ...]' and '[Cost: ...]' lines are metadata, not routing guidance. The agent gets no help deciding between this and other AI tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_multi_agent_coordinateMCP Multi-Agent CoordinateCRead-onlyIdempotentInspect
Run N personas in parallel + LLM synthesis.
[Group: MCP Advanced] [Endpoint: POST /v1/mcp/multi-agent-coordinate] [Required: question, agents] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart | No | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| agents | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| language | No | en | |
| question | Yes | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| synthesis | No | |
| individual | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered structurally. The description usefully adds the cost (100 credits, Tier 4) and the endpoint/group, but says nothing about latency, response shape of the synthesis, or how many personas are permitted (schema caps at 4).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the operative sentence, followed by compact bracketed metadata; there is no filler prose. The brevity is close to under-specification rather than pure conciseness, keeping it out of the top band.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be described, and cost is disclosed. However, for a tool whose whole contract is choosing personas and a question, the description never explains what the agents array should contain, leaving the most decision-relevant input undocumented across both description and schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50% and the description adds no meaning beyond listing the two required names. Critically, the 'agents' array is the defining parameter and neither the schema nor the description explains what identifiers it accepts, and 'question' semantics are equally unexplained.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Run), resource (N personas) and mechanism (parallel + LLM synthesis), which is more informative than a tautology. It does not name or distinguish itself from the obvious sibling astroway_mcp_agent_debate, so the agent must infer the difference between coordinated parallel personas and a debate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no alternatives are named despite several closely related siblings (agent_debate, multi_chart_context, ai_chat). The '[Required: question, agents]' line just restates the schema's required array rather than telling the agent when this tool is the right choice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_multi_chart_contextMCP Multi-Chart ContextCRead-onlyInspect
Compact context for MCP agents working across multiple charts.
[Group: AI & MCP] [Endpoint: POST /v1/mcp/multi-chart-context] [Required: charts] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| charts | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| intent | No | ||
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| intent | No | |
| summaries | No | |
| chartCount | No | |
| contextHash | No | |
| summaryString | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds genuinely useful non-annotation behavior: a 10-credit (Tier 1) cost and the POST endpoint. It says nothing about what the operation returns or how it behaves across the 1-6 chart array, so it earns only partial credit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short and front-loads the one-sentence purpose, with well-organized bracketed metadata. But that metadata is machine-oriented boilerplate (group/endpoint/required) and the prose line is largely redundant with the title, so the brevity reflects under-specification as much as discipline.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, but for a tool taking up to six nested chart objects with four intent modes and compact-mode fields/precision, the description is far too thin. It gives an agent no way to know what a "compatibility" vs "forecast" run produces or why to pick it over the many neighbouring multi-chart tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter content is "[Required: charts]", which merely repeats the schema's required array, adding zero meaning. The description says nothing about `fields`, `precision`, or the four `intent` modes — the latter has no schema description at all despite being the main selector. At 50% schema coverage this is a real gap it fails to fill.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Compact context for MCP agents working across multiple charts" largely restates the name/title (multi-chart context) without naming an action or an output. The word "context" is undefined — it never says whether this computes cross-chart aspects, comparison summaries, or group forecasts. Only the bare notion "multiple charts" distinguishes it from the many single-chart siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance at all: no trigger conditions, no prerequisites, and no routing against the large sibling set (e.g. astroway_mcp_multi_agent_coordinate or astroway_mcp_ai_comparison_coach). The `intent` enum (compatibility/family/group/forecast) suggests several distinct use cases, but the description never explains when to choose which.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_rag_searchMCP RAG SearchCRead-onlyIdempotentInspect
Keyword-tag scoring over chart chunks.
[Group: MCP Advanced] [Endpoint: POST /v1/mcp/rag-search] [Required: query, chart] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| topK | No | ||
| chart | Yes | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| query | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | No | |
| total | No | |
| tokens | No | |
| matches | No | |
| results | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered structurally. The description adds genuinely useful context the annotations do not: the endpoint, the 10-credit Tier 1 cost, and the group. It does not disclose result ordering, chunk granularity, or hit limits, so it stops short of rich behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four short, front-loaded lines with no prose padding; the core purpose statement leads. The "Required" line is redundant with the schema, which is the only real waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool taking a deeply nested chart object plus three tuning parameters, the description is thin: no sense of ranking/scoring semantics, no indication of what the chunks are drawn from, and no guidance on choosing topK. An output schema exists so return format need not be explained, but the retrieval behavior itself is left entirely to inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is a middling 60%. The description adds no parameter meaning at all — it only echoes the two required names already enforced by the schema — and says nothing about topK's default/range, the fields compact projection, or precision, the parameter most likely to be misused.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the mechanism (keyword-tag scoring) and the corpus (chart chunks), which goes beyond simply restating the tool name. However, it never says what the tool returns or what a "chunk" is, so an agent cannot tell whether this is a document retriever over interpretive text or a query over computed chart data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage-adjacent line is "[Required: query, chart]", which merely restates the schema's required list. There is no statement of when to reach for this tool rather than a direct retrieval sibling (e.g. astroway_mcp_multi_chart_context), and no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_streamingMCP Streaming ChatBRead-onlyInspect
Server-Sent Events streaming chat completion with optional chart context.
[Group: AI & MCP] [Endpoint: POST /v1/mcp/streaming] [Required: message] [Cost: 100 credits (Tier 4)]
| Name | Required | Description | Default |
|---|---|---|---|
| chart | No | Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss), latitude and longitude in decimal degrees. The short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD; pass the full names. timezoneOffset is hours from UTC and defaults to 0, meaning UTC; send timezone instead (an IANA name such as Europe/Kyiv, or auto) and the offset for that date is worked out, summer time included. city is a display label only: nothing here geocodes it, so it never stands in for coordinates. houseSystem is a single Swiss Ephemeris letter, P by default; a name such as "Placidus" is refused, and the case matters because I and i are two different Sunshine systems. | |
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| message | Yes | ||
| language | No | uk | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, openWorldHint=true, so the safety profile is covered. The description adds genuinely non-derivable behavior: the response is delivered as an SSE stream rather than one payload, crediting at 100 credits (Tier 4), and the concrete endpoint. It omits auth requirements and why idempotentHint=false, which keeps it out of 5 territory.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short and front-loaded: the core capability leads, with bracketed metadata (group, endpoint, required param, cost) following compactly. Every line carries information, though the template-style [Group:]/[Endpoint:] format is more machine header than prose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a streaming tool with no output schema and a nested chart parameter, the definition covers the essential facts (SSE transport, required message, optional chart, cost). It does not describe what the stream emits or how chart context influences the completion, leaving gaps an agent would notice mid-invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 60%, with the nested chart object heavily documented in the schema itself (timezone, houseSystem letters, lat/lon full names, ayanamsa). The description adds only 'optional chart context', which restates the schema's required list. Baseline 3 is appropriate when the schema does most of the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource+mechanism: 'Server-Sent Events streaming chat completion with optional chart context.' An agent can tell this is a streaming chat tool rather than a static computation. It does not explicitly name or contrast with the closest sibling astroway_mcp_ai_chat, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. Nothing tells the agent to prefer this over astroway_mcp_ai_chat (non-streaming chat) or astroway_mcp_tool_call_stream; the streaming qualifier implies a context but the choice is left entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_tool_call_streamMCP Tool-Call StreamCRead-onlyIdempotentInspect
SSE-stream of a tool call envelope.
[Group: MCP Advanced] [Endpoint: POST /v1/mcp/tool-call-stream] [Required: tool] [Cost: 10 credits (Tier 1)]
| Name | Required | Description | Default |
|---|---|---|---|
| args | No | ||
| tool | Yes | ||
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| language | No | en | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so the safety profile is covered. The description adds two genuinely useful behavioral facts annotations cannot express: delivery is server-sent events rather than a single response, and the call costs 10 credits (Tier 1). It still omits stream termination, error-over-stream behavior, and whether partial results can be replayed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Very short and front-loaded: one sentence of purpose followed by structured metadata brackets. Nothing is wasted, though the single sentence is so compressed that the core mechanics of the tool are never actually spelled out.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter tool with a nested free-form args object, a free-text tool selector, compact-mode options, and no output schema, this is under-specified. An agent cannot tell what the stream emits, how to consume it, or what valid values for tool are (presumably must match astroway_mcp_tools_list entries), all of which are load-bearing here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 40% across 5 parameters, and the description adds nothing beyond confirming that tool is required. args (arbitrary nested object forwarded to the target tool), language, and the compact-mode interplay of fields/precision are left entirely to the schema; the description should explain that args are passed through verbatim to the named tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"SSE-stream of a tool call envelope" names a delivery mechanism and an artifact, so the agent knows this is a streaming wrapper that executes a named tool. However, "tool call envelope" is opaque jargon and the definition never states the key fact that this proxies/executes another MCP tool by name, nor how it differs from the sibling astroway_mcp_streaming or astroway_mcp_tools_list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage cue is the bracketed "[Required: tool]" — there is no when-to-use, no when-not-to-use, and no routing to an alternative despite multiple plausible siblings (astroway_mcp_streaming, astroway_mcp_tools_list, astroway_agent_tools). The agent must guess whether streaming is preferred over a plain call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
astroway_mcp_tools_listMCP Tools ListCRead-onlyInspect
Auto-generated tool manifest for MCP clients (modelcontextprotocol/2025-03 spec).
[Group: AI & MCP] [Endpoint: GET /v1/mcp/tools-list] [Cost: see your plan — endpoint not in the public credit manifest]
| Name | Required | Description | Default |
|---|---|---|---|
| fields | No | Compact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response. | |
| precision | No | Compact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn. |
Output Schema
| Name | Required | Description |
|---|---|---|
| spec | No | |
| notes | No | |
| tools | No | |
| server | No | |
| toolCount | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context the annotations do not: the concrete GET endpoint and a cost caveat that this scope is not in the public credit manifest. It does not explain response size or pagination for a manifest that presumably enumerates all tools.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single purpose sentence is front-loaded and the metadata tags are compact, but the bracketed group/endpoint/cost lines are boilerplate scaffolding rather than description content. Nothing is wasted, yet very little informational payload is delivered.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return-value documentation is not required, but for a meta-tool that enumerates the entire tool surface, the description never explains the scenario in which an agent would reach for it instead of directly invoking a domain tool. Given the enormous sibling set, this leaves a real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both `fields` and `precision` are already documented in the schema with examples and constraints. The description contributes no additional parameter meaning; the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
"Auto-generated tool manifest for MCP clients" largely restates the name 'MCP Tools List' without a distinct verb or an explanation of what the response actually contains. It gives an endpoint and spec version but no functional description that would distinguish its purpose from any other listing endpoint.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when an agent should call this tool, what problem it solves, or how it relates to the ~190 sibling tools. The only contextual cues are the bracketed [Group]/[Endpoint]/[Cost] metadata tags, which are not usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
83 tool updates
- First observed
astroway_account_status - First observed
astroway_agent_tools - First observed
astroway_cost_estimate - First observed
astroway_helb_bonifications_maltreatments - First observed
astroway_helb_profections_detail - First observed
astroway_helb_triplicity_rulers - First observed
astroway_helb_zodiacal_releasing_fortune - First observed
astroway_helb_zodiacal_releasing_spirit - First observed
astroway_helb_zr_loosing_of_bond - First observed
astroway_helg_antiscia_hellenistic - First observed
astroway_helg_contra_antiscia - First observed
astroway_helg_daimon_tyche_axis - First observed
astroway_helg_lot_of_eros_detail - First observed
astroway_helg_quality_of_time - First observed
astroway_helg_sphaera_barbarica - First observed
astroway_helg_temple_doctrine - First observed
astroway_helg_zodiacal_decans - First observed
astroway_hellenistic_brennan_bonifications_maltreatments - First observed
astroway_hellenistic_brennan_joys_of_planets - First observed
astroway_hellenistic_brennan_lots_15 - First observed
astroway_hellenistic_brennan_profections_detail - First observed
astroway_hellenistic_brennan_time_lord_stack - First observed
astroway_hellenistic_brennan_triplicity_rulers - First observed
astroway_hellenistic_brennan_zodiacal_releasing_fortune - First observed
astroway_hellenistic_brennan_zodiacal_releasing_spirit - First observed
astroway_hellenistic_brennan_zr_loosing_of_bond - First observed
astroway_hellenistic_brennan_zr_peak_periods - First observed
astroway_hellenistic_greenbaum_antiscia_hellenistic - First observed
astroway_hellenistic_greenbaum_contra_antiscia - First observed
astroway_hellenistic_greenbaum_daimon_tyche_axis - First observed
astroway_hellenistic_greenbaum_dodekatemoria - First observed
astroway_hellenistic_greenbaum_duodecima - First observed
astroway_hellenistic_greenbaum_lot_of_eros_detail - First observed
astroway_hellenistic_greenbaum_quality_of_time - First observed
astroway_hellenistic_greenbaum_sphaera_barbarica - First observed
astroway_hellenistic_greenbaum_temple_doctrine - First observed
astroway_hellenistic_greenbaum_zodiacal_decans - First observed
astroway_hellenistic_hand_bounds - First observed
astroway_hellenistic_hand_critical_degrees - First observed
astroway_hellenistic_hand_decanic_rulers - First observed
astroway_hellenistic_hand_decennials - First observed
astroway_hellenistic_hand_horoscopos_trine - First observed
astroway_hellenistic_hand_longevity_hyleg - First observed
astroway_hellenistic_hand_lots_of_seven - First observed
astroway_hellenistic_hand_perfections - First observed
astroway_hellenistic_hand_quarter_lord - First observed
astroway_hellenistic_hand_sect_strength - First observed
astroway_hellenistic_schmidt_aspectual_typology - First observed
astroway_hellenistic_schmidt_derivative_houses_method - First observed
astroway_hellenistic_schmidt_ennea_mooirai - First observed
astroway_hellenistic_schmidt_levels_of_causation - First observed
astroway_hellenistic_schmidt_lord_of_prediction - First observed
astroway_hellenistic_schmidt_morning_evening_stars - First observed
astroway_hellenistic_schmidt_qualities_and_quantities - First observed
astroway_hellenistic_schmidt_sect_classes - First observed
astroway_hellenistic_schmidt_stations_and_phases - First observed
astroway_hellenistic_schmidt_stoic_elementhood - First observed
astroway_hels_aspectual_typology - First observed
astroway_hels_derivative_houses_method - First observed
astroway_hels_levels_of_causation - First observed
astroway_hels_lord_of_prediction - First observed
astroway_hels_morning_evening_stars - First observed
astroway_hels_qualities_and_quantities - First observed
astroway_hels_stations_and_phases - First observed
astroway_hels_stoic_elementhood - First observed
astroway_horary_diagnostics - First observed
astroway_horary_horary - First observed
astroway_horary_moon_aspects - First observed
astroway_horary_moon_voc - First observed
astroway_horary_planetary_hours - First observed
astroway_horary_via_combusta - First observed
astroway_mcp_agent_debate - First observed
astroway_mcp_agent_pool_status - First observed
astroway_mcp_ai_chat - First observed
astroway_mcp_ai_comparison_coach - First observed
astroway_mcp_ai_explain_aspect - First observed
astroway_mcp_ai_explain_transit - First observed
astroway_mcp_multi_agent_coordinate - First observed
astroway_mcp_multi_chart_context - First observed
astroway_mcp_rag_search - First observed
astroway_mcp_streaming - First observed
astroway_mcp_tool_call_stream - First observed
astroway_mcp_tools_list
Related MCP Connectors
Astrology charts and classical techniques: natal, transits, horary, primary directions
Transits, progressions, directions, returns, cosmobiology and evolutionary technique.
Real astrology for AI agents: cosmic weather, synastry, timing, astrocartography, and divination.
Sub-arcsecond astrology on NASA JPL DE440: natal, transits, Human Design, Vedic, BaZi.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceMulti-tradition astrology engine that computes real birth charts, transits, and synastry for AI agents via MCP tools.13-
- AlicenseNot gradedqualityBmaintenanceHigh-precision astrology tools for LLM agents, including natal charts, transits, progressions, synastry, and more, backed by Swiss Ephemeris.1MIT
- AlicenseAqualityCmaintenanceEnables users and language models to compute Western tropical astrology data offline, including natal charts, transits, synastry, Mercury retrograde periods, annual profections, and moon phases, with deterministic structured output.639 npmMIT
- AlicenseNot gradedqualityDmaintenanceCalculates astrological birth charts including planetary positions, house placements, and aspects based on birth date, time, and location.802 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.