Skip to main content
Glama

ERUX Astrology & Ephemeris Engine

Server Details

Ephemeris natal & mundane charts, Vimshottari Dasha, transit horoscopes, Horas, and Vedic yogas.

Ownership verified
Status
Healthy
Uptime
99.8% over 23 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
akashagl92/erux_mcp
GitHub Stars
0

TDQS

A3.9/5.0

Scored across 6 tools

Disambiguation4/5

Each tool targets a distinct astrological output (chart, dasha, horoscope, yogas, interpretation, guidance), but there is notable overlap: ask_astrology_guidance and get_interpretation both deliver personalized life-pillar guidance, and calculate_chart already returns the active Dasha cycle that calculate_dasha computes separately. Descriptions help, but an agent could reasonably hesitate between the guidance/interpretation pair.

Naming Consistency4/5

All names follow a verb_noun pattern (calculate_chart, get_horoscope, ask_astrology_guidance), which is readable and predictable. However, three different verbs (ask_, calculate_, get_) are mixed with no clear rule for which verb applies to which operation, a minor deviation from a single consistent convention.

Tool Count5/5

Six tools is a well-scoped set for an astrology and ephemeris engine, with each tool earning its place by covering a distinct calculation or interpretation domain. No bloat or thin coverage.

Completeness4/5

The surface covers the core lifecycle: chart calculation, dasha timeline, transit horoscope, yogas, interpretation, and open-ended guidance. Minor gaps remain (e.g. explicit synastry/compatibility, standalone muhurta or divisional-chart tools), but the core workflows are covered and workable.

Available Tools

6 tools
ask_astrology_guidanceA
Read-only
Inspect

Provide authentic, deterministic astrological framework guidance for any life question (e.g. career shift, relationship milestones, financial timing, health/somatic wellness, relocation). Corresponds to the /ask slash command in Discord and Google Chat. Explains which astrological houses, ruling planetary significators (Karakas), and timing triggers govern the user's inquiry, with a direct CTA to explore the full chart on ERUX.

NameRequiredDescriptionDefault
platformNoCaller host platform or MCP client identifier (e.g. 'chatgpt', 'claude_desktop', 'cursor', 'windsurf', 'smithery', 'global_registry', 'zed', or any custom client). Defaults to 'mcp_gateway'mcp_gateway
questionYesAstrological or life guidance question to analyze (e.g. 'When will my career shift?', 'What does my 10th house indicate?')

Output Schema

NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=false, and destructiveHint=false, so the safety profile is covered. The description adds genuinely new behavioral context: the response is deterministic, it mirrors the /ask slash command, it always ends with a CTA to ERUX, and it explains which houses/significators/timing triggers apply.

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 sentences, front-loaded with the core purpose, then the invocation context, then the output content. Every sentence carries information an agent can act on, and the marketing-flavored adjectives ('authentic, deterministic') do not bloat the structure.

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 restated. The description is complete enough for a single-required-param read tool with full annotation coverage, though a routing note distinguishing it from get_interpretation would close the remaining 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% and both parameters carry their own descriptions, so the schema does the heavy lifting; the baseline of 3 applies. The description reinforces what 'question' means by listing example inquiries, but adds no format, length, or platform-selection guidance 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 (provide guidance) and resource (astrological framework guidance) and enumerates the substance of the answer: houses, ruling significators (Karakas), and timing triggers. It never names or contrasts itself against the sibling tools (get_interpretation in particular), so an agent cannot distinguish the two from the description alone.

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

Usage Guidelines3/5

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

The parenthetical example list (career shift, relationship milestones, financial timing, health, relocation) implies the domain of suitable questions, and the Discord/Google Chat slash-command mapping hints at the calling context. But there is no explicit when-to-use versus get_interpretation/calculate_chart, and no exclusions or prerequisites.

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

calculate_chartA
Read-onlyIdempotent
Inspect

Calculate a deterministic personal natal chart or national mundane chart using the high-precision astronomical ephemeris calculation engine. Corresponds to /chart and /mundane slash commands. Supports EITHER a country name (e.g. 'India', 'USA', 'France') for a national chart OR personal birth details ('date', 'time', 'city'). Automatically provides dynamic 'chart_ui_url', calculates planetary placements, active Dasha cycle, grounded knowledge-base insights, and an ERUX interactive UI link. CRITICAL FOR AI: When calculate_chart is called, present the key placements cleanly and provide a direct, prominent link inviting the user to view their interactive chart wheel on ERUX using 'chart_ui_url' (e.g. ✨ Open Your Interactive Chart Wheel on ERUX).

