Skip to main content
Glama

Server Details

Pythagorean and Chaldean systems, Kabbalistic numbers, destiny and name analysis.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
97.9% over 25 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

C2.8/5.0

Scored across 83 tools

Disambiguation2/5

The set contains five near-identical numerology system families (Chaldean, Kabbalistic phonetic, Kabbalistic strict, Pythagorean, Vedic) whose tools share the same operation names and descriptions except for the system label. Cursor-friendly aliases like astroway_numk_personal_year exactly duplicate existing tools, making it hard for an agent to know which one to select without external guidance.

Naming Consistency3/5

Core numerology tools largely follow a predictable astroway_numerology_<system>_<operation> snake_case pattern, but the aliases introduce cryptic abbreviations (numk, numks, nump) and the MCP/AI group mixes prefixes like mcp_ai_ and mcp_agent_ inconsistently. The pattern is readable but not uniform throughout.

Tool Count1/5

83 tools is far too many for a numerology/astrology API, largely because the same 11 operations are replicated across five systems (55 tools) and then partially duplicated again as aliases. A single parameterized system argument would collapse most of this surface and make the set far more manageable.

Completeness4/5

The surface covers a thorough set of numerology calculations per system (life path, expression, soul urge, personality, birthday, personal year, maturity, balance, challenge, pinnacles, and aggregate chart), plus AI interpretation and MCP integration tools. Minor gaps such as a cross-system comparison or system-selection helper exist, but the core domain is well covered.

Available Tools

83 tools
astroway_account_statusAccount StatusA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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 definitionsA
Read-onlyIdempotent
Inspect

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]