NameRequiredDescriptionDefault
cityNoBirth city or founding location (e.g. 'London', 'New York', 'Mumbai')
dateNoNatal birth date or event founding date in YYYY-MM-DD format (e.g. '1992-10-24')
timeNoBirth time in 24-hour HH:MM format (default '12:00' solar noon if exact time unknown)12:00
systemNoAstrological coordinate framework: 'hybrid' (Vedic sidereal + Western psychological), 'vedic', or 'western'hybrid
countryNoCountry name for national mundane chart or location disambiguation (e.g. 'United States', 'India', 'France')
birth_cityNoExplicit alias for natal birth city
birth_dateNoExplicit alias for natal birth date (YYYY-MM-DD)
birth_timeNoExplicit alias for natal birth time (HH:MM)
user_promptNoRaw user query for intent arbitration and conversational context grounding
birth_countryNoExplicit alias for natal birth country
include_imageNoSet to true to render and attach a dynamic chart wheel PNG image buffer (default true)

Output Schema

NameRequiredDescription
statusYesExecution status ('success' or error status)
chart_dataYesCore planetary placements, Ascendant, and active Dasha cycle
chart_ui_urlYesDirect interactive chart wheel web link on ERUX
chart_image_urlNoDirect URL to rendered chart wheel PNG image
interpretation_insightsNoGrounded Sun, Moon, Nakshatra, and epoch themes

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), and the description adds real behavioral value: it discloses the return payload (planetary placements, active Dasha cycle, KB insights, chart_ui_url, optional PNG) and instructs the agent on how to present results. That is meaningfully more than the annotations provide.

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

Conciseness3/5

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

The purpose is front-loaded and the middle sentence efficiently enumerates outputs. But the trailing 'CRITICAL FOR AI' block is verbose, repeats the ERUX link idea already stated earlier, and embeds a literal Markdown template — padding that does not fully earn its place in a definition.

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 spelled out, and the description does cover the two operating modes and the optional image output. The remaining gap is the unresolved parameter alias/arbitration ambiguity across 11 parameters, which the description never clarifies.

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 baseline is 3. The description restates the country-vs-birth-details split at a high level, but it does not resolve the ambiguity created by duplicated alias parameters (city/birth_city, date/birth_date, country/birth_country) or the dual role of 'country' for a mundane chart vs. location disambiguation.

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 a deterministic personal natal chart or national mundane chart' — and names the calculation engine and two slash-command equivalents. It is clear what the tool does, but it does not distinguish itself from siblings like calculate_dasha or get_interpretation, even though it claims to compute placements and Dasha cycles that those tools cover.

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?

It gives mode guidance ('Supports EITHER a country name ... OR personal birth details'), which tells the agent the two valid input shapes. However, there are no when-not-to-use rules and no named alternatives (calculate_dasha, get_interpretation) despite obvious overlap, so the routing decision is left implicit.

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

calculate_dashaA
Read-onlyIdempotent
Inspect

Calculate the classical Parashara Vimshottari Dasha planetary timeline (120-year cycle) for a person or founding event. Corresponds to the /dasha slash command. Requires birth date ('date', YYYY-MM-DD), birth time ('time', HH:MM, default '12:00'), and birth city ('city'). Returns current Mahadasha and Antardasha periods, active dates, psychological and karmic significance, upcoming macro-epochs, and a direct link to the interactive ERUX Dasha calendar.

NameRequiredDescriptionDefault
cityNoNatal birth city (e.g. 'London', 'Kanpur')
dateNoNatal birth date in YYYY-MM-DD format (e.g. '1992-10-24')
timeNoNatal birth time in 24-hour HH:MM format (default '12:00')12:00
countryNoCountry of birth to disambiguate city
birth_cityNoExplicit alias for natal birth city
birth_dateNoExplicit alias for natal birth date (YYYY-MM-DD)
birth_timeNoExplicit alias for natal birth time (HH:MM)
target_dateNoTarget historical or future evaluation date (YYYY-MM-DD, defaults to current date)
user_promptNoRaw user query for intent arbitration
birth_countryNoExplicit alias for natal birth country

Output Schema

NameRequiredDescription
resultYes

TDQS

A4.3/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 valuable context: the scope of the calculation (120-year cycle), the output includes Mahadasha/Antardasha periods and active dates, and a direct link to the interactive calendar. It does not mention rate limits or authentication, but for a read-only calculation tool this is sufficient.

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 front-loaded with the core purpose, then lists required inputs, then output details. It is two sentences but dense; every clause adds value. Minor improvement: separating the output list into a bullet could aid scanning, but overall efficient.

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?

Output schema exists, so return values need not be explained. The description covers the domain, required inputs, defaults, and output nature. It omits how aliases are resolved and the significance of target_date, but these are arguably edge cases. For a complex astrological tool, it is nearly complete.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description adds meaning by stating defaults ('time' defaults to '12:00'), format expectations (YYYY-MM-DD, HH:MM), and that city is required. However, it does not explain aliases (birth_city, birth_date) or the role of target_date, user_prompt, and country, which are only described in 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') and resource ('classical Parashara Vimshottari Dasha planetary timeline'), and names the sibling-adjacent capability ('/dasha slash command'). An agent can distinguish it from calculate_chart, get_horoscope, and get_yogas 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 Guidelines4/5

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

It specifies required inputs (birth date, time, city) and default behavior, which implies the when-to-use context. However, it does not explicitly name alternative tools (e.g., calculate_chart for natal charts, get_horoscope for daily predictions) or state when-not-to-use this one.

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

get_horoscopeA
Read-only
Inspect

Generate a personalized transit horoscope, real-world strategic forecast, and exact astronomical time-windows for a user based on their natal placements and active planetary transits. Corresponds to /horoscope and /daily commands. Supports cadences: 'daily' (today's transits and hourly Horas), 'weekly' (7-day Monday–Sunday transit arc), 'monthly' (30-day sign ingresses & lunations), and 'yearly' (12-month Solar Return to Solar Return Varshaphala journey). MANDATORY PARAMETERS: The user's natal birth date ('birth_date', YYYY-MM-DD) and natal birth city ('birth_city') are strictly required. NEVER pass today's date into 'birth_date' — today's transit date is calculated automatically by the server based on location coordinates. If the user asks for a future or target date (e.g. next week or 2027), pass that date into 'target_date', NOT 'birth_date'. Optionally accepts 'current_city' if the user has relocated, 'cadence' ('daily', 'weekly', 'monthly', 'yearly'), and 'user_prompt' containing the user's raw inquiry. For daily cadence, returns 'astronomical_time_windows' (exact topocentric sunrise/sunset, 24 planetary Horas, Rahu Kaal, Abhijit Muhurta, Brahma Muhurta) and 'panchang_timing' (exact Nakshatra and Tithi transitions). CRITICAL FOR AI: When suggesting times of day, you MUST quote the exact astronomical_time_windows provided. Never invent arbitrary hours.

NameRequiredDescriptionDefault
cityNoAlias for natal birth city
dateNoAlias for natal birth date (YYYY-MM-DD)
timeNoAlias for natal birth time (HH:MM)
cadenceNoForecast time window: 'daily' (Horas & Panchang), 'weekly' (7-day), 'monthly' (30-day), or 'yearly' (Varshaphala)daily
countryNoCountry of birth or current location
birth_cityNoREQUIRED: User's natal birth city (e.g. 'London', 'Austin', 'Mumbai').
birth_dateNoREQUIRED: User's natal birth date (YYYY-MM-DD, e.g. '1990-07-12'). Do NOT pass today's date here.
birth_timeNoNatal birth time in 24-hour HH:MM format (default '12:00' if unknown)12:00
target_cityNoAlias for current relocated city
target_dateNoTarget forecast date in YYYY-MM-DD format (must be today or future date)
user_promptNoUser's original inquiry for intent grounding and conversational context
current_cityNoCurrent relocated city for topocentric horizon and local Horas (e.g. 'London')
birth_countryNoNatal country to disambiguate birth city
include_imageNoSet to true to render and attach a dynamic chart wheel PNG image buffer in MCP outputs (default false)
current_countryNoCurrent relocated country

TDQS

A4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false, openWorldHint=true), and the description adds genuinely new behavior: the server auto-computes today's transit date from location coordinates, and the daily cadence returns 'astronomical_time_windows' and 'panchang_timing'. It does not disclose auth, rate limits, or cost.

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, then mandatory params, then cadence specifics — a sensible ordering. It is long and repeats the birth_date warning that already appears in the schema, but nearly every sentence carries 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?

For a 15-parameter tool with no output schema, the description covers the critical invocation path, the returned payload for daily cadence, and the anti-hallucination constraint on times. The alias parameters are only explained in the schema, which is acceptable given 100% schema coverage but leaves the description slightly short of fully self-contained.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description goes further by disambiguating the two easily-confused date parameters and the birth-city vs current-city distinction, which is the highest-risk invocation error here. It omits any mention of the alias parameters (city/date/time/target_city) or include_image.

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 ('Generate a personalized transit horoscope, real-world strategic forecast, and exact astronomical time-windows') and enumerates the cadence variants, so an agent knows exactly what the tool produces. It does not, however, differentiate itself from siblings such as ask_astrology_guidance or calculate_chart, leaving overlap for an agent to resolve.

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 clear conditional routing for cadence ('daily' vs 'weekly' vs 'monthly' vs 'yearly') and an explicit rule for the date trap: pass a future date into 'target_date', not 'birth_date'. It stops short of naming alternative sibling tools or when NOT to use this one.

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

get_interpretationA
Read-onlyIdempotent
Inspect

Get deep personalized astrological interpretation for canonical life pillars or placements (e.g. 'career_and_vocation', 'relationships', 'dasha_analysis', 'wealth_and_finance', 'health_and_vitality'). Corresponds to the /interpret slash command in Discord and Google Chat. Can be run with or without specific birth details.

NameRequiredDescriptionDefault
cityNoOptional birth city for natal chart mapping
dateNoOptional birth date in YYYY-MM-DD format for personalized placements
timeNoOptional birth time in 24-hour HH:MM format (default '12:00')12:00
topicNoCanonical life pillar: 'career_and_vocation', 'relationships', 'wealth_and_finance', 'health_and_vitality', or 'inner_growth'career_and_vocation
systemNoAstrological coordinate framework: 'hybrid', 'vedic', or 'western'hybrid
platformNoCaller host platform or MCP client identifier (e.g. 'chatgpt', 'claude_desktop', 'cursor', 'windsurf', 'smithery', 'global_registry', 'zed', or any custom client). Defaults to 'mcp_gateway'mcp_gateway
birth_cityNoExplicit alias for natal birth city
birth_dateNoExplicit alias for natal birth date (YYYY-MM-DD)
target_cityNoAlias for current relocated city
user_promptNoRaw user query for intent arbitration
current_cityNoCurrent relocated city
birth_countryNoExplicit alias for natal birth country

Output Schema

NameRequiredDescription
resultYes

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 covered. The description adds that it works with or without birth details (a behavioral fallback) and ties it to a slash-command equivalent, but says nothing about output shape, latency, or auth expectations.

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?

Three short sentences, front-loaded with the core purpose before examples and the slash-command note. No filler, though the examples list makes the first sentence long.

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, topic examples, and the optional birth-detail behavior. It could do more to disambiguate the many overlapping city/date alias parameters, but it is adequate for a zero-required-parameter read 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 100%, so the baseline is 3. The description restates pillar values for topic, but its example list includes 'dasha_analysis', which does not appear in the schema's topic enumeration ('inner_growth' does), a mild inconsistency that could mislead value selection.

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 ('Get deep personalized astrological interpretation') and scopes it to canonical life pillars with concrete examples. It is distinguishable from calculator siblings like calculate_chart or calculate_dasha, though it never explicitly says so.

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?

It notes the tool 'can be run with or without specific birth details' and maps to the /interpret slash command, which gives implied usage context. However it never states when to prefer this over ask_astrology_guidance or get_horoscope, nor any exclusions.

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

get_yogasA
Read-onlyIdempotent
Inspect

Identify auspicious & powerful classical Vedic Yogas present in a birth or mundane chart (e.g. Raja Yogas, Dhana Yogas, Pancha Mahapurusha Yogas, Gaja Kesari, Budhaditya). Corresponds to the /yogas slash command in Discord and Google Chat. Requires birth details ('date', 'time', 'city') or country name ('country'). Returns active yogas, classical definitions, and link to ERUX divisional varga breakdown.

NameRequiredDescriptionDefault
cityNoBirth city or founding location
dateNoNatal birth date or event founding date in YYYY-MM-DD format
timeNoBirth time in 24-hour HH:MM format (default '12:00')12:00
countryNoCountry name for personal birth city disambiguation or national mundane chart
birth_cityNoExplicit alias for natal birth city
birth_dateNoExplicit alias for natal birth date (YYYY-MM-DD)
birth_timeNoExplicit alias for natal birth time (HH:MM)
user_promptNoRaw user query for intent arbitration
birth_countryNoExplicit alias for natal birth country

Output Schema

NameRequiredDescription
resultYes

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 the safety profile is covered. The description adds genuinely useful context beyond them: the required input set, the dual natal/mundane modes, and what the call returns (active yogas, classical definitions, ERUX divisional breakdown link).

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?

Three sentences, front-loaded with purpose and examples followed by prerequisites and return contents. The Discord/Google Chat slash-command sentence is the weakest line but does aid context matching; overall no significant padding.

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 annotations present, the description need not explain return values, and it still summarizes them. It covers the two invocation modes and their inputs; the only real gap is that it never explains how the varga/divisional link or alias parameters should be used, which is minor given full schema coverage.

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 all 9 parameters, giving a baseline of 3. The description names only date/time/city/country and is silent on the four birth_* alias parameters and user_prompt, so it adds little and does not resolve the alias-vs-base-param ambiguity.

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 precise verb+resource ('Identify ... Vedic Yogas present in a birth or mundane chart') and enumerates concrete examples (Raja, Dhana, Pancha Mahapurusha, Gaja Kesari, Budhaditya). No sibling tool covers yogas — calculate_chart, calculate_dasha, and get_interpretation are clearly different resources, so an agent can route without opening schemas.

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 a clear precondition: birth details ('date','time','city') OR country name ('country'), and frames the two modes (natal vs. mundane chart). It does not, however, say when to prefer this over calculate_chart for the same chart or note any exclusions/limitations.

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. 6 tool updates
    • Changedask_astrology_guidance2 fields changed
      • addedInput schema / properties / platform
        Added value: +{
        +  "default": "mcp_gateway",
        +  "description": "Caller host platform or MCP client identifier (e.g. 'chatgpt', 'claude_desktop', 'cursor', 'windsurf', 'smithery', 'global_registry', 'zed', or any custom client). Defaults to 'mcp_gateway'",
        +  "title": "Platform",
        +  "type": "string"
        +}
      • addedInput schema / properties / question / description
        Added value: +"Astrological or life guidance question to analyze (e.g. 'When will my career shift?', 'What does my 10th house indicate?')"
    • Changedcalculate_chart13 fields changed
      • addedInput schema / properties / birth_city / description
        Added value: +"Explicit alias for natal birth city"
      • addedInput schema / properties / birth_country / description
        Added value: +"Explicit alias for natal birth country"
      • addedInput schema / properties / birth_date / description
        Added value: +"Explicit alias for natal birth date (YYYY-MM-DD)"
      • addedInput schema / properties / birth_time / description
        Added value: +"Explicit alias for natal birth time (HH:MM)"
      • addedInput schema / properties / city / description
        Added value: +"Birth city or founding location (e.g. 'London', 'New York', 'Mumbai')"
      • addedInput schema / properties / country / description
        Added value: +"Country name for national mundane chart or location disambiguation (e.g. 'United States', 'India', 'France')"
      • addedInput schema / properties / date / description
        Added value: +"Natal birth date or event founding date in YYYY-MM-DD format (e.g. '1992-10-24')"
      • changedInput schema / properties / include_image / default
        Previous value: -falseNew value: +true
      • addedInput schema / properties / include_image / description
        Added value: +"Set to true to render and attach a dynamic chart wheel PNG image buffer (default true)"
      • addedInput schema / properties / system / description
        Added value: +"Astrological coordinate framework: 'hybrid' (Vedic sidereal + Western psychological), 'vedic', or 'western'"
      • addedInput schema / properties / time / description
        Added value: +"Birth time in 24-hour HH:MM format (default '12:00' solar noon if exact time unknown)"
      • addedInput schema / properties / user_prompt / description
        Added value: +"Raw user query for intent arbitration and conversational context grounding"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "properties": {
        +    "chart_data": {
        +      "description": "Core planetary placements, Ascendant, and active Dasha cycle",
        +      "type": "object"
        +    },
        +    "chart_image_url": {
        +      "description": "Direct URL to rendered chart wheel PNG image",
        +      "type": "string"
        +    },
        +    "chart_ui_url": {
        +      "description": "Direct interactive chart wheel web link on ERUX",
        +      "type": "string"
        +    },
        +    "interpretation_insights": {
        +      "description": "Grounded Sun, Moon, Nakshatra, and epoch themes",
        +      "type": "object"
        +    },
        +    "status": {
        +      "description": "Execution status ('success' or error status)",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "status",
        +    "chart_data",
        +    "chart_ui_url"
        +  ],
        +  "title": "calculate_chartOutput",
        +  "type": "object"
        +}
    • Changedcalculate_dasha10 fields changed
      • addedInput schema / properties / birth_city / description
        Added value: +"Explicit alias for natal birth city"
      • addedInput schema / properties / birth_country / description
        Added value: +"Explicit alias for natal birth country"
      • addedInput schema / properties / birth_date / description
        Added value: +"Explicit alias for natal birth date (YYYY-MM-DD)"
      • addedInput schema / properties / birth_time / description
        Added value: +"Explicit alias for natal birth time (HH:MM)"
      • addedInput schema / properties / city / description
        Added value: +"Natal birth city (e.g. 'London', 'Kanpur')"
      • addedInput schema / properties / country / description
        Added value: +"Country of birth to disambiguate city"
      • addedInput schema / properties / date / description
        Added value: +"Natal birth date in YYYY-MM-DD format (e.g. '1992-10-24')"
      • addedInput schema / properties / target_date / description
        Added value: +"Target historical or future evaluation date (YYYY-MM-DD, defaults to current date)"
      • addedInput schema / properties / time / description
        Added value: +"Natal birth time in 24-hour HH:MM format (default '12:00')"
      • addedInput schema / properties / user_prompt / description
        Added value: +"Raw user query for intent arbitration"
    • Changedget_horoscope16 fields changed
      • addedInput schema / properties / birth_city / description
        Added value: +"REQUIRED: User's natal birth city (e.g. 'London', 'Austin', 'Mumbai')."
      • addedInput schema / properties / birth_country / description
        Added value: +"Natal country to disambiguate birth city"
      • addedInput schema / properties / birth_date / description
        Added value: +"REQUIRED: User's natal birth date (YYYY-MM-DD, e.g. '1990-07-12'). Do NOT pass today's date here."
      • addedInput schema / properties / birth_time / description
        Added value: +"Natal birth time in 24-hour HH:MM format (default '12:00' if unknown)"
      • addedInput schema / properties / cadence / description
        Added value: +"Forecast time window: 'daily' (Horas & Panchang), 'weekly' (7-day), 'monthly' (30-day), or 'yearly' (Varshaphala)"
      • addedInput schema / properties / city / description
        Added value: +"Alias for natal birth city"
      • addedInput schema / properties / country / description
        Added value: +"Country of birth or current location"
      • addedInput schema / properties / current_city / description
        Added value: +"Current relocated city for topocentric horizon and local Horas (e.g. 'London')"
      • addedInput schema / properties / current_country / description
        Added value: +"Current relocated country"
      • addedInput schema / properties / date / description
        Added value: +"Alias for natal birth date (YYYY-MM-DD)"
      • addedInput schema / properties / include_image
        Added value: +{
        +  "default": false,
        +  "description": "Set to true to render and attach a dynamic chart wheel PNG image buffer in MCP outputs (default false)",
        +  "title": "Include Image",
        +  "type": "boolean"
        +}
      • addedInput schema / properties / target_city / description
        Added value: +"Alias for current relocated city"
      • addedInput schema / properties / target_date / description
        Added value: +"Target forecast date in YYYY-MM-DD format (must be today or future date)"
      • addedInput schema / properties / time / description
        Added value: +"Alias for natal birth time (HH:MM)"
      • addedInput schema / properties / user_prompt / description
        Added value: +"User's original inquiry for intent grounding and conversational context"
      • changedOutput schema / (root)
        Previous value: -{
        -  "properties": {
        -    "result": {
        -      "additionalProperties": true,
        -      "title": "Result",
        -      "type": "object"
        -    }
        -  },
        -  "required": [
        -    "result"
        -  ],
        -  "title": "get_horoscopeOutput",
        -  "type": "object"
        -}New value: +null
    • Changedget_interpretation12 fields changed
      • addedInput schema / properties / birth_city / description
        Added value: +"Explicit alias for natal birth city"
      • addedInput schema / properties / birth_country / description
        Added value: +"Explicit alias for natal birth country"
      • addedInput schema / properties / birth_date / description
        Added value: +"Explicit alias for natal birth date (YYYY-MM-DD)"
      • addedInput schema / properties / city / description
        Added value: +"Optional birth city for natal chart mapping"
      • addedInput schema / properties / current_city / description
        Added value: +"Current relocated city"
      • addedInput schema / properties / date / description
        Added value: +"Optional birth date in YYYY-MM-DD format for personalized placements"
      • addedInput schema / properties / platform
        Added value: +{
        +  "default": "mcp_gateway",
        +  "description": "Caller host platform or MCP client identifier (e.g. 'chatgpt', 'claude_desktop', 'cursor', 'windsurf', 'smithery', 'global_registry', 'zed', or any custom client). Defaults to 'mcp_gateway'",
        +  "title": "Platform",
        +  "type": "string"
        +}
      • addedInput schema / properties / system / description
        Added value: +"Astrological coordinate framework: 'hybrid', 'vedic', or 'western'"
      • addedInput schema / properties / target_city / description
        Added value: +"Alias for current relocated city"
      • addedInput schema / properties / time / description
        Added value: +"Optional birth time in 24-hour HH:MM format (default '12:00')"
      • addedInput schema / properties / topic / description
        Added value: +"Canonical life pillar: 'career_and_vocation', 'relationships', 'wealth_and_finance', 'health_and_vitality', or 'inner_growth'"
      • addedInput schema / properties / user_prompt / description
        Added value: +"Raw user query for intent arbitration"
    • Changedget_yogas9 fields changed
      • addedInput schema / properties / birth_city / description
        Added value: +"Explicit alias for natal birth city"
      • addedInput schema / properties / birth_country / description
        Added value: +"Explicit alias for natal birth country"
      • addedInput schema / properties / birth_date / description
        Added value: +"Explicit alias for natal birth date (YYYY-MM-DD)"
      • addedInput schema / properties / birth_time / description
        Added value: +"Explicit alias for natal birth time (HH:MM)"
      • addedInput schema / properties / city / description
        Added value: +"Birth city or founding location"
      • addedInput schema / properties / country / description
        Added value: +"Country name for personal birth city disambiguation or national mundane chart"
      • addedInput schema / properties / date / description
        Added value: +"Natal birth date or event founding date in YYYY-MM-DD format"
      • addedInput schema / properties / time / description
        Added value: +"Birth time in 24-hour HH:MM format (default '12:00')"
      • addedInput schema / properties / user_prompt / description
        Added value: +"Raw user query for intent arbitration"
  2. 6 tool updates
    • First observedask_astrology_guidance
    • First observedcalculate_chart
    • First observedcalculate_dasha
    • First observedget_horoscope
    • First observedget_interpretation
    • First observedget_yogas

Publisher details

Operator
Erux
Vendor relationship
Not applicable
Restrictions
Not applicable

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Hosted Streamable HTTP MCP server for Vedic astrology: panchang, kundali (birth chart), matchmaking, dashas, doshas, muhurta and 16 tools computed by a precision astronomy engine.
    17
    18 npm
    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
    B
    maintenance
    Vedic astrology MCP server that computes birth charts, dashas, transits, and ashtakavarga using Swiss ephemerides, enabling Claude to provide astrological interpretations.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.