NameRequiredDescriptionDefault
qNoFree-text filter applied within the selection, matched against path, summary, description and group.
limitNoHow 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`.
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
formatNoWhich vendor contract the tool objects follow. `openai` returns `{ type, function }`, `anthropic` returns `{ name, description, input_schema }`.openai
selectNoWhat 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
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
countNo
notesNo
toolsNo
formatNo
selectNo
executorsNo
truncatedNo
totalMatchedNo
totalAvailableNo

TDQS

A3.5/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 EstimateA
Read-onlyIdempotent
Inspect

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.

NameRequiredDescriptionDefault
endpointsYesEndpoint paths to estimate, e.g. ["/chart", "/synastry", "/reports/natal"]. Leading slash optional.

TDQS

A4.3/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness5/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines4/5

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_destiny_matrix_ladiniDestiny Matrix: Ladini MethodA
Read-onlyIdempotent
Inspect

The core of the Destiny Matrix per Natalia Ladini's method from a birth date: the personal square (pointA day, pointB month, pointC year digits, pointD bottom = A+B+C, pointE centre = A+B+C+D), the ancestral square corners, the sky (B+D) and earth (A+C) lines and the personal purpose, each with its arcanum. Numbers above 22 are reduced by summing digits. karmicTail, loveLine and moneyLine give the three arcana of each chain read from the centre outward, with code ("3-7-22"); the love and money channels share the crossing point.

[Group: Destiny Matrix] [Endpoint: POST /v1/destiny-matrix/ladini] [Required: date] [Cost: 20 credits (Tier 2)]

NameRequiredDescriptionDefault
dateYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
centreNo
methodNo
pointANo
pointBNo
pointCNo
pointDNo
pointENo
skyAxisNo
ageScaleNo
loveLineNo
ancestralNo
earthAxisNo
moneyLineNo
disclaimerNo
karmicTailNo
loveLineNodeNo
karmicTailSumNo
moneyLineNodeNo
personalPurposeNo

TDQS

A3.5/5.0
Behavior4/5

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 lowered, and the description still adds real behavioral context: the >22 digit-sum reduction rule, the centre-outward reading of the arcana chains, and the `code` format ("3-7-22") plus the shared `crossing` point. It omits cost/permission behavior, but for a pure computation tool this is solidly above baseline.

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

Conciseness4/5

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

Purpose is front-loaded and the two dense sentences are packed with substantive output semantics rather than filler. It is jargon-heavy and could be split for readability, but every phrase carries domain meaning.

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

Completeness4/5

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

With an output schema present, the description does not need to explain return values, yet it usefully pre-frames the key response fields (karmicTail, loveLine, moneyLine, crossing). The one real gap is the absence of when-to-use guidance against the numerology siblings, which the rest of the package does not cover either.

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

Parameters3/5

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

Schema description coverage is 67% and both `fields` and `precision` already carry their own schema descriptions, so the structured data does most of the work. The description only implies the birth-date input and adds no syntax or format detail for any parameter, so baseline 3 is right.

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

Purpose4/5

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

The description states a specific resource (the Destiny Matrix per Natalia Ladini, computed from a birth date) and enumerates the concrete outputs (personal square points A-E, ancestral corners, sky/earth lines, karmic/love/money chains). An agent can distinguish this from the numerology siblings by name and method. It stops short of an explicit contrast with the numerology family, so it is not a 5.

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

Usage Guidelines2/5

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

There is no statement of when to pick this tool over the many numerology chart siblings, nor prerequisites beyond the implicit required `date`. The Group/Endpoint/Cost tags in context signals supply administrative framing, but the description itself offers 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_mcp_agent_debateMCP Agent DebateC
Read-onlyIdempotent
Inspect

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)]

NameRequiredDescriptionDefault
chartNoBirth 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.
topicYes
agentAYes
agentBYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
roundsNo
languageNoen
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
transcriptNo

TDQS

C2.9/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 StatusC
Read-onlyIdempotent
Inspect

8 personas with specialties.

[Group: MCP Advanced] [Endpoint: GET /v1/mcp/agent-pool-status] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
noteNo
countNo
personasNo

TDQS

C2.2/5.0
Behavior3/5

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.

Conciseness2/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose2/5

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.

Usage Guidelines1/5

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 chatA
Read-only
Inspect

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)]

NameRequiredDescriptionDefault
chartNoBirth 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.
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
historyNo
messageYes
personaNoastrologer
languageNouk
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
modelNo
replyNo
tokensNo
personaNo
languageNo
disclaimerNo
duration_msNo

TDQS

A3.8/5.0
Behavior4/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines3/5

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 CoachB
Read-only
Inspect

Coach two charts on relationship dynamics.

[Group: AI & MCP] [Endpoint: POST /v1/ai/comparison-coach] [Required: chart1, chart2, question] [Cost: 100 credits (Tier 4)]

NameRequiredDescriptionDefault
chart1YesBirth 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.
chart2YesBirth 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.
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
languageNouk
questionYes
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
coachingNo

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 AspectB
Read-only
Inspect

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)]

NameRequiredDescriptionDefault
chartNoBirth 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.
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
planet1Yes
planet2Yes
languageNouk
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.
aspectTypeYes

Output Schema

NameRequiredDescription
explanationNo

TDQS

B3.2/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters4/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 TransitB
Read-only
Inspect

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)]

NameRequiredDescriptionDefault
chartYesBirth 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.
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
languageNouk
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.
aspectTypeYes
natalPlanetYes
transitDateYes
transitPlanetYes

Output Schema

NameRequiredDescription
explanationNo

TDQS

B3/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 CoordinateC
Read-onlyIdempotent
Inspect

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)]

NameRequiredDescriptionDefault
chartNoBirth 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.
agentsYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
languageNoen
questionYes
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
synthesisNo
individualNo

TDQS

C2.9/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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 ContextC
Read-only
Inspect

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)]

NameRequiredDescriptionDefault
chartsYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
intentNo
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
notesNo
intentNo
summariesNo
chartCountNo
contextHashNo
summaryStringNo

TDQS

C2.3/5.0
Behavior3/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose2/5

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.

Usage Guidelines2/5

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_streamingMCP Streaming ChatB
Read-only
Inspect

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)]

NameRequiredDescriptionDefault
chartNoBirth 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.
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
messageYes
languageNouk
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

TDQS

B3.4/5.0
Behavior4/5

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.

Conciseness4/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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

No when-to-use or when-not-to-use guidance. 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 StreamC
Read-onlyIdempotent
Inspect

SSE-stream of a tool call envelope.

[Group: MCP Advanced] [Endpoint: POST /v1/mcp/tool-call-stream] [Required: tool] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
argsNo
toolYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
languageNoen
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

TDQS

C2.7/5.0
Behavior3/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters2/5

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.

Purpose3/5

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.

Usage Guidelines2/5

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 ListC
Read-only
Inspect

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]

NameRequiredDescriptionDefault
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
specNo
notesNo
toolsNo
serverNo
toolCountNo

TDQS

C2.4/5.0
Behavior3/5

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.

Conciseness3/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose2/5

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.

Usage Guidelines2/5

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.

astroway_numerology_chaldean_balanceBalance (chaldean)B
Read-onlyIdempotent
Inspect

Calculate the Balance number from initials of each part of the full name. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/balance] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
balanceNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, covering the safety profile. The description adds genuinely useful meta-context the annotations do not: the credit cost (10 credits, Tier 1) and the POST endpoint. It says nothing about what the Balance number represents or how the result is shaped, but the output schema exists to 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.

Conciseness5/5

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

One purpose sentence followed by compact bracketed metadata (group, endpoint, required fields, cost). Purpose is front-loaded, nothing is redundant, and the structured tags are scannable.

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

Completeness4/5

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

For a simple calculation tool with an output schema and full annotation coverage, the description supplies what the agent needs to invoke it: purpose, required inputs, endpoint and cost. The remaining gap is usage guidance against the many sibling numerology tools, which is scored separately.

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

Parameters3/5

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

Schema description coverage is 50% (only fields and precision are documented in the schema; name and date are bare). The description implies name is a full name and restates the two required parameters, but adds no format or syntax detail beyond what the schema already encodes (e.g. the date pattern). Baseline 3 is appropriate given the partial coverage gap.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Balance number') and disambiguates the system ('Numerology: Chaldean system'), which separates it from the Pythagorean, Kabbalistic and Vedic balance siblings. It also specifies the computation basis ('from initials of each part of the full name'), but it never names an alternative sibling to route against, so differentiation rests on the group 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.

Usage Guidelines2/5

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

The description states required parameters and cost but gives no when-to-use context and no exclusions or alternatives. Nothing tells an agent why it would pick Chaldean balance over, say, astroway_numerology_kabbalistic_balance or astroway_numks_balance, nor when a Balance reading is appropriate.

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

astroway_numerology_chaldean_birthdayBirthday (chaldean)A
Read-onlyIdempotent
Inspect

Calculate the Birthday number from the day-of-birth digit. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/birthday] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
birthdayNo

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnly=true, idempotent=true, destructive=false, closed-world, so the safety profile is covered. The description adds a genuinely useful behavioral trait not in the annotations: the cost (10 credits, Tier 1) and the endpoint. It does not describe what the computation returns or how it behaves, but with annotations carrying safety and an output schema present, this is a solid addition.

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

Conciseness4/5

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

The core purpose is front-loaded in the first sentence, and the bracketed metadata (group, endpoint, required, cost) is compact and skimmable. No sentence is wasted, though the metadata block is fairly boilerplate rather than high-value prose.

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

Completeness4/5

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

With an output schema present, return values need no explanation, and the annotations cover the safety profile. The description adds required params, cost, and endpoint, which is close to complete for a single-value calculation tool. The notable gap is the absence of any cross-system disambiguation, which is what keeps it from 5.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are documented in-schema, while 'name' and 'date' have no descriptions. The description lists the two required params and hints that 'date' supplies the day-of-birth digit, adding modest meaning, but it does not explain format, constraints, or the compact-mode params. A 3 is appropriate given the schema does part of the work.

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

Purpose4/5

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

States a specific verb+resource ('Calculate the Birthday number') and pins the system via 'Numerology: Chaldean' plus the group tag, which separates it from the many sibling *_birthday tools (kabbalistic, pythagorean, vedic, numks). 'From the day-of-birth digit' clarifies the input semantics beyond the bare name. It stops short of contrasting the output with other systems' birthday numbers, so 4 rather than 5.

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

Usage Guidelines2/5

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

There is no guidance on when to choose this Chaldean birthday tool over pythagorean_birthday, kabbalistic_birthday, or vedic_birthday, nor any prerequisite or exclusion. The metadata block lists required params and cost but never frames selection context. An agent must infer the choice 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_numerology_chaldean_challengeChallenge Cycles (chaldean)B
Read-onlyIdempotent
Inspect

Calculate four Challenge cycles: life-area difficulties to master, derived from birth date components. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/challenge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
challengesNo

TDQS

B3.3/5.0
Behavior4/5

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 a genuinely non-structured behavioral fact, the cost ('10 credits (Tier 1)'), which matters for agent budgeting decisions, plus the HTTP endpoint. It does not cover latency, auth, or response shape (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.

Conciseness4/5

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

One front-loaded sentence with the core purpose, followed by compact bracketed metadata lines and no filler. Slightly cluttered by the redundant '[Required: ...]' line, which costs a little but nothing is verbose.

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

Completeness4/5

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

For a specialized calculation tool with an output schema, the description supplies purpose, inputs, cost, and endpoint, which is enough to call it correctly. It omits only usage guidance relative to sibling systems, and return values are covered by the output schema.

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

Parameters2/5

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

Schema description coverage is 50%; 'fields' and 'precision' are documented in the schema, while 'date' and 'name' carry only patterns/length constraints. The description merely restates '[Required: name, date]', which the schema already declares, and adds no meaning for the compact-mode parameters.

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

Purpose4/5

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

States a specific verb and resource ('Calculate four Challenge cycles') and qualifies the domain ('life-area difficulties to master, derived from birth date components'). The 'Chaldean system' tag distinguishes it from the Pythagorean/Vedic/Kabbalistic challenge siblings, though the differentiation relies on that tag rather than an explicit contrast.

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

Usage Guidelines2/5

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

No statement of when to use this tool versus the ~70 sibling numerology tools, no prerequisites, and no exclusions. The '[Group: ...]' and '[Endpoint: ...]' lines are routing 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_numerology_chaldean_chartCore Numbers Chart (chaldean)A
Read-onlyIdempotent
Inspect

The six core numbers in one call: Life Path, Expression, Soul Urge, Personality, Birthday and Personal Year (year defaults to the current year), each with its meaning. 20 credits instead of 60 for six single calls. Every number carries meaning (English) and meaningLocalized in the requested language (translated: false with the English text while a language's strings are on their way). Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/chart] [Required: name, date] [Cost: 20 credits (Tier 2)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
yearNo
systemNo
birthdayNo
lifePathNo
soulUrgeNo
expressionNo
personalityNo
personalYearNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive behavior, so the description's added value is the cost disclosure (20 credits, Tier 2) and the localization contract: every number carries `meaning` plus `meaningLocalized`, with `translated: false` returning English while a language's strings are being prepared. That fallback behavior is the kind of thing an agent could not infer from structured fields.

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

Conciseness4/5

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

Front-loads the core value proposition (six numbers in one call) and then layers cost and localization in tight sentences. Slightly dense with parenthetical caveats, but every clause carries information an agent needs.

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

Completeness4/5

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

For a 5-parameter computation tool with annotations and an output schema, this is nearly complete: it covers the member set, cost, localization, and the year default. The only gap is silence on the `fields`/`precision` compact-mode controls, which are relevant given the tool returns a large nested payload.

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

Parameters3/5

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

Schema description coverage is 60%, so `year`, `fields` and `precision` are documented in the schema while `name` and `date` are not. The description clarifies that `year` defaults to the current year and confirms `name`/`date` are required, but says nothing about the `fields`/`precision` compact-mode parameters, leaving the schema to carry them. Baseline 3 fits when the schema does most of the lifting.

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

Purpose5/5

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

States a concrete verb+resource: returns the six core numbers (Life Path, Expression, Soul Urge, Personality, Birthday, Personal Year) in one call, under the Chaldean system. The enumeration lets an agent distinguish it immediately from the single-number siblings like astroway_numerology_chaldean_life_path. It also names the sibling it supersedes ('six single calls').

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

Usage Guidelines4/5

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

It makes the selection case clear by contrasting cost: '20 credits instead of 60 for six single calls', which routes an agent wanting a full chart here rather than making six separate calls. It stops short of an explicit 'use X when / don't use Y when' statement or naming the individual sibling tools, so it is strong context rather than full guidance.

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

astroway_numerology_chaldean_expressionExpression / Destiny (chaldean)B
Read-onlyIdempotent
Inspect

Calculate the Expression (Destiny) number from full birth name letters (all letters, reduced). Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/expression] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
expressionNo

TDQS

B3.2/5.0
Behavior3/5

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 the cost (10 credits, Tier 1) and the POST endpoint, which is genuinely useful behavioral context, but says nothing further about response behavior or limits.

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

Conciseness4/5

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

The definition is short and front-loads the core purpose in the first sentence, with the bracketed metadata kept compact. Every element earns its place, though the tag block adds some structural noise.

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

Completeness3/5

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

An output schema exists so return values need not be explained, and the tool is a simple idempotent read. However, the role of the required 'date' parameter and the lack of any guidance distinguishing this system's Expression number from the many sibling Expression tools leave it only minimally complete.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'name' and 'date' are not. The description clarifies 'name' as the full birth name, but never explains what 'date' represents (birth date vs. reference date) or its format, leaving a meaningful semantic gap.

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

Purpose4/5

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

States a specific verb and resource (calculate Expression/Destiny number) and specifies both the letter basis (all letters, reduced) and the Chaldean system, which separates it from the vowel-based soul_urge or the pythagorean/kabbalistic/vedic expression siblings. It does not explicitly name an alternative, but the systematic sibling naming plus the 'all letters' and 'Chaldean' qualifiers make its identity inferable.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance and no routing to alternatives such as astroway_numerology_pythagorean_expression or the kabbalistic/vedic variants. The [Group: Numerology: Chaldean] tag implies the domain but gives no selection criteria, leaving usage 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_numerology_chaldean_life_pathLife Path Number (chaldean)B
Read-onlyIdempotent
Inspect

Calculate the Life Path number from birth date (year + month + day, reduced). Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/life-path] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
lifePathNo

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, non-destructive, and a closed-world scope, so the safety profile is covered. The description usefully adds the cost ('10 credits, Tier 1') and the POST endpoint, which is real behavioral context beyond the annotations, but says nothing about what the calculation returns or any input constraints.

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

Conciseness4/5

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

Compact and front-loaded: the core action leads, followed by bracketed metadata lines. No wasted prose, though the bracket-tag format is more machine-oriented than descriptive.

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

Completeness3/5

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

An output schema exists, so return values needn't be explained, and annotations cover safety. However, for a tool with a documented output and two undocumented input params, the description omits usage routing and any note on the name/date semantics, leaving an agent to infer a fair amount.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are well documented in the schema, but 'name' and 'date' carry no schema descriptions. The description adds 'year + month + day, reduced' for the date and restates the two required params, giving marginal clarification over the pattern already in the schema.

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

Purpose4/5

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

States a specific verb (Calculate) and resource (Life Path number) with the input basis (birth date, year+month+day reduced) and names the numerological system (Chaldean). This distinguishes it from the Pythagorean, Kabbalistic, and Vedic life-path siblings, though it does not differentiate from other Chaldean tools. Clear and specific, but largely echoes the title.

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

Usage Guidelines2/5

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

No when-to-use guidance or alternatives are offered. The bracket tags give required params, endpoint, and cost, but never explain when Chaldean life-path is preferred over the many other life-path tools. The agent must infer usage from the name alone.

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

astroway_numerology_chaldean_maturityMaturity (chaldean)A
Read-onlyIdempotent
Inspect

Calculate the Maturity number: sum of Life Path and Expression, activates around age 35. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/maturity] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
maturityNo

TDQS

A3.5/5.0
Behavior4/5

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 behavioral context beyond annotations: a credit cost ('10 credits (Tier 1)') and the concrete endpoint, which help an agent budget and route the call.

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

Conciseness4/5

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

The substantive sentence is front-loaded, single-purpose and wastes no words. The trailing bracketed metadata block is boilerplate rather than prose, but it is compact and skimmable rather than rambling.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the description covers purpose, formula, required inputs, cost and endpoint. The remaining gap is input interpretation (whose name, birth vs current) and no note on how the result should be interpreted age-wise.

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

Parameters3/5

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

Schema description coverage is 50% (fields and precision are documented in-schema; name and date are not). The description only repeats 'Required: name, date', adding no meaning over the schema's required array and no clarification of what form the name should take. It does not compensate for the undocumented parameters.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Maturity number'), identifies the system (Chaldean), and even gives the underlying formula (sum of Life Path and Expression), which distinguishes it from the many sibling *maturity* tools for other systems. It stops short of explicitly contrasting against e.g. pythagorean_maturity or life_path, relying on the system label alone.

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

Usage Guidelines2/5

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

There is no when-to-use or when-not-to-use guidance: nothing says when to pick Chaldean over Pythagorean/Kabbalistic maturity, or when maturity is preferred to its component numbers (life_path, expression). The 'activates around age 35' note is interpretive context for the number, not invocation guidance.

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

astroway_numerology_chaldean_personalityPersonality (chaldean)B
Read-onlyIdempotent
Inspect

Calculate the Personality number from the consonants of the full birth name. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/personality] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalityNo

TDQS

B3.2/5.0
Behavior3/5

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 usefully adds cost (10 credits, Tier 1) and the endpoint, but says nothing about auth requirements, rate limits, or what the calculated output contains beyond what the output schema provides.

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

Conciseness4/5

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

The core explanation is a single front-loaded sentence, with grouped metadata in compact brackets. Every element earns its place, though the bracket block is slightly noisy relative to the short prose.

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

Completeness3/5

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

For a single-value compute tool with an output schema, the description covers what is calculated and from what input, so return values need no explanation. It is nonetheless thin on routing among the ~70 numerology siblings, which is the main contextual gap.

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

Parameters3/5

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

Schema coverage is 50%: `fields` and `precision` are documented in the schema, but `date` is not, and the description does not explain the date's role. It does add real semantic value for `name` by specifying it must be the full birth name whose consonants drive the calculation — meaning not present in the schema.

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

Purpose4/5

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

The description names a specific verb and resource — 'Calculate the Personality number' — and narrows it to the Chaldean system and to the consonants of the full birth name. That is enough to separate it from the many pythagorean/kabbalistic/vedic personality siblings, though it never explicitly contrasts them.

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

Usage Guidelines2/5

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

There is no statement of when to choose this over astroway_numerology_kabbalistic_personality or pythagorean_personality, or when a Personality number is the right reading versus Soul Urge/Expression. The only guidance is the bracketed 'Required: name, date', which is input plumbing rather than usage.

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

astroway_numerology_chaldean_personal_yearPersonal Year (chaldean)A
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, covering the safety profile. The description adds genuinely useful operational context (10 credits / Tier 1, POST endpoint, required inputs), but says nothing about response shape or the default-year behavior that materially affects results.

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

Conciseness4/5

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

The one-line purpose sentence is front-loaded and waste-free, and the bracketed metadata block is scannable. Slightly verbose for the amount of substance but structurally sound.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the description supplies endpoint, cost, required inputs and system variant. The only gap is the absence of cross-system routing guidance, which matters given ~10 indistinguishable personal_year siblings.

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

Parameters3/5

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

Schema description coverage is 60% (year, fields, precision documented; name and date only constrained by pattern/length). The description's '[Required: name, date]' merely restates the schema's required array and adds no format or range detail for those two parameters, so it neither compensates for nor improves on the schema.

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

Purpose5/5

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

States a specific verb ('Calculate'), resource ('Personal Year number'), input scope ('for a given calendar year') and the semantic meaning ('9-year cycle of personal evolution'). The explicit 'Chaldean system' tag disambiguates it from the many sibling personal_year tools in kabbalistic/pythagorean/vedic/numk/numks/nump variants.

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

Usage Guidelines2/5

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

No guidance on when to choose this tool over the near-identical personal_year siblings from other numerological systems, nor any prerequisites beyond the [Required: name, date] block. The tool name and group tag carry all the routing burden.

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

astroway_numerology_chaldean_pinnaclesPinnacle Cycles (chaldean)B
Read-onlyIdempotent
Inspect

Calculate four Pinnacle cycles with their age boundaries: life chapters of opportunity. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/pinnacles] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
pinnaclesNo

TDQS

B3.2/5.0
Behavior3/5

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 contributes the credit cost (10 credits, Tier 1) and required-input list, which are genuinely useful operational details, but says nothing about output shape or failure behavior.

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

Conciseness4/5

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

One tight prose line followed by scannable bracketed metadata (group, endpoint, required, cost). Front-loaded and free of filler, though the metadata partially duplicates structured fields.

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

Completeness4/5

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

An output schema exists, so return values need not be described. Combined with annotations covering the safety profile and the description supplying cost, endpoint and required inputs, an agent has enough to invoke it correctly; only the conceptual distinction from sibling readings is unstated.

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

Parameters3/5

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

The bracketed '[Required: name, date]' restates what the schema already enforces, and the two optional compact-mode params (fields, precision) carry their own schema descriptions. At 50% schema coverage the description neither compensates for the undescribed name/date semantics nor adds format hints beyond the schema pattern.

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

Purpose4/5

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

States a specific verb and resource ('Calculate four Pinnacle cycles with their age boundaries') plus the system (Chaldean), which distinguishes it from the Kabbalistic, Pythagorean and Vedic pinnacles siblings. It stops short of contrasting the concept against other Chaldean tools such as chart or challenge.

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

Usage Guidelines2/5

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

No guidance on when to choose Pinnacle cycles over the many other Chaldean numerological readings (chart, challenge, maturity, personal_year). The only routing signal is the group/endpoint metadata, which tells the agent what family the tool belongs to but not the condition that selects it.

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

astroway_numerology_chaldean_soul_urgeSoul Urge / Heart's Desire (chaldean)B
Read-onlyIdempotent
Inspect

Calculate the Soul Urge number from the vowels of the full birth name. Numerology: Chaldean system.

[Group: Numerology: Chaldean] [Endpoint: POST /v1/numerology/chaldean/soul-urge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
soulUrgeNo

TDQS

B3.2/5.0
Behavior3/5

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 behavioral context not in annotations: the POST endpoint, the required inputs, and a 10-credit Tier 1 cost. It does not disclose 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.

Conciseness4/5

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

The core purpose is front-loaded in a single clear sentence, followed by compact bracketed metadata. Nothing is redundant, though the bracketed block reads as boilerplate rather than prose that earns each line.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and the description covers purpose, required inputs, and cost. What is missing is the routing context that matters most here — why an agent should pick this over the ~10 other soul-urge variants across systems.

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

Parameters3/5

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

Schema coverage is 50%; `fields` and `precision` are documented in the schema, while `name` and `date` have no schema descriptions. The description partially compensates by specifying that `name` should be the full birth name, but explains nothing about the format of `date` or why a date is needed for a name-derived vowel calculation. Baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Soul Urge number') plus the derivation method ('from the vowels of the full birth name') and the system ('Chaldean'). This distinguishes it from the personality counterpart (consonants) and from Pythagorean/Vedic/Kabbalistic variants, though it never names those siblings explicitly.

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

Usage Guidelines2/5

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

There is no when-to-use guidance or routing advice against the many sibling numerology systems (kabbalistic, pythagorean, vedic soul_urge tools all exist). The bracketed lines only list group, endpoint, required params, and cost — metadata rather than usage context.

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

astroway_numerology_kabbalistic_balanceBalance (kabbalistic)B
Read-onlyIdempotent
Inspect

Calculate the Balance number from initials of each part of the full name. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/balance] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
balanceNo

TDQS

B3.4/5.0
Behavior4/5

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 adds genuinely useful operational context the annotations do not carry: the POST endpoint, the 10-credit Tier 1 cost, and the required input pair. It stops short of describing the response, but that is covered by the output schema.

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

Conciseness4/5

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

One front-loaded functional sentence followed by compact bracketed metadata blocks for group, endpoint, required inputs and cost. Nothing is padded, though the metadata bracket repeats 'kabbalistic' already implied by the title.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and cost/endpoint/required inputs are present. However, the unexplained meaning of `date` and the silence on the non-strict vs strict kabbalistic distinction leave real gaps for a tool with four parameters and many near-identical siblings.

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

Parameters3/5

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

Schema coverage is 50%: the `fields` and `precision` compact-mode parameters are already documented in the schema, while `name` and `date` carry no descriptions. The description adds only that `name` is the full name whose initials are used; it never explains what role `date` plays in a 'balance' calculation. Baseline 3 is appropriate given the schema does part of the work.

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

Purpose4/5

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

States a specific verb and resource: 'Calculate the Balance number from initials of each part of the full name,' and pins the system as Kabbalistic (phonetic). It is clearly distinguishable from the Chaldean/Pythagorean/Vedic balance siblings, but it never addresses serial variants like astroway_numerology_kabbalistic_strict_balance, so the sibling differentiation is incomplete.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no statement of when to prefer this over the strict or other-system balance tools, and no preconditions beyond the required-parameter list. The agent is left to 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_numerology_kabbalistic_birthdayBirthday (kabbalistic)B
Read-onlyIdempotent
Inspect

Calculate the Birthday number from the day-of-birth digit. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/birthday] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
birthdayNo

TDQS

B3.2/5.0
Behavior3/5

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 genuinely useful behavior beyond annotations: the credit cost (10 credits, Tier 1), the endpoint, and the required inputs. It does not disclose output format or any failure/validation behavior, but the output schema exists to cover returns.

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

Conciseness4/5

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

The operative sentence is front-loaded and zero-waste; the bracketed metadata lines are compact and scannable. Slightly redundant to repeat 'Required: name, date' which the schema already enforces.

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

Completeness3/5

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

With annotations covering safety and an output schema covering returns, the description is nearly sufficient – cost and endpoint are helpful additions. Its main shortfall is the absence of any signal distinguishing it from the 'strict' kabbalistic variant, which is the one decision an agent actually has to make here.

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

Parameters3/5

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

Schema description coverage is 50% – the required 'name' and 'date' have no schema descriptions, while 'fields' and 'precision' do. The description compensates only partially by stating that the day-of-birth digit drives the calculation and listing required params, but adds no format or range detail beyond the regex already in the schema. Baseline 3 fits.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Birthday number') and pins the variant with 'Kabbalistic (phonetic) system' and 'from the day-of-birth digit', which separates it from Chaldean/Pythagorean/Vedic birthday tools and from the kabbalistic_strict sibling. It does not, however, explain what makes it distinct from astroway_numerology_kabbalistic_strict_birthday beyond the 'phonetic' qualifier.

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

Usage Guidelines2/5

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

No when-to-use, when-not-to-use, or alternative guidance is given. The bracketed metadata ('Required: name, date', cost) is administrative, not usage selection help, and nothing steers an agent between this and the many sibling birthday variants.

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

astroway_numerology_kabbalistic_challengeChallenge Cycles (kabbalistic)A
Read-onlyIdempotent
Inspect

Calculate four Challenge cycles: life-area difficulties to master, derived from birth date components. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/challenge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
challengesNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish the safety profile (readOnly, idempotent, non-destructive, closed-world), so the bar is lower. The description adds genuinely useful operational context beyond them: the endpoint (POST /v1/numerology/kabbalistic/challenge) and a billing cost of 10 credits at Tier 1, which affects whether an agent should spend the call. It does not describe failure modes or validation behavior, keeping it 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.

Conciseness4/5

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

The operative sentence leads, followed by compact bracketed metadata for group, endpoint, requirements, and cost with no filler prose. The one weakness is that the metadata block repeats the schema's required list, a minor redundancy rather than bloat.

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

Completeness4/5

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

With an output schema present, return values need not be explained, and the description covers purpose, system, endpoint, cost, and required inputs. For a four-parameter tool where the two optional compact-mode parameters are schema-documented, this is largely sufficient; only the ambiguity with the 'strict' sibling and the bare name/date semantics leave gaps.

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

Parameters3/5

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

Schema description coverage is 50%: `fields` and `precision` are documented in the schema, while `name` and `date` have no descriptions and the description only restates that they are required. It adds nothing about name handling (phonetic system implies spelling sensitivity) or the date format beyond the schema's pattern, so it neither compensates for nor worsens the coverage gap.

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

Purpose4/5

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

States a specific verb and resource ('Calculate four Challenge cycles') plus a concrete definition of what Challenge cycles are ('life-area difficulties to master, derived from birth date components'). It also names the numerological system ('Kabbalistic (phonetic)'), which routes away from Chaldean/Pythagorean/Vedic siblings, but it gives no basis to distinguish this from the near-identical astroway_numerology_kabbalistic_strict_challenge sibling.

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

Usage Guidelines3/5

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

Naming the Kabbalistic (phonetic) system implies when this variant applies versus Pythagorean or Vedic, and the required-parameters line signals the input precondition. However, there is no explicit when-to-use/when-not guidance and no mention of the 'strict' variant that shares the same system, so selection still requires inference 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_numerology_kabbalistic_chartCore Numbers Chart (kabbalistic)A
Read-onlyIdempotent
Inspect

The six core numbers in one call: Life Path, Expression, Soul Urge, Personality, Birthday and Personal Year (year defaults to the current year), each with its meaning. 20 credits instead of 60 for six single calls. Every number carries meaning (English) and meaningLocalized in the requested language (translated: false with the English text while a language's strings are on their way). Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/chart] [Required: name, date] [Cost: 20 credits (Tier 2)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
yearNo
systemNo
birthdayNo
lifePathNo
soulUrgeNo
expressionNo
personalityNo
personalYearNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, non-destructive, closed-world behavior, so the bar is lower. The description still adds real operational context: the 20-credit cost, and the localization caveat that `meaningLocalized` may fall back to English with `translated: false` while a language's strings are pending.

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

Conciseness4/5

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

The return contents and the cost comparison are front-loaded, and the bracketed group/endpoint/required/cost block is scannable. It is slightly dense with metatext, but no sentence is wasteful for a tool with this many sibling variants.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, yet the description still previews `meaning`/`meaningLocalized`. Required inputs are surfaced via the bracket line. The only gap is that the referenced language selection has no corresponding parameter, leaving the localization trigger ambiguous.

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

Parameters3/5

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

Schema coverage is 60%, with `year`, `fields` and `precision` already documented in the schema, so baseline is 3. The description restates the `year` default (already in the schema) and mentions meanings come 'in the requested language', but no language parameter exists in the schema, so that hint is unactionable rather than additive.

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

Purpose5/5

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

Names a specific verb+resource (returns the six core numbers in one call) and enumerates them: Life Path, Expression, Soul Urge, Personality, Birthday, Personal Year. It also states the system variant ('Kabbalistic (phonetic)') and the concrete alternative ('60 for six single calls'), which separates it from both the single-number siblings and the other chart schools.

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

Usage Guidelines4/5

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

Explicitly frames the use case: get all six numbers together for 20 credits rather than issuing six single calls, which is a clear cost/coverage trade-off an agent can act on. It does not, however, tell the agent when to prefer a sibling such as astroway_numerology_kabbalistic_strict_chart or the Chaldean/Pythagorean/Vedic chart variants.

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

astroway_numerology_kabbalistic_expressionExpression / Destiny (kabbalistic)B
Read-onlyIdempotent
Inspect

Calculate the Expression (Destiny) number from full birth name letters (all letters, reduced). Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/expression] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
expressionNo

TDQS

B3.4/5.0
Behavior3/5

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-annotation context — endpoint, required inputs, and a 10-credit Tier 1 cost — but says nothing about name normalization, failure behavior, or why a date is needed for a name-derived number.

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

Conciseness4/5

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

One tight sentence with the operation front-loaded, followed by a compact metadata block. The bracketed lines are boilerplate but each carries a distinct fact (group, endpoint, required params, cost), so little is wasted.

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

Completeness3/5

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

An output schema exists, so return-shape explanation is correctly omitted, and annotations cover the safety profile. The remaining gaps are the unexplained role of 'date' and the absence of routing guidance against the strict and other-system expression siblings, which matters in a family this dense.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are self-documented, while 'date' and 'name' are not. The description partially compensates by stating both are required and clarifying that the full birth name is used with all letters counted, but it never explains what 'date' represents (birth date?) for a calculation driven by name letters.

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

Purpose4/5

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

The description names a specific verb and resource ('Calculate the Expression (Destiny) number') and pins the system as 'Kabbalistic (phonetic)'. That differentiates it from the Chaldean, Pythagorean and Vedic expression siblings, though it never addresses the near-identical astroway_numerology_kabbalistic_strict_expression, which is the sibling an agent is most likely to 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.

Usage Guidelines3/5

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

Usage is only implied: the '(phonetic)' label and '(all letters, reduced)' method identify the variant, so an agent can infer this is the phonetic-Kabbalistic variant rather than the strict one. There is no explicit when-to-use statement, no exclusion of the strict/Chaldean/Pythagorean alternatives, and no prerequisite guidance.

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

astroway_numerology_kabbalistic_life_pathLife Path Number (kabbalistic)B
Read-onlyIdempotent
Inspect

Calculate the Life Path number from birth date (year + month + day, reduced). Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/life-path] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
lifePathNo

TDQS

B3.2/5.0
Behavior3/5

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 one genuinely useful behavioral fact, the billing cost (10 credits, Tier 1), plus the required-parameter list, but says nothing about determinism, rate limits, or how name participates in a birth-date calculation.

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

Conciseness4/5

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

The core purpose is front-loaded in the first sentence, with the second sentence giving the system qualifier. The bracketed metadata lines are terse and skimmable, though the endpoint line duplicates information an MCP client does not need to make a selection.

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

Completeness3/5

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

An output schema exists, so return values need no explanation, and the operation itself is simple. Still, for a tool sitting in a cluster of five near-duplicate life-path variants, the description omits the guidance that would let an agent pick this one confidently, and it leaves the role of `name` unexplained.

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

Parameters3/5

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

Schema coverage is only 50%: `fields` and `precision` are documented in-schema, while the two required params (`date`, `name`) have no schema descriptions. The description's "birth date (year + month + day, reduced)" partially compensates for `date`, but it never explains why a `name` is required for a life-path calculation, leaving a real ambiguity.

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

Purpose4/5

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

States a specific verb and resource ("Calculate the Life Path number") and names the system variant ("Kabbalistic (phonetic)"), which separates it from the Chaldean/Pythagorean/Vedic life-path siblings. However, it does not differentiate from the near-identical siblings astroway_numerology_kabbalistic_strict_life_path and astroway_numks_life_path, so an agent still has to guess among those.

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

Usage Guidelines2/5

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

There is no when-to-use or when-not-to-use guidance and no mention of the alternative life-path tools in the enormous sibling set. The only routing signal is the system label baked into the name and description, leaving the strict vs phonetic distinction to inference.

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

astroway_numerology_kabbalistic_maturityMaturity (kabbalistic)A
Read-onlyIdempotent
Inspect

Calculate the Maturity number: sum of Life Path and Expression, activates around age 35. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/maturity] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
maturityNo

TDQS

A3.5/5.0
Behavior3/5

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 adds the endpoint and a concrete cost of 10 credits (Tier 1), which is genuinely useful agent-relevant context, but says nothing about rate limits or response behavior.

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

Conciseness4/5

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

The purpose is front-loaded in the first sentence and the metadata block is compact and scannable. Every element earns its place, though the bracketed metadata could be slightly tighter.

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

Completeness4/5

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

With an output schema present, return values need no explanation, and annotations cover safety. Cost, endpoint, required params, and system are all stated, leaving only cross-system selection guidance as an omission.

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

Parameters3/5

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

Schema description coverage is 50%, and the description only repeats 'Required: name, date', which the schema's required array already conveys. It adds no format or meaning for either parameter and does not compensate for the two documented compact-mode params it ignores.

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

Purpose5/5

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

States a specific verb (Calculate), the exact resource (Maturity number), its derivation (sum of Life Path and Expression), its meaning (activates around age 35), and the system (Kabbalistic/phonetic). The system label lets an agent distinguish it from the Pythagorean, Vedic, Chaldean, and 'strict' Kabbalistic variants among the many siblings.

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

Usage Guidelines2/5

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

There is no when-to-use/when-not guidance and no alternatives named, even though siblings like kabbalistic_strict_maturity and the other systems are direct substitutes. 'Activates around age 35' describes the number itself, not when an agent should call this tool.

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

astroway_numerology_kabbalistic_personalityPersonality (kabbalistic)A
Read-onlyIdempotent
Inspect

Calculate the Personality number from the consonants of the full birth name. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/personality] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalityNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/destructive=false, so the safety profile is covered. The description adds genuinely useful behavioral context beyond that: the credit cost (10 credits, Tier 1) and the concrete endpoint, which an agent can use for budgeting. It stops short of describing the response, but that is less critical here.

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

Conciseness4/5

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

The core purpose is front-loaded in a single clear sentence, with metadata (group, endpoint, required, cost) cleanly bracketed afterward. Slightly label-heavy, but nothing is wasted.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the annotations carry the safety profile. The description covers purpose, system, endpoint, required inputs, and cost. The main gap is the absence of any guidance on choosing between the many near-identical sibling personalities.

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

Parameters3/5

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

Schema description coverage is only 50%; 'fields' and 'precision' are documented in-schema but 'name' and 'date' are not. The description partly compensates by clarifying that 'name' is the full birth name and that only consonants are used, plus listing the required inputs, but it adds nothing about the compact-mode parameters. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb ('Calculate'), resource ('the Personality number'), input derivation ('from the consonants of the full birth name'), and system ('Kabbalistic (phonetic)'). This is enough to distinguish it from the many sibling personality tools (chaldean, pythagorean, vedic, kabbalistic_strict) without opening their schemas.

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

Usage Guidelines3/5

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

The description identifies the system and the required inputs but offers no explicit when-to-use, when-not, or alternative routing (e.g., vs. kabbalistic_strict_personality or pythagorean_personality). Usage is only implied by the group label and name.

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

astroway_numerology_kabbalistic_personal_yearPersonal Year (kabbalistic)B
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

B3.2/5.0
Behavior3/5

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 metadata beyond annotations: cost (10 credits, Tier 1), endpoint, and required inputs. It still says nothing about what the calculation returns or what 'personal evolution' output looks like, and an output schema exists to carry that, so this is adequate rather than rich.

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

Conciseness4/5

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

Front-loaded with the core purpose in the first clause, followed by a compact bracketed metadata block (group, endpoint, required, cost). No filler sentences. Slightly dense but every element carries routing or cost information.

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

Completeness3/5

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

For a simple computation tool with an output schema and full safety annotations, the essentials (purpose, required inputs, cost) are present. The omission is disambiguation from the many parallel Personal Year implementations, which matters far more here than return-value detail that the output schema already supplies.

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

Parameters3/5

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

Schema description coverage is 60%: `year`, `fields`, and `precision` are documented in-schema, while `date` and `name` carry only pattern/length constraints. The description merely repeats the required list ('Required: name, date') and adds the phrase 'for a given calendar year', adding no meaning beyond structured fields. Baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Personal Year number') and pins the system ('Kabbalistic (phonetic)'), which is essential given ~70 sibling numerology tools. It does not, however, distinguish itself from near-identical siblings such as kabbalistic_strict_personal_year or numk_personal_year, so an agent cannot tell those apart 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.

Usage Guidelines2/5

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

There is no explicit when-to-use guidance and no mention of alternatives. It never tells the agent how this differs from the chaldean, pythagorean, vedic, strict, numk, numks, or nump Personal Year variants, which is the single most important routing decision for this tool family. The system label is implied context, not guidance.

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

astroway_numerology_kabbalistic_pinnaclesPinnacle Cycles (kabbalistic)B
Read-onlyIdempotent
Inspect

Calculate four Pinnacle cycles with their age boundaries: life chapters of opportunity. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/pinnacles] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
pinnaclesNo

TDQS

B3.2/5.0
Behavior3/5

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

No contradiction with annotations, which already declare readOnly/idempotent/non-destructive/closed-world. The description adds genuinely useful operational context the annotations do not carry: the endpoint path, required inputs, and a 10-credit Tier 1 cost. It says nothing about computation inputs beyond name/date or any output traits, but the output schema covers returns.

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

Conciseness4/5

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

Punchy and front-loaded: the functional sentence leads, and bracketed metadata follows in a scannable block. Every line carries information, though the '[Group:]' line partially duplicates the school already stated in the first sentence.

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

Completeness3/5

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

With an output schema present and safety annotations covering the risk profile, the main completeness gap is the absence of any routing guidance in a family of ~10 near-duplicate pinnacle tools. Operational facts (endpoint, cost, required fields) are present, so the definition is adequate but leaves the agent to guess which sibling applies.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are documented in the schema itself, while 'name' and 'date' have only length/pattern constraints. The description merely restates the two required params ('Required: name, date') and adds no format or behavior detail beyond the schema, which is the expected baseline here.

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

Purpose4/5

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

States a specific verb and resource ('Calculate four Pinnacle cycles with their age boundaries') and identifies the school as 'Kabbalistic (phonetic) system', which separates it from the chaldean/pythagorean/vedic pinnacles siblings. It does not, however, explicitly distinguish itself from the near-identical 'kabbalistic_strict_pinnacles' variant, so a qualifier about the phonetic vs strict distinction is missing.

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

Usage Guidelines2/5

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

The description lists required parameters and cost but never says when to choose this tool over the many sibling pinnacle calculators. There are no usage conditions, prerequisites, or named alternatives despite an extremely crowded sibling namespace.

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

astroway_numerology_kabbalistic_soul_urgeSoul Urge / Heart's Desire (kabbalistic)A
Read-onlyIdempotent
Inspect

Calculate the Soul Urge number from the vowels of the full birth name. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/soul-urge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
soulUrgeNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/non-open-world, so safety is covered; the description adds genuinely new behavioral context: the cost (10 credits, Tier 1), the endpoint and method, and the required inputs. It does not describe the shape or limits of the computation, but the cost/credit disclosure is meaningful budget-relevant information beyond the structured fields.

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

Conciseness4/5

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

Two front-loaded sentences carry the substance, and the bracketed metadata lines are compact and scannable. Slightly over-tagged (five metadata blocks for a four-parameter calculation tool), but there is no wasted prose.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and annotations carry the safety profile. What remains is adequate for a simple deterministic calculation: system variant, required inputs, and cost are all present. The one loose end is the unexplained `date` parameter.

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

Parameters3/5

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

Schema description coverage is 50% (only `fields` and `precision` are documented), and the description only adds '[Required: name, date]'. It does partially compensate by implying `name` is the full birth name (vowels taken from it), but it never explains what role `date` plays in a vowel-based soul-urge calculation, leaving a real ambiguity unresolved.

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

Purpose5/5

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

Names a specific verb and resource (calculate the Soul Urge number) and the input basis (the vowels of the full birth name), and pins the variant with 'Kabbalistic (phonetic) system'. That variant tag is exactly what separates it from the many sibling soul_urge tools (chaldean, pythagorean, vedic, strict) without opening their schemas.

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

Usage Guidelines3/5

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

The [Group] and [Endpoint] tags plus the 'Kabbalistic (phonetic)' label let an agent infer this is the kabbalistic-family soul-urge calculation, but nothing states when to prefer it over chaldean/pythagorean/vedic or over the near-identical 'strict' and 'numks' siblings. No alternatives or exclusions are named, so guidance is implied rather than explicit.

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

astroway_numerology_kabbalistic_strict_balanceBalance (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate the Balance number from initials of each part of the full name. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/balance] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
balanceNo

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already declare this as a read-only, idempotent, non-destructive, closed-world operation, so the safety profile is covered. The description adds genuinely decision-relevant context not present in structured fields: the endpoint, the required inputs, and a billing cost of 10 credits (Tier 1), which an agent should weigh before calling.

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

Conciseness4/5

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

The core sentence is front-loaded and carries no filler, and the bracketed metadata lines are structured rather than prose padding. The metadata block is slightly redundant with the schema's required list, but the format is scannable and cheap.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and cost/endpoint/required inputs are supplied. What is missing is the differentiation and selection logic an agent needs when eleven near-identical Balance siblings are available, particularly the strict/non-strict boundary.

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

Parameters3/5

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

Schema description coverage is only 50%: `fields` and `precision` are documented in the schema, while `date` and `name` carry no schema description. The prose clarifies that `name` supplies initials of each part of the full name, but the role of `date` in a name-derived Balance calculation is never explained anywhere.

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

Purpose4/5

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

The description states a specific computation (Balance number) plus the exact input basis (initials of each part of the full name) and names the numerology system (Kabbalistic, Mathers strict). It distinguishes itself from the Chaldean/Pythagorean/Vedic Balance siblings, but never clarifies how 'kabbalistic_strict' differs from the plain 'astroway_numerology_kabbalistic_balance' sibling, which is the closest and most confusable alternative.

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

Usage Guidelines2/5

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

There is no statement of when to choose this tool, no prerequisites, and no routing to or away from alternatives. The 'strict' vs non-strict distinction is left entirely to inference despite both tools existing side by side.

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

astroway_numerology_kabbalistic_strict_birthdayBirthday (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate the Birthday number from the day-of-birth digit. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/birthday] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
birthdayNo

TDQS

B3.4/5.0
Behavior3/5

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 non-annotation context — cost ('10 credits (Tier 1)') and the required-parameter list — but says nothing about authentication, rate limits, or what the computation consumes (e.g., whether 'name' actually influences 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.

Conciseness4/5

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

Front-loaded with the core action in the first sentence, and the bracketed metadata lines are compact and scannable rather than prose padding. Slightly fragmented structure, but nothing is wasted.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and the annotations carry the safety profile. However, for a tool sitting in a dense family of near-identical siblings, the description omits the strict-vs-non-strict distinction and the role of the 'name' parameter, which are the two things an agent most needs.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are documented in the schema while 'date' and 'name' are not. The description adds one hint — that the number derives from the 'day-of-birth digit' — but does not explain why 'name' is required for a day-digit calculation, leaving a real semantic gap. Baseline 3 is appropriate at this coverage level.

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

Purpose4/5

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

States a specific verb ('Calculate') and resource ('Birthday number from the day-of-birth digit') and names the divination system ('Kabbalistic (Mathers strict) system'), which is the key discriminator among the many numerology siblings. It falls short of a 5 because it never explicitly distinguishes itself from astroway_numerology_kabbalistic_birthday (non-strict) or astroway_numks_birthday, which an agent must otherwise infer.

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

Usage Guidelines3/5

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

The system label ('Kabbalistic (Mathers strict)') and the endpoint path give implied selection context among the Chaldean/Pythagorean/Vedic/Kabbalistic variants. There is no explicit when-to-use statement, no condition that selects the strict variant over the plain Kabbalistic one, and no exclusion guidance.

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

astroway_numerology_kabbalistic_strict_challengeChallenge Cycles (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate four Challenge cycles: life-area difficulties to master, derived from birth date components. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/challenge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
challengesNo

TDQS

B3.4/5.0
Behavior3/5

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 new behavioral context in the credit cost (10 credits, Tier 1), but says nothing about response shape, error cases, or rate limits beyond that.

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

Conciseness4/5

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

Front-loaded with the core verb+resource+system in the first sentence, followed by short bracketed metadata lines that scan quickly. No filler prose; the only redundancy is restating the required parameters already implied by the schema.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the cost plus required inputs are disclosed. For a parameterized calculation endpoint with four params this is nearly complete, with only minor gaps around what the `name` input contributes to a challenge calculation.

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

Parameters2/5

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

Schema description coverage is only 50% — `fields` and `precision` are documented in the schema, while `date` and `name` carry only type/pattern constraints. The description merely restates the required set ('Required: name, date') and hints at birth-date derivation; it adds no format, meaning, or interaction detail beyond the schema for the undocumented half.

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

Purpose5/5

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

States a specific verb and resource ('Calculate four Challenge cycles: life-area difficulties to master') and pins the system variant ('Kabbalistic (Mathers strict) system'), which is exactly what separates it from the plain astroway_numerology_kabbalistic_challenge sibling. An agent can pick this tool over the non-strict and Chaldean/Pythagorean/Vedic challenge variants without opening any schema.

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

Usage Guidelines2/5

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

There is no statement of when to choose this Challenge tool over the sibling challenge/chart variants, nor any prerequisites or exclusions beyond which parameters are required. The [Group]/[Endpoint]/[Cost] tags are metadata, not usage guidance, so routing must be inferred entirely from the name.

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

astroway_numerology_kabbalistic_strict_chartCore Numbers Chart (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

The six core numbers in one call: Life Path, Expression, Soul Urge, Personality, Birthday and Personal Year (year defaults to the current year), each with its meaning. 20 credits instead of 60 for six single calls. Every number carries meaning (English) and meaningLocalized in the requested language (translated: false with the English text while a language's strings are on their way). Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/chart] [Required: name, date] [Cost: 20 credits (Tier 2)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
yearNo
systemNo
birthdayNo
lifePathNo
soulUrgeNo
expressionNo
personalityNo
personalYearNo

TDQS

A4.2/5.0
Behavior4/5

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), and the description adds real beyond-annotation context: the credit cost tipping, the localized-meaning fields, and the translated:false fallback behavior during localization. It stops short of describing any rate limits 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.

Conciseness4/5

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

The core value proposition is front-loaded, cost follows, then output shape, then system. It is dense but every clause contributes; only the bracketed metadata footer is boilerplate.

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

Completeness5/5

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

With an output schema present, return structure needn't be explained, and the description still covers cost, localization semantics, the system variant, and the aggregation advantage. Nothing an agent needs to invoke it correctly is missing.

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

Parameters3/5

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

Schema coverage is 60% and the schema itself documents year (defaults to current year), fields, and precision, so the description repeats the year default rather than adding syntax. It references 'the requested language' as if a language parameter exists, but no such property is in the schema, adding slight ambiguity rather than clarity.

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

Purpose5/5

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

It names the exact resource (the six core numbers: Life Path, Expression, Soul Urge, Personality, Birthday, Personal Year) and the system (Kabbalistic Mathers strict), which distinguishes it from the plain kabbalistic_chart and the single-number siblings. An agent can tell what it returns and which tradition it belongs to without opening the schema.

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

Usage Guidelines4/5

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

The cost framing ('20 credits instead of 60 for six single calls') gives a clear reason to choose this aggregate tool over the six per-number siblings. However, no explicit when-not condition or named alternative is stated, so routing is inferred rather than prescribed.

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

astroway_numerology_kabbalistic_strict_expressionExpression / Destiny (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Expression (Destiny) number from full birth name letters (all letters, reduced). Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/expression] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
expressionNo

TDQS

A3.9/5.0
Behavior4/5

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 context the annotations do not: the cost (10 credits, Tier 1) and the endpoint, which matter for agent budget and routing decisions. It stops short of describing the return payload, but the 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.

Conciseness4/5

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

The core purpose is front-loaded in a single efficient sentence, followed by bracketed metadata that is scannable and non-redundant. The tag block is slightly administrative but each entry (group, endpoint, required, cost) carries distinct information.

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

Completeness4/5

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

With an output schema present and annotations covering the safety profile, the description's remaining burden is method and invocation context, both of which are supplied (strict Kabbalistic method, required params, cost). The one soft spot is that the role of 'date' is never stated, though it is conventional for numerology.

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

Parameters3/5

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

Schema coverage is 50%: fields and precision are documented in the schema, but date and name are not. The description compensates for the name parameter by clarifying it must be the full birth name with all letters reduced, which is the semantically ambiguous one. It adds nothing for date, so the coverage gap is only partly closed.

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

Purpose5/5

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

States a specific verb (Calculate), a specific resource (Expression/Destiny number), and the exact computation rule (full birth name letters, all letters, reduced). It also names the system variant 'Kabbalistic (Mathers strict)', which lets an agent distinguish it from the many sibling expression tools (kabbalistic_expression, pythagorean_expression, vedic_expression, etc.) without opening their schemas.

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

Usage Guidelines3/5

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

The named system variant implies which sibling family this belongs to, so routing is partially inferable. However, there is no explicit when-to-use statement, no guidance on choosing strict vs non-strict Kabbalistic, and no mention of prerequisites or exclusions beyond the '[Required: name, date]' tag.

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

astroway_numerology_kabbalistic_strict_life_pathLife Path Number (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Life Path number from birth date (year + month + day, reduced). Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/life-path] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
lifePathNo

TDQS

A3.6/5.0
Behavior4/5

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 adds genuinely useful operational detail beyond annotations: the credit cost (10, Tier 1), the endpoint, and required inputs, which help an agent budget and call correctly.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, with structured bracketed metadata following. Nothing is wasted, though the bracket lines are slightly boilerplate-heavy relative to the terse core sentence.

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

Completeness3/5

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

An output schema and rich annotations are present, so return values and safety need not be described. The main gap is differentiation from the extremely crowded sibling set (kabbalistic vs kabbalistic-strict vs other systems), which the description only partially addresses via the system label.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'date' and 'name' are self-explanatory given their pattern/length constraints. The description only restates the required params and the date semantics, adding little 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.

Purpose4/5

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

States a specific verb ('Calculate'), resource ('Life Path number'), and the algorithm/system ('Kabbalistic (Mathers strict)') plus the input basis ('birth date... reduced'). This distinguishes it from the chaldean/pythagorean/vedic life-path siblings, though it does not explain how 'strict' differs from the non-strict kabbalistic_life_path sibling.

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

Usage Guidelines3/5

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

No explicit when-to-use or when-not-to-use guidance, and no routing among the ~80 sibling numerology tools. Usage is only implied by the system label in the title/name. It does supply operational context (required params, cost) which is mildly helpful but 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_numerology_kabbalistic_strict_maturityMaturity (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Maturity number: sum of Life Path and Expression, activates around age 35. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/maturity] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
maturityNo

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, and is a non-open-world tool, so the safety profile is fully covered. The description adds the cost (10 credits, Tier 1) and the concrete endpoint, which is useful but modest context beyond the structured fields.

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

Conciseness5/5

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

Purpose is front-loaded in the first sentence, followed by compact bracketed metadata (group, endpoint, required, cost). No filler, and every line carries distinct operational information.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and the description supplies requirements, cost tier and endpoint. It is nearly complete for a read-only calculation tool; only explicit sibling routing is missing.

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

Parameters3/5

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

Schema coverage is 50%: the 'fields' and 'precision' params carry their own descriptions, while 'name' and 'date' have no schema descriptions. The description only restates 'Required: name, date', which the schema already enforces, and adds no format or semantics beyond that; baseline 3 fits.

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

Purpose5/5

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

States a specific verb ('Calculate') plus the resource ('Maturity number') and even defines the underlying method ('sum of Life Path and Expression, activates around age 35'). The system qualifier 'Kabbalistic (Mathers strict)' distinguishes it from the many sibling maturity tools (chaldean, pythagorean, vedic, loose kabbalistic).

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

Usage Guidelines3/5

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

The group tag and the system label imply when this variant applies versus its siblings, and 'activates around age 35' gives interpretive context. However, there is no explicit when-to-use/when-not statement or named alternative, leaving the agent to infer selection from the system name alone.

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

astroway_numerology_kabbalistic_strict_personalityPersonality (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate the Personality number from the consonants of the full birth name. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/personality] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalityNo

TDQS

B3.2/5.0
Behavior3/5

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 endpoint, the required inputs, and the 10-credit Tier 1 cost. It does not address edge behavior (e.g., non-letter characters in the name) or rate limits.

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

Conciseness4/5

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

Extremely compact and front-loaded: the core computation is the first sentence, and the bracketed metadata lines are scannable. Nearly every token earns its place, though the group/endpoint lines duplicate information already obvious from the tool name.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and the required parameters and cost are stated. What is missing for a calculation tool in a dense family of near-identical siblings is any hint of when this variant is appropriate versus the other systems or number types.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'name' and 'date' are bare. The description partially compensates by clarifying that 'name' means the full birth name, but says nothing about the date format or why a birth date matters to a name-derived number.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Personality number') and scopes it precisely to 'the consonants of the full birth name,' which distinguishes it from the soul-urge siblings that use vowels. The 'Mathers strict' system tag separates it from the non-strict kabbalistic and pythagorean variants, though it never names a sibling directly.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance and no selection criteria against the many alternative systems (chaldean, pythagorean, non-strict kabbalistic) or against the other number types in the same family. The only usage-adjacent signal is the cost line, which tells the agent it is a paid call but not when it 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_numerology_kabbalistic_strict_personal_yearPersonal Year (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds cost (10 credits, Tier 1) and required inputs, but does not disclose error behavior, rate limits, or return format beyond what the output schema provides.

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

Conciseness4/5

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

The purpose sentence is front-loaded and clear. Bracketed metadata (group, endpoint, required, cost) is brief and scannable, though some of it duplicates schema or annotation data. No unnecessary prose.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and annotations cover safety. However, the description omits usage guidance versus sibling systems and does not explain the optional year, fields, or precision parameters, leaving gaps for a 5-parameter tool.

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

Parameters3/5

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

Schema coverage is 60%: year, fields, and precision have schema descriptions, while date and name do not. The description only repeats that name and date are required, adding no meaning beyond the schema's required array, and it does not explain the optional year, fields, or precision parameters.

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

Purpose5/5

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

States a specific verb ('Calculate'), resource ('Personal Year number'), and system ('Kabbalistic (Mathers strict)'). The system name distinguishes it from the many sibling numerology variants (Chaldean, Pythagorean, Vedic, and non-strict Kabbalistic).

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

Usage Guidelines2/5

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

No guidance on when to choose this tool over alternatives such as astroway_numerology_kabbalistic_personal_year or astroway_numerology_pythagorean_personal_year. It only lists required parameters and cost, leaving selection to inference.

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

astroway_numerology_kabbalistic_strict_pinnaclesPinnacle Cycles (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate four Pinnacle cycles with their age boundaries: life chapters of opportunity. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/pinnacles] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
pinnaclesNo

TDQS

B3.2/5.0
Behavior3/5

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 endpoint, required fields, and a concrete cost (10 credits, Tier 1), which is real value beyond annotations, but it says nothing about what the four cycles/age boundaries look like or any auth/rate considerations.

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

Conciseness4/5

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

Front-loads the core purpose in one sentence, then uses compact bracketed metadata for group, endpoint, required inputs, and cost. No wasted prose, though the bracketed block is boilerplate rather than explanation.

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

Completeness4/5

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

With an output schema present, return values need not be explained, and annotations cover the safety profile. The description supplies system, endpoint, required fields, and cost, but omits any differentiation from the near-identical non-strict kabbalistic sibling.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'date' and 'name' carry only pattern/length constraints. The description merely restates '[Required: name, date]', which the schema already encodes, so it adds no new parameter meaning.

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

Purpose4/5

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

States a specific verb ('Calculate'), resource ('four Pinnacle cycles with their age boundaries'), and system ('Kabbalistic (Mathers strict)'). This distinguishes it from the Chaldean/Pythagorean/Vedic pinnacle siblings, though it never explicitly contrasts with the non-strict 'astroway_numerology_kabbalistic_pinnacles' variant that sits right next to it.

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

Usage Guidelines2/5

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

The description gives no when-to-use guidance and names no alternatives among the many pinnacle siblings. It states only required inputs and cost, leaving the agent to infer when this system is preferable to the other four pinnacle variants.

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

astroway_numerology_kabbalistic_strict_soul_urgeSoul Urge / Heart's Desire (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Soul Urge number from the vowels of the full birth name. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/soul-urge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
soulUrgeNo

TDQS

A3.5/5.0
Behavior4/5

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 needs no elaboration. The description adds genuinely new operational context not present in annotations: the endpoint, the required input set, and the 10-credit (Tier 1) cost, which matters for an agent budgeting calls.

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

Conciseness4/5

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

Front-loaded with the operational sentence, followed by terse bracketed metadata. No filler prose; the metadata lines are compact and each carries a distinct fact (group, endpoint, required, cost), though the required-params line duplicates the schema.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and annotations cover the safety profile. With purpose, system, endpoint, cost, and required inputs all present, the agent has enough to invoke the tool correctly; only explicit sibling routing is absent.

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

Parameters3/5

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

Schema coverage is 50%; 'fields' and 'precision' are documented in the schema, while 'name' and 'date' are not. The description partially compensates by clarifying that 'name' is the full birth name from which vowels are extracted, and it restates the required set, but it adds nothing about 'date' beyond the schema pattern.

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

Purpose4/5

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

States a specific verb ('Calculate') and resource ('Soul Urge number from the vowels of the full birth name') and identifies the exact system variant ('Kabbalistic (Mathers strict)'), which is the key differentiator among the many *_soul_urge siblings. It does not explicitly name an alternative sibling, but the system qualifier effectively disambiguates.

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

Usage Guidelines2/5

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

No guidance on when to choose this over the chaldean/pythagorean/vedic or non-strict kabbalistic soul-urge variants. The only context given is required parameters and credit cost, which are operational facts rather than usage guidance.

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

astroway_numerology_pythagorean_balanceBalance (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate the Balance number from initials of each part of the full name. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/balance] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
balanceNo

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnly=true, idempotent=true, destructive=false, so the safety profile is fully covered. The description adds genuinely useful non-annotation context - 10-credit Tier 1 cost and the POST endpoint - but nothing about latency, auth, or result shape. With annotations carrying the behavioral load, this is a modest value-add rather than a rich disclosure.

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

Conciseness4/5

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

The operative sentence is front-loaded and waste-free, and the bracketed group/endpoint/required/cost tags are terse and scannable. Slightly boilerplate-heavy, but nothing is padded or redundant.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and cost, endpoint, and required inputs are all disclosed. The one real gap is that a tool sitting among dozens of near-identical sibling variants gives no cue for when this one is the right pick.

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

Parameters3/5

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

Schema coverage is 50%: the two optional params (fields, precision) are documented in-schema, while name and date carry no descriptions. The phrase 'from initials of each part of the full name' usefully implies `name` must be a multi-part full name and gestures at the derivation, but the date format and length constraints are left entirely to the schema.

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

Purpose5/5

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

States a specific verb ('Calculate'), resource ('Balance number'), and derivation ('from initials of each part of the full name'), then pins the variant with 'Pythagorean system.' Against a sibling set containing chaldean_balance, kabbalistic_balance, and vedic_balance, this cleanly separates both the number type and the system.

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

Usage Guidelines2/5

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

The description says what gets computed but offers no when-to-use guidance and no rule for choosing Pythagorean over the Chaldean, Kabbalistic, Vedic, or numks/numk variants of the same Balance calculation. The endpoint and required-parameter tags are metadata, 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_numerology_pythagorean_birthdayBirthday (pythagorean)B
Read-onlyIdempotent
Inspect

Calculate the Birthday number from the day-of-birth digit. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/birthday] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
birthdayNo

TDQS

B3.2/5.0
Behavior3/5

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 genuinely useful non-annotation context: the endpoint, required inputs, and a cost of 10 credits (Tier 1), which matters for an agent budgeting calls. It does not, however, describe output shape, error behavior, or rate limits.

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

Conciseness4/5

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

The core purpose is front-loaded in the first sentence, followed by a compact bracketed metadata block. Every line carries information (group, endpoint, required fields, cost) with no filler. It is slightly repetitive in restating required params already implied by the schema.

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

Completeness3/5

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

An output schema exists, so return-value explanation is not needed, and cost/endpoint/required fields are present. However, for a tool sitting among ~10 near-identical numerology siblings, the definition lacks the disambiguation an agent needs to select it correctly, leaving a meaningful gap.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'name' and 'date' rely on their types/pattern/minLength constraints. The description restates only that name and date are required and adds no format or semantic detail (e.g., whether name affects the calculation or is only for labeling). Baseline 3 is appropriate.

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

Purpose4/5

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

The description gives a specific verb+resource ("Calculate the Birthday number") and names the system (Pythagorean), which is the key differentiator against the many sibling numerology tools (Chaldean, Kabbalistic, Vedic, numks/nump). The phrase "from the day-of-birth digit" is slightly imprecise but does not obscure the purpose. It stops short of explicitly contrasting itself with the Birthday siblings of other systems, so it earns a 4 rather than a 5.

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

Usage Guidelines2/5

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

There is no guidance on when to pick this tool over the pythagorean_chart, life_path, or the chaldean/kabbalistic/vedic birthday variants. The metadata block supplies group, endpoint, and cost but no selection criteria or exclusions. The agent must infer usage 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_numerology_pythagorean_challengeChallenge Cycles (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate four Challenge cycles: life-area difficulties to master, derived from birth date components. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/challenge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
challengesNo

TDQS

A3.5/5.0
Behavior4/5

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 new operational context not present in structured fields: the credit price (10 credits, Tier 1), the HTTP endpoint, and the confirmed required inputs.

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

Conciseness4/5

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

One front-loaded explanatory sentence followed by compact bracketed metadata. Nothing is padded, though the bracketed block is somewhat telegrammatic rather than prose.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and annotations cover the safety profile. Cost, endpoint, and required inputs round it out; the only real hole is the unexplained role of the 'name' parameter in a date-derived calculation.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, but 'name' and 'date' carry only patterns/lengths with no description. The description partially compensates by listing them as required and by saying the result is 'derived from birth date components', but it leaves unexplained why 'name' is required for a birth-date-derived calculation.

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

Purpose4/5

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

Starts with a specific verb and resource: 'Calculate four Challenge cycles', then glosses the concept as 'life-area difficulties to master, derived from birth date components'. The 'Pythagorean system' tag distinguishes it from the parallel Chaldean, Kabbalistic, Vedic and numks challenge siblings, though it never names an alternative outright.

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

Usage Guidelines2/5

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

There is no when-to-use statement, no condition that separates it from the ~10 other 'challenge' tools in the sibling list, and no prerequisites beyond the bare '[Required: name, date]' line. The agent gets cost and endpoint but no routing logic.

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

astroway_numerology_pythagorean_chartCore Numbers Chart (pythagorean)A
Read-onlyIdempotent
Inspect

The six core numbers in one call: Life Path, Expression, Soul Urge, Personality, Birthday and Personal Year (year defaults to the current year), each with its meaning. 20 credits instead of 60 for six single calls. Every number carries meaning (English) and meaningLocalized in the requested language (translated: false with the English text while a language's strings are on their way). Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/chart] [Required: name, date] [Cost: 20 credits (Tier 2)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
yearNo
systemNo
birthdayNo
lifePathNo
soulUrgeNo
expressionNo
personalityNo
personalYearNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already establish the safe profile (readOnlyHint, idempotentHint, destructiveHint=false, closed world), so the bar for extra disclosure is lower. The description goes beyond them by documenting the localization behavior of the output (meaningLocalized in the requested language, with translated: false and English fallback while strings are in progress) and the credit tier/cost, which are genuine behavioral traits not captured 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.

Conciseness4/5

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

The core value proposition (six numbers, one call, credited discount) and the localization caveat are front-loaded, and the bracketed group/endpoint/required/cost block is easy to scan. 'Numerology: Pythagorean system.' is mildly redundant with the group tag, but overall it is tight and well-ordered.

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

Completeness5/5

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

An output schema exists, so return-value structure needn't be explained, and the description supplies the remaining decision-relevant facts: the six numbers covered, cost/tier, endpoint, required parameters, and the localization fallback. Nothing an agent needs to select or invoke it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 60%, with year, fields and precision already documented in-schema; the description only restates the year default and adds nothing about name/date formats or the compact-mode parameters. It also references strings 'in the requested language' even though no language parameter exists in the schema, which adds ambiguity rather than clarity. Baseline 3 is appropriate here.

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

Purpose5/5

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

The description states a specific resource and scope: 'The six core numbers in one call: Life Path, Expression, Soul Urge, Personality, Birthday and Personal Year', enumerating exactly what is returned. This distinguishes it cleanly from the many single-number Pythagorean siblings (astroway_numerology_pythagorean_life_path, _expression, etc.) without the agent needing to open a schema.

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

Usage Guidelines4/5

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

It gives clear selection context by contrasting the batch tool with 'six single calls' at a 20-vs-60 credit cost, which tells the agent when this is the right choice. It stops short of explicitly naming the alternative tools or stating exclusions (e.g., when a single-number call is preferable), so it is clear context rather than full when/when-not guidance.

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

astroway_numerology_pythagorean_expressionExpression / Destiny (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate the Expression (Destiny) number from full birth name letters (all letters, reduced). Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/expression] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
expressionNo

TDQS

A3.7/5.0
Behavior4/5

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 behavioral context beyond structured fields: cost (10 credits, Tier 1) and the exact endpoint. It does not mention auth requirements or rate limits, which would round it out.

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

Conciseness4/5

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

Front-loaded with the core computation in the first sentence, followed by compact bracketed metadata. Every element is short and useful, though the 'Required: name, date' line partly duplicates the schema's required array.

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

Completeness4/5

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

For a low-complexity two-required-param calculation with an output schema present, the definition is nearly sufficient: name semantics, system, cost, and endpoint are all covered. The remaining gap is the absence of any 'date' semantics and any usage context relative to the dense sibling set.

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

Parameters3/5

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

Schema coverage is 50%: the two required params (name, date) carry no schema descriptions, while fields/precision do. The description clarifies that 'name' means the full birth name in letters, which is a real semantic gain, but it never explains what 'date' represents (presumably birth date) beyond re-stating it as required.

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

Purpose5/5

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

States a specific verb (Calculate), resource (Expression/Destiny number), input basis (full birth name letters, all letters, reduced), and system (Pythagorean). This cleanly separates it from the chaldean/kabbalistic/vedic expression siblings and from soul_urge/personality, which use vowels/consonants rather than all letters.

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

Usage Guidelines2/5

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

The description says what the tool computes but gives no when-to-use, when-not-to-use, or routing advice among the ~70 sibling numerology tools. The system choice is embedded in the name, but no explicit selection guidance or prerequisites are offered.

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

astroway_numerology_pythagorean_life_pathLife Path Number (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate the Life Path number from birth date (year + month + day, reduced). Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/life-path] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
lifePathNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/non-open-world, so the safety profile is covered. The description adds genuinely new operational context: the credit cost ('10 credits (Tier 1)'), the endpoint, and the required-parameter set. It also notes the reduction method, though it doesn't detail error behavior or numeric validation.

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

Conciseness4/5

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

Front-loaded with the core purpose in the first sentence, with machine-readable metadata tags kept short. Every element is compact and carries information; the bracket tags are slightly noisy but not wasteful.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the description supplies purpose, required inputs, cost, and endpoint for a simple calculation tool. The one meaningful gap is cross-system selection guidance, which the sibling set arguably makes necessary.

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

Parameters3/5

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

Schema description coverage is 50% (only 'fields' and 'precision' are documented in-schema). The description partly compensates by clarifying that 'date' is a birth date and that name/date are required, but it adds nothing about the name format or the compact-mode 'fields'/'precision' interaction beyond what the schema already says.

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

Purpose5/5

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

States a specific verb ('Calculate'), a specific resource ('Life Path number'), and the disambiguating system ('Pythagorean'). This cleanly separates it from sibling life-path tools in the Chaldean, Kabbalistic, Vedic, numks and nump families without needing to open any schema.

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

Usage Guidelines2/5

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

There is no guidance on when to choose the Pythagorean life path over the Chaldean, Vedic, or Kabbalistic life-path siblings, nor any prerequisites or exclusions. The '[Group: Numerology: Pythagorean]' tag is context metadata rather than usage direction, so an agent gets no routing help.

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

astroway_numerology_pythagorean_maturityMaturity (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate the Maturity number: sum of Life Path and Expression, activates around age 35. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/maturity] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
maturityNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, and closed-world, so safety is covered. The description adds non-obvious operational facts the annotations omit: the endpoint, the cost (10 credits, Tier 1), and the required inputs, which materially affect invocation decisions.

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

Conciseness4/5

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

Front-loaded with a one-line purpose, followed by compact bracketed metadata. Every element carries information, though the '[Required: name, date]' line partly duplicates the schema's required array.

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

Completeness4/5

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

An output schema exists so return values need not be explained, and the description supplies purpose, cost, and endpoint for a simple two-required-param calculator. The main omission is guidance on how this differs in use from sibling numerology tools.

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

Parameters3/5

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

Schema description coverage is 50%; the description only restates the required set ('name, date') already present in the schema's required array. It adds no semantics for the two required params (formats, name handling) or for the optional fields/precision params, 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.

Purpose5/5

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

The description states a specific verb and resource ('Calculate the Maturity number') and defines the derived quantity ('sum of Life Path and Expression, activates around age 35'), plus the system ('Pythagorean'). This distinguishes it from the many chaldean/kabbalistic/vedic maturity siblings.

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

Usage Guidelines3/5

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

The 'activates around age 35' note gives interpretive context, but there is no explicit when-to-use guidance or routing versus siblings like astroway_numerology_pythagorean_life_path or _chart. Usage is only implied by the taxonomy.

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

astroway_numerology_pythagorean_personalityPersonality (pythagorean)B
Read-onlyIdempotent
Inspect

Calculate the Personality number from the consonants of the full birth name. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/personality] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalityNo

TDQS

B3.2/5.0
Behavior3/5

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 usefully adds the per-call cost (10 credits, Tier 1) and the endpoint, which are real behavioral facts not present in the annotations, but it says nothing about caching, rate limits, 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.

Conciseness4/5

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

The prose is two tight sentences with the computation basis front-loaded, followed by a compact bracketed metadata block (group, endpoint, required params, cost). Nothing is wasted, though the bracketed boilerplate is not strictly description content.

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

Completeness3/5

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

With an output schema present, return values need not be explained, and required inputs plus cost and endpoint are covered. The gaps are interpretive: what the Personality number represents and why to choose this system over the many sibling personality tools are absent, leaving an agent with a numerically complete but contextually thin definition.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'date' has only a regex pattern and 'name' has only length bounds. The description compensates partially by specifying that 'name' must be the full birth name used for consonant extraction, but leaves the meaning/format of 'date' (presumably birth date) unstated.

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

Purpose4/5

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

States a specific verb ('Calculate'), a specific artifact ('Personality number'), and the exact derivation basis ('from the consonants of the full birth name') within the Pythagorean system. This differentiates it from the Chaldean/Kabbalistic/Vedic personality siblings listed in the tool family, though it never names those alternatives directly.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance. The phrase 'from the consonants of the full birth name' hints that a full birth name (not a nickname) is required, but the description never states a selection condition versus the other numerology system variants or the neighboring Chaldean/Vedic personality tools.

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

astroway_numerology_pythagorean_personal_yearPersonal Year (pythagorean)B
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

B3.2/5.0
Behavior3/5

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 non-annotated context: the endpoint and the cost (10 credits, Tier 1). It says nothing further about return behavior, but an output schema exists to carry that burden.

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

Conciseness4/5

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

One compact front-loaded sentence carries the core purpose, followed by tidy bracketed metadata (group, endpoint, requirements, cost). No filler sentences, though the bracket block is slightly noisy against four structured fields.

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

Completeness4/5

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

With an output schema and full annotations present, the description need not explain return values or safety. It supplies endpoint, required params and cost, which is close to complete for a single-value calculation tool; only usage guidance is missing.

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

Parameters3/5

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

Schema description coverage is 60%, with 'year', 'fields' and 'precision' already documented in the schema. The description only restates the required set ('name, date') and adds no syntax, format, or meaning beyond the schema. Baseline 3 is appropriate.

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

Purpose4/5

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

States a specific verb ('Calculate'), resource ('Personal Year number'), scope ('for a given calendar year') and system ('Pythagorean'), which distinguishes it from the Chaldean/Kabbalistic/Vedic personal-year siblings. However, it offers no explicit differentiation from the other Pythagorean calculation tools, leaving that routing to 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.

Usage Guidelines2/5

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

The description frames what the number represents ('the 9-year cycle of personal evolution') but gives no when-to-use guidance, no prerequisites, and no pointer to alternative tools. The agent must infer context entirely from the name and the 9-year-cycle framing.

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

astroway_numerology_pythagorean_pinnaclesPinnacle Cycles (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate four Pinnacle cycles with their age boundaries: life chapters of opportunity. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/pinnacles] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
pinnaclesNo

TDQS

A3.5/5.0
Behavior4/5

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 adds genuinely useful operational context the annotations do not: the credit cost ('10 credits (Tier 1)'), the HTTP endpoint, and which inputs are required. It stops short of describing output shape, but 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.

Conciseness4/5

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

Front-loaded with the purpose in one sentence, followed by a compact metadata block (group, endpoint, required, cost). Nothing is padded, though the metadata lines are template boilerplate rather than prose that earns its place per-tool.

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

Completeness4/5

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

For a simple two-required-parameter calculation tool with an output schema and full annotation coverage, the description supplies enough to invoke correctly: what it computes, the system, the endpoint, required inputs, and cost. The main gap is the absence of routing guidance among the many pinnacle siblings.

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

Parameters3/5

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

Schema description coverage is 50% — 'fields' and 'precision' are documented in the schema, while 'name' and 'date' carry only type/pattern constraints. The description restates the required set ('Required: name, date') but adds no meaning beyond that, so it does not compensate for the undocumented half. Baseline 3 for partial coverage.

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

Purpose4/5

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

States a specific verb and resource ('Calculate four Pinnacle cycles with their age boundaries') and clarifies the meaning of the output ('life chapters of opportunity'). The 'Pythagorean system' tag plus endpoint differentiate it from the Chaldean/Kabbalistic/Vedic pinnacle siblings, though the differentiation is by label 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.

Usage Guidelines2/5

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. Given ~11 sibling pinnacle tools across systems, the description never explains why an agent would choose Pythagorean over Chaldean/Kabbalistic/Vedic, nor does it state prerequisites or prerequisites for the input date.

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

astroway_numerology_pythagorean_soul_urgeSoul Urge / Heart's Desire (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate the Soul Urge number from the vowels of the full birth name. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/soul-urge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
soulUrgeNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive), so the bar is lower. The description adds genuinely useful operational context beyond them: cost (10 credits, Tier 1), the endpoint, and the required inputs. It doesn't mention rate limits or output shape, but annotations already carry the safety profile.

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

Conciseness4/5

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

Front-loaded with purpose in the first sentence, then terse bracketed metadata. Every element earns its place; the bracketed metadata style is dense but readable and free of filler.

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

Completeness4/5

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

For a simple name+date calculation with an output schema present, the definition covers purpose, cost, endpoint, and required inputs — enough for an agent to call it correctly. The missing piece is guidance on when to prefer it over the parallel soul_urge tools in other systems.

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

Parameters3/5

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

Schema description coverage is 50%, so baseline 3 applies. The description adds one real nuance — the name should be the 'full birth name' — but leaves the `date` parameter unexplained for a name/vowel-based calculation, and says nothing about `fields`/`precision` beyond what the schema already documents.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Soul Urge number') plus the method ('from the vowels of the full birth name') and system ('Pythagorean'), which distinguishes it from the Chaldean/Vedic/Kabbalistic soul_urge siblings. The grouping tag reinforces the differentiation, though no sibling is named explicitly.

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

Usage Guidelines3/5

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

The 'Pythagorean system' tag and the [Required: name, date] line imply when the tool applies, but there is no explicit when-to-use vs when-not guidance or comparison against the many alternative numerology tools. Usage must be inferred from the group label.

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

astroway_numerology_vedic_balanceBalance (vedic)B
Read-onlyIdempotent
Inspect

Calculate the Balance number from initials of each part of the full name. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/balance] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
balanceNo

TDQS

B3.2/5.0
Behavior3/5

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 useful behavioral context in the form of the credit cost (10 credits, Tier 1) and the endpoint, but does not describe what the calculation returns or any sensitivity of inputs.

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

Conciseness4/5

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

The working sentence is front-loaded and precise, followed by a compact bracketed metadata block. Nothing is padded, though the metadata block is somewhat template boilerplate rather than tool-specific prose.

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

Completeness4/5

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

Given an output schema exists, return values needn't be explained. The description covers purpose, required inputs, endpoint and cost, which is sufficient for calling a read-only calculation endpoint, with only the system-selection reasoning left implicit.

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

Parameters3/5

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

Schema coverage is 50% — 'fields' and 'precision' are documented in-schema, while 'name' and 'date' are not. The description partly compensates by naming them as required and clarifying that the name is decomposed into 'each part of the full name' for initials, but adds no format or interpretation detail for 'date' or the compact-mode fields.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Balance number from initials of each part of the full name') and tags the system as 'Vedic', which distinguishes it from the chaldean/kabbalistic/pythagorean balance siblings. It is unambiguous what the tool computes, though it never explicitly contrasts itself with those sibling systems.

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

Usage Guidelines2/5

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

The description lists required inputs, group, endpoint and cost, but gives no guidance on when to pick this Vedic balance tool over the chaldean, kabbalistic, pythagorean, or numks/numk balance variants. No prerequisites, no when-not-to-use.

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

astroway_numerology_vedic_birthdayBirthday (vedic)B
Read-onlyIdempotent
Inspect

Calculate the Birthday number from the day-of-birth digit. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/birthday] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
birthdayNo

TDQS

B3.3/5.0
Behavior3/5

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 without the text. The description does add genuine context beyond the annotations, notably the '10 credits (Tier 1)' cost and the POST endpoint, but it says nothing about failure modes, invalid-date behavior, or whether results are cached/reproducible.

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

Conciseness4/5

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

One front-loaded purpose sentence followed by a compact bracketed metadata block; nothing is padded or repeated. The metadata lines are somewhat boilerplate, which keeps it just short of ideal, but the whole definition is scannable in one pass.

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

Completeness3/5

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

Because an output schema exists, the description need not explain return values, and the read-only annotations cover the safety story, so the remaining burden is light. What is missing is the cross-system selection logic in a family of ~30 near-identically named numerology siblings, which is the main risk for an agent choosing this tool.

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

Parameters2/5

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

Schema description coverage is only 50%: 'fields' and 'precision' are documented in the schema, while 'date' and 'name' are not. The description's 'Required: name, date' merely restates the schema's required array, and the only real semantic addition is the hint that the day-of-birth digit drives the result. It never explains the YYYY-MM-DD format requirement or the name length bound.

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

Purpose5/5

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

The description pairs a specific verb and resource ('Calculate the Birthday number') with the system scoping ('Vedic system') and the derivation rule ('from the day-of-birth digit'). That last clause cleanly separates it from siblings like astroway_numerology_pythagorean_birthday and from other Vedic tools such as vedic_life_path or vedic_expression, which use different inputs.

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

Usage Guidelines2/5

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

The description states what the tool computes but never says when to pick this Vedic variant over the Chaldean, Kabbalistic, or Pythagorean birthday siblings, nor when a birthday number is the wrong reading to request. The only usage-adjacent content is the bracketed 'Required: name, date' and cost line, which are preconditions rather than selection guidance.

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

astroway_numerology_vedic_challengeChallenge Cycles (vedic)B
Read-onlyIdempotent
Inspect

Calculate four Challenge cycles: life-area difficulties to master, derived from birth date components. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/challenge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
challengesNo

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already declare readOnly=true, idempotent=true, destructive=false, openWorld=false, so the safety profile is covered. The description adds genuinely useful non-schema context: a POST endpoint and a 10-credit Tier 1 cost, which helps an agent budget calls. It stops short of noting pricing tiers or whether results are cached/repeatable.

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

Conciseness4/5

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

Front-loaded with the core purpose in one sentence, followed by compact bracketed metadata. No filler sentences. The bracket-block formatting is slightly mechanical but each line carries distinct information.

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

Completeness4/5

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

With an output schema present, return format needn't be described, and annotations cover the safety profile; cost and endpoint are supplied. The one soft gap is the mild tension between 'derived from birth date components' and the required name parameter, which is left unexplained.

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

Parameters2/5

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

Schema coverage is only 50%: fields and precision carry their own descriptions, while name and date have constraints (pattern, min/maxLength) but no explanation. The description merely restates 'Required: name, date', which the schema already encodes in its required array, and adds no meaning for the two undescribed parameters.

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

Purpose4/5

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

States a specific verb+resource ('Calculate four Challenge cycles') and clarifies the deliverable ('life-area difficulties to master') plus the system ('Vedic'). The [Group: Numerology: Vedic] tag helps separate it from the Chaldean/Kabbalistic/Pythagorean challenge siblings, but the prose itself never names a sibling, so differentiation leans on the tag rather than the sentence.

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

Usage Guidelines3/5

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

The system label implies when this variant applies (Vedic vs other numerology systems), and the required params/cost line hints at invocation prerequisites. However there is no explicit when-to-use, when-not, or alternative routing against the many sibling challenge tools, leaving usage largely inferred.

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

astroway_numerology_vedic_chartCore Numbers Chart (vedic)A
Read-onlyIdempotent
Inspect

The six core numbers in one call: Life Path, Expression, Soul Urge, Personality, Birthday and Personal Year (year defaults to the current year), each with its meaning. 20 credits instead of 60 for six single calls. Every number carries meaning (English) and meaningLocalized in the requested language (translated: false with the English text while a language's strings are on their way). Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/chart] [Required: name, date] [Cost: 20 credits (Tier 2)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
yearNo
systemNo
birthdayNo
lifePathNo
soulUrgeNo
expressionNo
personalityNo
personalYearNo

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/closed-world, so safety is covered. The description adds genuine context beyond them: the 20-credit cost, the guaranteed presence of `meaning` and `meaningLocalized`, and the `translated: false` fallback when a language's strings are not yet available. That translation-fallback behavior is exactly the kind of trait an agent should know before rendering results.

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

Conciseness4/5

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

Front-loaded with the core value proposition (six numbers, one call), followed by cost and output-shape details. There is mild redundancy: cost appears in both the body and the trailing '[Cost: 20 credits]' tag, and the endpoint/required tags restate schema facts. Still efficient overall.

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

Completeness4/5

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

An output schema exists, so return values need not be detailed, and the description still usefully characterizes them (each number carries meaning + localized meaning). For a read-only chart call this is near-complete; the only real gap is the unexplained reference to a 'requested language' that has no corresponding parameter.

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

Parameters3/5

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

Schema coverage is 60%, and the description mostly repeats what is already documented: `year` defaults to the current year, which the schema states verbatim. It alludes to a 'requested language' for `meaningLocalized`, but no language parameter exists in the schema, so that reference is ambiguous rather than clarifying. Baseline 3 for a description that does not materially extend the parameter definitions.

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

Purpose5/5

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

The description states a specific verb+resource: it returns the six named core numbers (Life Path, Expression, Soul Urge, Personality, Birthday, Personal Year) in a single Vedic numerology call, and explicitly frames itself against the six single-number siblings via cost. The closing tag 'Numerology: Vedic system' also separates it from the Chaldean/Kabbalistic/Pythagorean chart variants. An agent can identify it without opening the schema.

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

Usage Guidelines4/5

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

It gives a clear selection rationale ('20 credits instead of 60 for six single calls'), which tells the agent to prefer this over repeatedly calling the single-number tools. It does not, however, explicitly name the alternative tools or state when a single-number call would be preferable. Clear context, but no explicit exclusion.

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

astroway_numerology_vedic_expressionExpression / Destiny (vedic)A
Read-onlyIdempotent
Inspect

Calculate the Expression (Destiny) number from full birth name letters (all letters, reduced). Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/expression] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
expressionNo

TDQS

A3.5/5.0
Behavior4/5

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 genuinely useful context beyond that: the cost (10 credits, Tier 1), the endpoint, and the reduction method ('all letters, reduced'). It does not address rate limits or response caching, but for a stateless read calculation the disclosure is solid.

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

Conciseness4/5

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

The core sentence is front-loaded and dense with useful specifics; the bracketed metadata block is compact and scannable. Slight redundancy in restating required parameters that the schema already enforces, but nothing egregiously wasteful.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and annotations cover the safety profile; the remaining burden is low for a single-number calculation. The missing piece is disambiguation from the other expression tools across systems, plus any note on how 'date' participates in an expression-number calculation.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'name' and 'date' carry only type/pattern constraints. The description partially compensates by stating that the name is the full birth name (letters) and by echoing the two required parameters, but it never clarifies date semantics (birth date vs. event date) or name formatting rules. Baseline 3 is appropriate given partial coverage.

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

Purpose4/5

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

The description gives a specific verb ('Calculate') and an unambiguous resource ('the Expression (Destiny) number'), and names the system ('Vedic system'), which separates it from the Chaldean, Kabbalistic, and Pythagorean variants in the sibling list. It also adds algorithmic scope ('from full birth name letters (all letters, reduced)'). It does not, however, contrast itself with those siblings in prose, relying on the name/group tag to do that work.

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

Usage Guidelines2/5

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

There is no guidance on when to pick Vedic over Chaldean, Kabbalistic, Pythagorean, or the numk/numks/num-p equivalents of Expression, nor any exclusion or prerequisite. The only usage-adjacent content is the bracketed '[Required: name, date]' and cost line, which state constraints rather than selection criteria.

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

astroway_numerology_vedic_life_pathLife Path Number (vedic)B
Read-onlyIdempotent
Inspect

Calculate the Life Path number from birth date (year + month + day, reduced). Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/life-path] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
lifePathNo

TDQS

B3.2/5.0
Behavior3/5

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 cost (10 credits, Tier 1), the endpoint, and required fields — useful operational context — but says nothing about the return payload's character beyond what the output schema implies.

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

Conciseness4/5

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

The purpose sentence is front-loaded and the bracketed metadata (group, endpoint, required, cost) is scannable and compact. Slightly boilerplate-heavy but nothing is wasteful.

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

Completeness3/5

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

An output schema exists, so return values need not be described, and annotations cover the safety profile. However, given ~11 sibling system variants of the same operation, the description omits any routing guidance, which is the main gap an agent would need filled.

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

Parameters3/5

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

Schema coverage is only 50%: 'fields' and 'precision' are documented in the schema, but 'name' and 'date' have no schema description. The description partially compensates by specifying that date is the birth date (year+month+day, reduced) and that name and date are required, but it never explains what 'name' contributes to a date-only life-path calculation.

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

Purpose4/5

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

States a specific verb and resource ('Calculate the Life Path number from birth date') and tags the Vedic system, which distinguishes it from the chaldean/kabbalistic/pythagorean life_path siblings. It does not explain how the Vedic computation actually differs from those systems, but the naming and group tag are enough for an agent to disambiguate.

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

Usage Guidelines2/5

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

No guidance on when to choose Vedic over the many sibling systems (chaldean, kabbalistic, pythagorean, numks), nor any exclusions or prerequisites beyond the required-parameter list. The agent is left to infer selection purely from the system name.

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

astroway_numerology_vedic_maturityMaturity (vedic)A
Read-onlyIdempotent
Inspect

Calculate the Maturity number: sum of Life Path and Expression, activates around age 35. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/maturity] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
maturityNo

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, covering the safety profile. The description adds the credit cost (10 credits, Tier 1) and endpoint, which are useful operational facts, but says nothing about response shape or rate behavior. Credit cost lifts it slightly above minimal.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence and the bracketed metadata is compact. Slightly padded by the '[Group]/[Endpoint]' block that partly duplicates the name, but no sentence is wasted.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and annotations cover safety. For a 4-param read-only calculator the description supplies purpose, system, cost, and required inputs, leaving little an agent would need to infer.

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

Parameters3/5

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

Schema description coverage is 50%; 'fields' and 'precision' are documented in the schema itself, while 'date' and 'name' carry pattern/length constraints but no prose. The description only restates the required parameters ('Required: name, date') without adding format meaning, so baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb ('Calculate') and resource ('Maturity number'), then defines the concept as the sum of Life Path and Expression. The 'Vedic system' tag distinguishes it from the chaldean/kabbalistic/pythagorean maturity siblings that share the same name.

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

Usage Guidelines3/5

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

The 'Vedic system' label implies which variant to pick among the many maturity tools, but there is no explicit when-to-use guidance or routing statement. Usage context is only inferable from the system name rather than spelled out.

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

astroway_numerology_vedic_personalityPersonality (vedic)A
Read-onlyIdempotent
Inspect

Calculate the Personality number from the consonants of the full birth name. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/personality] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalityNo

TDQS

A3.9/5.0
Behavior4/5

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

The annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds operationally useful context beyond them: the endpoint, the required inputs, and the cost (10 credits, Tier 1), which materially affects whether an agent should call it. It does not describe rate limits or what happens on an invalid name.

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

Conciseness4/5

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

Front-loaded one-sentence purpose followed by four dense bracketed metadata lines with no filler. The '[Group: ...]' line is mildly redundant with the title and name, but everything else (endpoint, required params, cost) earns its place.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and the description supplies endpoint, required inputs and cost. For a single-purpose deterministic calculator that is close to sufficient; only the ambiguity around the 'date' parameter keeps it from being fully complete.

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

Parameters3/5

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

Schema coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'name' and 'date' have no descriptions. The description compensates partially by stating the name must be the full birth name (not a nickname) and by listing both as required, though it never states that 'date' is the birth date or which name variant the Vedic system expects. Baseline 3 for this coverage level.

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

Purpose5/5

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

States a specific verb (Calculate), a specific resource (the Personality number), the derivation rule (from the consonants of the full birth name) and the system (Vedic). That derivation plus the system label is enough to separate it from the ~20 sibling personality calculators (Chaldean, Kabbalistic, Pythagorean, numks) without opening any schema.

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

Usage Guidelines3/5

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 statement or named alternative. Usage is only implied: the 'Vedic system' tag routes the agent within the numerology family, and the 'consonants of the full birth name' rule implicitly distinguishes it from Soul Urge (vowels) and Expression (all letters). Adequate but no exclusion guidance.

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

astroway_numerology_vedic_personal_yearPersonal Year (vedic)A
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

A3.8/5.0
Behavior4/5

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 genuinely useful operational context beyond that: the POST endpoint, the explicit required inputs, and the cost (10 credits, Tier 1), which an agent needs for budgeting. It stops short of rate limits or auth requirements, so not 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.

Conciseness4/5

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

Front-loaded with the one-sentence purpose, then compact bracketed metadata lines that are scannable rather than prose padding. The tag block is slightly mechanical but each line carries distinct information (group, endpoint, required, cost).

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

Completeness5/5

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

An output schema exists, so return values need no explanation, and annotations cover the read-only/idempotent safety profile. Combined with endpoint, required inputs, cost and the "9-year cycle" framing, an agent has everything needed to invoke it correctly; the only omission is cross-system routing guidance, which is a usage-guidelines issue rather than a completeness gap.

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

Parameters3/5

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

Schema coverage is 60%: year, fields and precision carry their own descriptions, while name and date are undocumented in the schema. The description only restates "given calendar year" and the required list, adding no format or semantics beyond the schema (e.g. nothing about date format beyond the pattern). Baseline 3 is right for a partially documented schema.

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

Purpose5/5

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

States a specific verb ("Calculate") plus a specific resource ("Personal Year number for a given calendar year") and names the system ("Vedic"), which is exactly the axis that separates it from the pythagorean/chaldean/kabbalistic personal_year siblings. An agent can pick this tool out of the ~80-tool list without opening the schema.

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

Usage Guidelines2/5

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

The description never says when to choose Vedic over the Pythagorean, Chaldean or Kabbalistic Personal Year variants, nor what input conditions make this the right call. It only lists required parameters and cost, which is metadata rather than usage guidance.

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

astroway_numerology_vedic_pinnaclesPinnacle Cycles (vedic)B
Read-onlyIdempotent
Inspect

Calculate four Pinnacle cycles with their age boundaries: life chapters of opportunity. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/pinnacles] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
pinnaclesNo

TDQS

B3.2/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so safety is covered. The description adds genuinely useful operational context beyond that: the POST endpoint, the required inputs, and the 10-credit Tier 1 cost, which matters for an agent deciding whether to spend a call.

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

Conciseness4/5

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

The prose is a single efficient sentence and the bracketed metadata block is compact and scannable. Nothing is padded, though the metadata lines are largely restatements of structured data.

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

Completeness3/5

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

For a simple read-only calculation with an output schema (so return values need no explanation), the definition covers purpose, cost, and inputs. It falls short on system-selection guidance and on the two undocumented parameters, leaving the agent to guess at the Vedic-vs-other-system choice.

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

Parameters2/5

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

Schema coverage is only 50%: 'fields' and 'precision' carry their own descriptions, while 'name' and 'date' have none. The description's '[Required: name, date]' merely restates what the schema's required array already declares and adds no format, constraint, or meaning beyond it.

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

Purpose4/5

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

States a specific verb and resource ('Calculate four Pinnacle cycles with their age boundaries') and even characterizes the output ('life chapters of opportunity'). The '[Group: Numerology: Vedic]' tag differentiates it from the Chaldean/Kabbalistic/Pythagorean pinnacle siblings, though that differentiation comes from metadata rather than the prose itself.

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

Usage Guidelines2/5

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

There is no when-to-use guidance: nothing says when to pick Vedic pinnacles over vedic_chart, vedic_life_path, or the Chaldean/Kabbalistic pinnacle variants. The 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_numerology_vedic_soul_urgeSoul Urge / Heart's Desire (vedic)A
Read-onlyIdempotent
Inspect

Calculate the Soul Urge number from the vowels of the full birth name. Numerology: Vedic system.

[Group: Numerology: Vedic] [Endpoint: POST /v1/numerology/vedic/soul-urge] [Required: name, date] [Cost: 10 credits (Tier 1)]

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
soulUrgeNo

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already establish this as a read-only, idempotent, non-destructive, closed-world operation, so the safety profile is covered. The description adds genuinely useful behavioral context beyond that: a concrete cost (10 credits, Tier 1), the endpoint, and the required inputs — the cost in particular is not captured anywhere in the structured fields.

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

Conciseness5/5

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

Front-loaded with the operation, followed by tight bracketed metadata lines (group, endpoint, required, cost) that each carry non-redundant information. No filler and nothing repeated from the schema or annotations.

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

Completeness4/5

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

An output schema exists, so return values need no explanation, and rich annotations cover the safety profile. The main gap is the unexplained role of the required date parameter, and the lack of any cross-reference to the sibling soul-urge tools — minor but real omissions for a simple calculation tool.

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

Parameters3/5

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

Schema description coverage is 50%: fields and precision are documented in the schema, while name and date are not. The description partly compensates by clarifying that name is the 'full birth name' (and that vowels drive the result), but it never explains why date is required for a calculation ostensibly based only on the name's vowels. Baseline 3 is fair given the partial compensation.

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

Purpose4/5

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

States a specific verb and resource (calculate the Soul Urge number) and scopes it to vowels of the full birth name, so the agent knows exactly what is computed. The 'Vedic' system tag differentiates it from the many Chaldean/Kabbalistic/Pythagorean soul-urge siblings, though it never explicitly names an alternative, so differentiation is implicit rather than spelled out.

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

Usage Guidelines2/5

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

There is no when-to-use vs when-not guidance and no alternatives named among the ~10 sibling soul-urge tools. The system label implies the context but the agent must infer when Vedic is preferable to Chaldean or Pythagorean variants.

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

astroway_numk_personal_yearPersonal Year (kabbalistic)A
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Kabbalistic (phonetic) system.

[Group: Numerology: Kabbalistic (phonetic)] [Endpoint: POST /v1/numerology/kabbalistic/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_personal_year.)

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

A3.7/5.0
Behavior4/5

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 cost (10 credits, Tier 1), the endpoint, and the required fields, which are genuinely useful operational context. It stops short of noting anything about determinism of results or response shape.

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

Conciseness4/5

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

One front-loaded sentence stating the calculation, followed by a compact metadata block. Every line carries operational signal (group, endpoint, required, cost) with no filler.

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

Completeness4/5

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

For a read-only calculation with an output schema present, the definition covers what the tool computes, its tradition, cost, and required inputs. Remaining gaps (date format nuance, compact-mode behavior) are handled by the schema.

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

Parameters3/5

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

Schema description coverage is 60% (year, fields, precision documented; name and date bare), and the description only restates the two required parameters without adding format or meaning. This matches the baseline for partial schema coverage but adds no compensating detail.

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

Purpose4/5

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

States a specific verb ('Calculate') and resource ('Personal Year number for a given calendar year') and names the tradition ('Kabbalistic (phonetic) system'), which helps distinguish it from the Chaldean/Pythagorean/Vedic siblings. It does not, however, differentiate from the closely named kabbalistic_strict_personal_year or the alias target beyond the alias note.

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

Usage Guidelines3/5

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

The description reveals this is a 'Cursor-friendly alias for astroway_numerology_kabbalistic_personal_year', which tells the agent when to prefer this spelling over the canonical tool, but it gives no guidance on choosing between numerology systems or the strict variant.

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

astroway_numks_balanceBalance (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Balance number from initials of each part of the full name. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/balance] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_balance.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
balanceNo

TDQS

A3.5/5.0
Behavior3/5

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 description needn't re-state safety. It adds useful metadata operations don't get elsewhere – cost (10 credits, Tier 1), the endpoint method, required inputs, and the alias relationship – which is genuinely valuable for agent budgeting. But it says nothing about auth, rate limits, or failure modes. Its one real work product is a single sentence plus bracketed metadata; a 3 reflects adequate but incomplete 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.

Conciseness4/5

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

Front-loaded with the action and system in the first sentence, then a compact metadata block. No wasted prose. The alias note is arguably the sole candidate for trimming, but at this size the description is efficient and well-ordered.

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

Completeness4/5

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

An output schema exists, so return values needn't be described; the description instead supplies the operational context (cost, endpoint, required params, alias). Given the simple 4-param, 2-required shape and existing annotations, this is nearly complete. It only falls short of 5 because the alias relationship to the canonical tool is stated but its selection policy is not.

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

Parameters3/5

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

Schema coverage is 50%, so the schema documents `fields` and `precision` while `name` and `date` have types/patterns but no prose description. The description adds only that these are 'Required' and that the balance derives from name initials and the date, which lightly clarifies `name`/`date` semantics. It does not compensate for the 50% gap – it neither explains the pattern/format of `date` nor the minLength/maxLength on `name`. Baseline 3 is appropriate when half the schema is self-documenting.

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

Purpose5/5

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

States a specific computation ('Calculate the Balance number from initials of each part of the full name') and names the exact system ('Kabbalistic (Mathers strict)'). Unlike most numerology siblings, it even distinguishes itself semantically from the plain Kabbalistic balance by naming the strict system and describing the initials-based derivation, so an agent can route correctly.

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

Usage Guidelines2/5

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

Gives no when-to-use guidance, no exclusions, and no comparison against the ~80 sibling tools. The '(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_balance)' note implies equivalence but doesn't explicitly say 'prefer one over the other' or 'do not call both'. The agent must infer selection entirely.

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

astroway_numks_birthdayBirthday (kabbalistic-strict)B
Read-onlyIdempotent
Inspect

Calculate the Birthday number from the day-of-birth digit. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/birthday] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_birthday.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
birthdayNo

TDQS

B3.3/5.0
Behavior3/5

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 genuinely new behavioral context — a 10-credit Tier 1 cost and the required-input set — but says nothing about latency, failure modes, or how the strict system's output differs.

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

Conciseness4/5

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

The purpose sentence is front-loaded and the remaining lines are a scannable metadata block (group, endpoint, required, cost, alias). Every line carries information, though the bracketed boilerplate is slightly heavier than prose would be.

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

Completeness4/5

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

With an output schema present the description needn't explain return values, and annotations cover safety; endpoint, required inputs, cost, and system are all stated. The remaining gap — the difference between 'strict' and non-strict Kabbalistic results — is a nice-to-have rather than a blocker.

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

Parameters2/5

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

Schema description coverage is 50%: `fields` and `precision` are documented in the schema, while `date` and `name` are bare. The description's only parameter content is '[Required: name, date]', which merely restates the schema's required array, and it never explains why `name` is needed for a number derived from the day-of-birth digit — a real ambiguity an agent would want resolved.

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

Purpose4/5

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

The first sentence gives a specific verb+resource ('calculate the Birthday number') and names the system ('Kabbalistic (Mathers strict)'), which separates it from the Chaldean/Pythagorean/Vedic birthday siblings. It never explicitly contrasts itself with the non-strict `astroway_numerology_kabbalistic_birthday`, so the 'strict' distinction is left implicit.

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

Usage Guidelines3/5

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

The description supplies endpoint, required inputs, cost tier, and a note that this is a 'Cursor-friendly alias' of `astroway_numerology_kabbalistic_strict_birthday`, which is useful routing context. However it never says when to choose this variant over the non-strict Kabbalistic birthday tool or over the canonical name, so usage remains implied.

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

astroway_numks_challengeChallenge Cycles (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate four Challenge cycles: life-area difficulties to master, derived from birth date components. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/challenge] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_challenge.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
challengesNo

TDQS

A3.9/5.0
Behavior4/5

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 context beyond that: the endpoint (POST /v1/...), the required inputs, and a cost of 10 credits (Tier 1). It does not need to describe return format since 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.

Conciseness4/5

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

The purpose sentence comes first and the metadata (group, endpoint, required, cost, alias) is stacked in compact bracketed lines. Nothing is wasted, though the endpoint and alias lines are operational bookkeeping rather than selection-relevant content.

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

Completeness4/5

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

An output schema exists, so return values need not be explained, and annotations carry the safety profile. The description covers purpose, system, required inputs and cost, which is enough to invoke the tool correctly; only the differentiator between the strict and non-strict kabbalistic variants is left implicit.

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

Parameters3/5

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

Schema description coverage is 50%: `fields` and `precision` are documented in the schema itself, while `name` and `date` are only constrained by pattern/length. The description repeats '[Required: name, date]', which the schema already marks as required, so it adds no meaning beyond the structured data. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb (Calculate) plus resource (four Challenge cycles), and pins the exact system: 'Numerology: Kabbalistic (Mathers strict)'. This lets an agent separate it from the chaldaic, pythagorean, vedic and non-strict kabbalistic challenge siblings without opening any schema.

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

Usage Guidelines3/5

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

The [Group] tag and system label imply when this tool applies, but there is no explicit when-to-use statement, no exclusions, and no named alternative among the many sibling variants (e.g. kabbalistic vs kabbalistic_strict, challenge vs pinnacles). Guidance is inferable from the naming, not stated.

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

astroway_numks_expressionExpression / Destiny (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Expression (Destiny) number from full birth name letters (all letters, reduced). Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/expression] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_expression.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
expressionNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive behavior. The description adds genuinely useful operational context beyond that: the POST endpoint, the required inputs, and a 10-credit (Tier 1) cost. It does not describe output format, but an output schema exists to 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.

Conciseness4/5

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

Front-loads the purpose in one sentence, then uses compact bracketed metadata blocks for group/endpoint/required/cost and a parenthetical alias note. Efficient and scannable, with no wasted prose.

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

Completeness4/5

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

For a calculation tool with an output schema and full safety annotations, the definition supplies the endpoint, cost tier, required inputs, and system disambiguation. The only real gap is the unexplained 'date' parameter, which the schema does not describe either.

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

Parameters3/5

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

Schema coverage is 50% – 'fields' and 'precision' are documented in the schema, while 'name' and 'date' are not. The phrase 'full birth name letters (all letters, reduced)' usefully clarifies what 'name' must contain, but the role of 'date' in an Expression-number calculation is never explained.

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

Purpose5/5

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

States a specific verb ('Calculate') and resource ('Expression (Destiny) number from full birth name letters'), names the system (Kabbalistic / Mathers strict), and explicitly identifies itself as a Cursor-friendly alias for the canonical sibling. An agent can distinguish it from the pythagorean/chaldean/vedic expression tools without opening the schema.

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

Usage Guidelines3/5

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

Usage is implied by the system tag and the alias note, and required parameters plus cost are stated, but there is no explicit when-to-use/when-not guidance or comparison against the non-strict Kabbalistic expression sibling or other systems' expression tools.

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

astroway_numks_life_pathLife Path Number (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Life Path number from birth date (year + month + day, reduced). Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/life-path] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_life_path.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
lifePathNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotent/non-destructive, and the description adds genuinely useful context beyond them: cost (10 credits, Tier 1), the endpoint, and the required inputs. It doesn't mention latency or failure modes, but for a deterministic calculation tool this is solid added value.

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

Conciseness4/5

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

The leading sentence is front-loaded and the bracketed metadata is scannable rather than prose bloat. The group line slightly duplicates the system name already stated in sentence one, but overall it is tight and earns its space.

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

Completeness4/5

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

With an output schema present, return values need no explanation, and the description covers system, required inputs, cost tier and endpoint. What's missing is any cue on choosing this variant over the ~80 numerology siblings, but the alias note partly covers that.

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

Parameters3/5

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

Schema coverage is 50%: `fields` and `precision` are self-documented, while `name` and `date` have only type/pattern constraints. The description restates the required pair and explains the reduction ('year + month + day, reduced'), but never explains why a `name` is needed for a Life Path calculation — a real semantic gap the schema also leaves open.

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

Purpose5/5

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

States a specific verb (Calculate) and resource (the Life Path number) and pins the exact variant: 'Kabbalistic (Mathers strict) system', which is exactly what separates it from the pythagorean/chaldean/vedic and non-strict kabbalistic life-path siblings. It even names the canonical tool it aliases, so the agent can disambiguate without reading the schema.

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

Usage Guidelines3/5

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

The '[Group: ...]' and '[Endpoint: ...]' metadata imply the context of use, and the alias note clarifies routing, but there is no explicit statement of when to prefer this strict variant over the plain kabbalistic or pythagorean life-path tools. Usage is inferable from the system label 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_numks_maturityMaturity (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Maturity number: sum of Life Path and Expression, activates around age 35. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/maturity] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_maturity.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
maturityNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, non-destructive, closed-world behavior. The description adds value beyond them: cost (10 credits, Tier 1), the endpoint, required inputs, and the note that it is a cursor-friendly alias — useful operational context. Return semantics are covered by the output schema.

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

Conciseness4/5

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

The one-line purpose is front-loaded and every bracketed metadata line (group, endpoint, required, cost, alias) carries distinct routing or operational value. Slightly list-heavy but no filler sentences.

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

Completeness4/5

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

With an output schema handling return values and annotations covering the safety profile, the description supplies the remaining essentials: compute inputs, cost, endpoint, and system identity. Only the selection guidance among sibling systems is absent.

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

Parameters3/5

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

Schema description coverage is 50%: 'fields' and 'precision' are documented in the schema, while 'name' and 'date' are not. The description only restates the required set, adding no format or 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.

Purpose5/5

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

States a specific verb and resource ('Calculate the Maturity number'), supplies the composing formula ('sum of Life Path and Expression'), and pins the exact system ('Kabbalistic (Mathers strict)'). This distinguishes it from the sibling Kabbalistic, Pythagorean, Vedic, and non-strict variants, and the alias line ties it to astroway_numerology_kabbalistic_strict_maturity.

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

Usage Guidelines2/5

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

The description explains what the number means ('activates around age 35') but gives no when-to-use guidance or routing among the many maturity/system siblings. An agent is left to infer selection from the group label alone.

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

astroway_numks_personalityPersonality (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Personality number from the consonants of the full birth name. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/personality] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_personality.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalityNo

TDQS

A3.9/5.0
Behavior4/5

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 behavioral context the annotations lack: a cost of 10 credits (Tier 1), the required inputs, and the HTTP endpoint. It does not mention rate limits, auth, or failure modes, so it is good but not exhaustive.

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

Conciseness4/5

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

The core purpose leads the description in one clean sentence, with metadata (group, endpoint, required, cost, alias) relegated to bracketed tags that are easy to skim. Slightly tag-heavy, but no sentence is wasted.

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

Completeness4/5

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

An output schema exists so return values need not be explained, and annotations carry the safety profile. Purpose, system, cost, and required inputs are all present, leaving only the role of `date` and cross-tool routing as gaps.

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

Parameters3/5

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

Schema description coverage is 50% (only `fields` and `precision` are described in the schema). The description usefully clarifies that `name` is the 'full birth name' whose consonants drive the result, but it never explains the required `date` parameter, which is unexplained in both places and odd for a name-derived number. Partial compensation only, so baseline 3.

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

Purpose5/5

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

States a specific verb and resource ('Calculate the Personality number from the consonants of the full birth name') and names the system ('Kabbalistic (Mathers strict)'), which is exactly the axis separating it from the chaldean/pythagorean/vedic personality siblings and from non-strict kabbalistic. An agent can select it without opening the schema.

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

Usage Guidelines3/5

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

Usage is implied by the system designation and the note that it is an alias for `astroway_numerology_kabbalistic_strict_personality`, which helps disambiguate the duplicate-tool situation. However, there is no explicit when-to-use/when-not or any statement of when to prefer a chart or full-name tool instead.

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

astroway_numks_personal_yearPersonal Year (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_personal_year.)

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

A3.8/5.0
Behavior4/5

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 genuinely useful operational context the annotations lack: a cost of 10 credits (Tier 1), the required inputs, and the POST endpoint. It does not describe output shape, but 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.

Conciseness4/5

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

The lead sentence is front-loaded and the metadata block is scannable, with no filler prose. Minor waste in repeating 'Required: name, date' already present in the schema, but overall tight.

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

Completeness4/5

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

For a read-only calculation tool with an output schema, the definition supplies system identity, cost, endpoint, required inputs, and the alias relationship. The main residual gap is that the two required string parameters (name, date) get no format or meaning guidance anywhere.

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

Parameters2/5

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

Schema description coverage is only 60%: `year`, `fields`, and `precision` are documented in the schema, while `name` and `date` are not. The description adds no semantics for those two beyond restating 'Required: name, date', which duplicates the schema's required list, and 'given calendar year' only loosely gestures at the year parameter.

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

Purpose5/5

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

States a specific verb (Calculate), resource (Personal Year number), and scope (for a given calendar year, the 9-year cycle), then pins the exact system variant 'Kabbalistic (Mathers strict)'. Against siblings that split into chaldean/pythagorean/vedic and a non-strict kabbalistic line, an agent can pick this one without opening a schema.

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

Usage Guidelines3/5

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

The system label implicitly routes the agent within the numerology family, and the alias note tells it when this name is the one to call. But there is no explicit when-to-use versus the sibling variants (chaldean/kabbalistic/pythagorean personal_year) or when to prefer this over the long-form canonical name.

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

astroway_numks_pinnaclesPinnacle Cycles (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate four Pinnacle cycles with their age boundaries: life chapters of opportunity. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/pinnacles] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_pinnacles.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
systemNo
pinnaclesNo

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description still adds materially: the credit cost (10 credits, Tier 1) is an invocation-time consideration agents may need to weigh, plus the endpoint and grouping. It does not describe error or validation behavior, but that gap is modest.

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

Conciseness4/5

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

The core sentence is front-loaded and tells the agent what the tool returns before the bracketed metadata. The group/endpoint/required/cost lines are compact and scannable, though the endpoint line duplicates the group line's information for an agent that cannot make HTTP calls.

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

Completeness5/5

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

An output schema exists, so return-value documentation is unnecessary, and the annotations cover the safety profile. With the system variant named, cost disclosed, alias noted, and required inputs identified, an agent has everything needed to choose and call this tool correctly.

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

Parameters3/5

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

Schema description coverage is at 50%: `fields` and `precision` are well documented in the schema, but `name` and `date` carry only constraints (pattern, min/maxLength) with no prose. The description's '[Required: name, date]' merely restates the schema's required array and adds no semantic detail, so it does not compensate for the undocumented half.

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

Purpose5/5

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

States a specific verb ('Calculate') and resource ('four Pinnacle cycles with their age boundaries') and pins the exact system variant ('Kabbalistic (Mathers strict)'), which is what separates it from the pythagorean/chaldean/vedic pinnacle siblings and from the other kabbalistic-strict aspect tools. It also discloses the alias relationship to `astroway_numerology_kabbalistic_strict_pinnacles`, so an agent can recognize the duplicate.

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

Usage Guidelines3/5

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

The alias note is genuinely useful for tool selection, telling the agent this and the long-named variant are interchangeable. However, there is no explicit when-to-use / when-not guidance relative to the other numerology aspect tools (life_path, challenge, maturity), leaving the agent to infer that 'pinnacles' means the age-chapter reading.

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

astroway_numks_soul_urgeSoul Urge / Heart's Desire (kabbalistic-strict)A
Read-onlyIdempotent
Inspect

Calculate the Soul Urge number from the vowels of the full birth name. Numerology: Kabbalistic (Mathers strict) system.

[Group: Numerology: Kabbalistic (Mathers strict)] [Endpoint: POST /v1/numerology/kabbalistic-strict/soul-urge] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_kabbalistic_strict_soul_urge.)

NameRequiredDescriptionDefault
dateYes
nameYes
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
soulUrgeNo

TDQS

A4.2/5.0
Behavior4/5

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 burden is covered. The description adds genuinely useful non-structured context: a fixed price of 10 credits (Tier 1), the required inputs, and the endpoint. It does not describe the returned values, but an output schema exists so that is not a gap.

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

Conciseness4/5

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

The core purpose is front-loaded in the first two sentences, with the bracket metadata organized into scannable label/value lines. The block is slightly verbose relative to the tiny calculation it describes, but nothing is truly wasted.

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

Completeness5/5

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

For a single-purpose calculation tool, the definition covers system, endpoint, required inputs, and cost, while annotations carry the safety profile and an output schema covers returns. An agent has everything needed to call it correctly.

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

Parameters3/5

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

Schema description coverage is 50%: `fields` and `precision` are documented in-schema but `name` and `date` are not. The description adds real meaning for `name` by specifying it is the full birth name and that only vowels are used, but it never explains why a `date` is required for a soul-urge calculation, leaving that parameter opaque.

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

Purpose5/5

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

States a specific verb and resource ('Calculate the Soul Urge number from the vowels of the full birth name') and pins the system to 'Kabbalistic (Mathers strict)', which lets an agent separate it from the chaldean/pythagorean/vedic and non-strict kabbalistic siblings. The alias note ties it explicitly to astroway_numerology_kabbalistic_strict_soul_urge.

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

Usage Guidelines4/5

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

Supplies clear operating context: the system group, the endpoint, the required inputs, and the cost tier, plus the cursor-friendly alias routing. It never states when this should be preferred over the canonical non-alias sibling or when not to use it, so there is context but no exclusions.

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

astroway_nump_personal_yearPersonal Year (pythagorean)A
Read-onlyIdempotent
Inspect

Calculate the Personal Year number for a given calendar year: the 9-year cycle of personal evolution. Numerology: Pythagorean system.

[Group: Numerology: Pythagorean] [Endpoint: POST /v1/numerology/pythagorean/personal-year] [Required: name, date] [Cost: 10 credits (Tier 1)]

(Cursor-friendly alias for astroway_numerology_pythagorean_personal_year.)

NameRequiredDescriptionDefault
dateYes
nameYes
yearNoCalendar year to read. Defaults to the current year (UTC).
fieldsNoCompact mode: comma-separated dotted paths to keep, relative to `data`, e.g. "planets.name,planets.longitude,houses.cusp". Omit for the whole response.
precisionNoCompact mode: round fractional numbers to this many decimals. Longitudes carry 14 by default; 2 is finer than any chart is drawn.

Output Schema

NameRequiredDescription
dateNo
nameNo
systemNo
personalYearNo

TDQS

A3.9/5.0
Behavior4/5

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 genuinely useful operational context beyond that: a concrete cost of 10 credits (Tier 1), the HTTP endpoint, and the required-field set, which an agent needs for budgeting and validation before calling.

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

Conciseness4/5

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

The core purpose and system are front-loaded in the first sentence, with structured metadata ([Group]/[Endpoint]/[Required]/[Cost]) following. The bracketed lines are somewhat boilerplate, but each carries usable information and the alias note is short and placed last.

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

Completeness4/5

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

An output schema exists, so return values need not be described, and annotations cover safety. The definition supplies cost, endpoint, required fields, and system context adequate for a simple computation tool; the only minor gap is that `name`/`date` semantics rest entirely on the schema.

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

Parameters3/5

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

Schema description coverage is 60% (year, fields, precision are documented in-schema; name and date are not). The description only restates that name and date are required, which the schema's `required` array already declares, so it adds little meaning for the two undocumented parameters and nothing for the documented ones. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb (Calculate) and resource (Personal Year number) for a given calendar year, and locates it in the Pythagorean system. Against siblings sharing the same number type across Chaldean/Kabbalistic/Vedic systems, the 'Pythagorean' qualifier plus the explicit alias note cleanly disambiguates it from astroway_numerology_pythagorean_personal_year and the astroway_numk/numks variants.

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

Usage Guidelines3/5

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

The description implies when to use it (reading the 9-year personal cycle for a specific calendar year) but gives no explicit when-to-use vs alternatives, e.g. personal_year vs life_path, or Pythagorean vs other numerology systems. The alias note does helpfully signal equivalence with the canonical tool, so the routing hint is partial rather than absent.

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.

  1. 1 tool update
    • Changedastroway_destiny_matrix_ladini4 fields changed
      • addedOutput schema / properties / ageScale
        Added value: +{
        +  "anyOf": [
        +    {
        +      "items": {
        +        "anyOf": [
        +          {
        +            "additionalProperties": {},
        +            "properties": {
        +              "age": {
        +                "anyOf": [
        +                  {
        +                    "type": "number"
        +                  },
        +                  {
        +                    "type": "null"
        +                  }
        +                ]
        +              },
        +              "number": {
        +                "anyOf": [
        +                  {
        +                    "type": "number"
        +                  },
        +                  {
        +                    "type": "null"
        +                  }
        +                ]
        +              }
        +            },
        +            "type": "object"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ]
        +      },
        +      "type": "array"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / karmicTail
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "code": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "d": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "d1": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "d2": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / loveLine
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "code": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "crossing": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "d1": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "heart": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / moneyLine
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "c1": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "code": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "crossing": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "dollar": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
  2. 1 tool update
    • Changedastroway_destiny_matrix_ladini4 fields changed
      • addedOutput schema / properties / ancestral
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "bottomLeft": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "bottomRight": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "topLeft": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "topRight": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "arcanum": {
        +                  "anyOf": [
        +                    {
        +                      "additionalProperties": {},
        +                      "properties": {
        +                        "archetype": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "name": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "negativeSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "number": {
        +                          "anyOf": [
        +                            {
        +                              "type": "number"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "positiveSide": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "resourceOffered": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        },
        +                        "taskOfSoul": {
        +                          "anyOf": [
        +                            {
        +                              "type": "string"
        +                            },
        +                            {
        +                              "type": "null"
        +                            }
        +                          ]
        +                        }
        +                      },
        +                      "type": "object"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / personalPurpose
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "arcanum": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "archetype": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "name": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "negativeSide": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "positiveSide": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "resourceOffered": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "taskOfSoul": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "number": {
        +          "anyOf": [
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / pointD
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "arcanum": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "archetype": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "name": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "negativeSide": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "positiveSide": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "resourceOffered": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "taskOfSoul": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "number": {
        +          "anyOf": [
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
      • addedOutput schema / properties / pointE
        Added value: +{
        +  "anyOf": [
        +    {
        +      "additionalProperties": {},
        +      "properties": {
        +        "arcanum": {
        +          "anyOf": [
        +            {
        +              "additionalProperties": {},
        +              "properties": {
        +                "archetype": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "name": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "negativeSide": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "number": {
        +                  "anyOf": [
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "positiveSide": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "resourceOffered": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                },
        +                "taskOfSoul": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "null"
        +                    }
        +                  ]
        +                }
        +              },
        +              "type": "object"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        },
        +        "number": {
        +          "anyOf": [
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ]
        +        }
        +      },
        +      "type": "object"
        +    },
        +    {
        +      "type": "null"
        +    }
        +  ]
        +}
  3. 5 tool updates
    • Addedastroway_numerology_chaldean_chart
    • Addedastroway_numerology_kabbalistic_chart
    • Addedastroway_numerology_kabbalistic_strict_chart
    • Addedastroway_numerology_pythagorean_chart
    • Addedastroway_numerology_vedic_chart
  4. 8 tool updates
    • Changedastroway_numerology_chaldean_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_numerology_kabbalistic_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_numerology_kabbalistic_strict_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_numerology_pythagorean_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_numerology_vedic_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_numk_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_numks_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
    • Changedastroway_nump_personal_year2 fields changed
      • addedInput schema / properties / year / description
        Added value: +"Calendar year to read. Defaults to the current year (UTC)."
      • changedInput schema / required
        Previous value: -[
        -  "name",
        -  "date",
        -  "year"
        -]New value: +[
        +  "name",
        +  "date"
        +]
  5. 78 tool updates
    • First observedastroway_account_status
    • First observedastroway_agent_tools
    • First observedastroway_cost_estimate
    • First observedastroway_destiny_matrix_ladini
    • First observedastroway_mcp_agent_debate
    • First observedastroway_mcp_agent_pool_status
    • First observedastroway_mcp_ai_chat
    • First observedastroway_mcp_ai_comparison_coach
    • First observedastroway_mcp_ai_explain_aspect
    • First observedastroway_mcp_ai_explain_transit
    • First observedastroway_mcp_multi_agent_coordinate
    • First observedastroway_mcp_multi_chart_context
    • First observedastroway_mcp_rag_search
    • First observedastroway_mcp_streaming
    • First observedastroway_mcp_tool_call_stream
    • First observedastroway_mcp_tools_list
    • First observedastroway_numerology_chaldean_balance
    • First observedastroway_numerology_chaldean_birthday
    • First observedastroway_numerology_chaldean_challenge
    • First observedastroway_numerology_chaldean_expression
    • First observedastroway_numerology_chaldean_life_path
    • First observedastroway_numerology_chaldean_maturity
    • First observedastroway_numerology_chaldean_personal_year
    • First observedastroway_numerology_chaldean_personality
    • First observedastroway_numerology_chaldean_pinnacles
    • First observedastroway_numerology_chaldean_soul_urge
    • First observedastroway_numerology_kabbalistic_balance
    • First observedastroway_numerology_kabbalistic_birthday
    • First observedastroway_numerology_kabbalistic_challenge
    • First observedastroway_numerology_kabbalistic_expression
    • First observedastroway_numerology_kabbalistic_life_path
    • First observedastroway_numerology_kabbalistic_maturity
    • First observedastroway_numerology_kabbalistic_personal_year
    • First observedastroway_numerology_kabbalistic_personality
    • First observedastroway_numerology_kabbalistic_pinnacles
    • First observedastroway_numerology_kabbalistic_soul_urge
    • First observedastroway_numerology_kabbalistic_strict_balance
    • First observedastroway_numerology_kabbalistic_strict_birthday
    • First observedastroway_numerology_kabbalistic_strict_challenge
    • First observedastroway_numerology_kabbalistic_strict_expression
    • First observedastroway_numerology_kabbalistic_strict_life_path
    • First observedastroway_numerology_kabbalistic_strict_maturity
    • First observedastroway_numerology_kabbalistic_strict_personal_year
    • First observedastroway_numerology_kabbalistic_strict_personality
    • First observedastroway_numerology_kabbalistic_strict_pinnacles
    • First observedastroway_numerology_kabbalistic_strict_soul_urge
    • First observedastroway_numerology_pythagorean_balance
    • First observedastroway_numerology_pythagorean_birthday
    • First observedastroway_numerology_pythagorean_challenge
    • First observedastroway_numerology_pythagorean_expression
    • First observedastroway_numerology_pythagorean_life_path
    • First observedastroway_numerology_pythagorean_maturity
    • First observedastroway_numerology_pythagorean_personal_year
    • First observedastroway_numerology_pythagorean_personality
    • First observedastroway_numerology_pythagorean_pinnacles
    • First observedastroway_numerology_pythagorean_soul_urge
    • First observedastroway_numerology_vedic_balance
    • First observedastroway_numerology_vedic_birthday
    • First observedastroway_numerology_vedic_challenge
    • First observedastroway_numerology_vedic_expression
    • First observedastroway_numerology_vedic_life_path
    • First observedastroway_numerology_vedic_maturity
    • First observedastroway_numerology_vedic_personal_year
    • First observedastroway_numerology_vedic_personality
    • First observedastroway_numerology_vedic_pinnacles
    • First observedastroway_numerology_vedic_soul_urge
    • First observedastroway_numk_personal_year
    • First observedastroway_numks_balance
    • First observedastroway_numks_birthday
    • First observedastroway_numks_challenge
    • First observedastroway_numks_expression
    • First observedastroway_numks_life_path
    • First observedastroway_numks_maturity
    • First observedastroway_numks_personal_year
    • First observedastroway_numks_personality
    • First observedastroway_numks_pinnacles
    • First observedastroway_numks_soul_urge
    • First observedastroway_nump_personal_year

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Calculate a Cosmic Score across 26 ancient divination systems (BaZi, Vedic, Western, Nine Star Ki, Thai Seven Number, and more) deterministically from a birth date — the cross-tradition consensus when traditions disagree.
    7
    103 npm
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Vedic and Western astrology for AI agents: 103 read-only tools for natal charts, dasha, kundali matching with Rajju and Vedha vetoes, panchanga, numerology and tarot, backed by Swiss Ephemeris and verified against NASA JPL Horizons.
    103
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables traditional Chinese fortune-telling through BaZi (Four Pillars) analysis, including solar/lunar date conversion, Five Element balance calculations, Ten Gods deduction, and destiny interpretation for metaphysics applications.
    117 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources