Skip to main content
Glama

Birthstar Vedic Astrology MCP

get_timeline

Get the turning points between two dates — dasha changes and slow-planet ingresses.

This is the two-clocks view: the dasha sequence counted from birth (which
theme is switched on) against gochara, the real sky on that date (the
trigger). Use it for "what happens in the next five years", "when does this
period change", "when does Saturn cross my Moon". get_dasha_periods answers
when one clock changes; this answers when both point at the same thing.

Every date is exact, bisected against the ephemeris to the day — not a
sampled approximation.

Args:
    chart_id: Handle returned by create_chart. The birth data is reused;
        the range below is independent of the chart's transit_date.
    start_date: YYYY-MM-DD, inclusive.
    end_date: YYYY-MM-DD, after start_date.
    systems: Dasha systems to include — vimshottari, yogini, ashtottari,
        chara_jaimini. Defaults to all four. Antardasha changes are
        reported for vimshottari only; the rest give mahadashas.
    types: Restrict to dasha_change, ingress and/or sade_sati. Defaults to
        all three.
    include_samples: Add a periodic strip showing the running dasha chain
        and Saturn/Jupiter position between the events. Off by default and
        capped at 13 rows, one year of months — for one date in full
        detail use get_transits. The event list is shorter when it is on.
    step: Spacing of that strip — month, quarter or year. Ignored unless
        include_samples is set.

Returns the events, the natal anchors they are counted from, and the
standing Sade Sati state at start_date. A range with more turning points
than fit in one response is truncated **explicitly**, with the date to
resume from — it is never silently shortened.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
stepNomonth
typesNo
systemsNo
chart_idYes
end_dateYes
start_dateYes
include_samplesNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A5/5.0
Behavior5/5

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

No annotations are present, so the description carries the full burden, and it delivers. It discloses that dates are exact and bisected against the ephemeris rather than sampled, that truncation is explicit with a resume date, that include_samples caps at 13 rows and shortens the event list, and that the response includes natal anchors and Sade Sati state. This goes well beyond minimal disclosure.

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?

Although long, the description is appropriately sized for a complex 7-parameter tool with no annotations or output schema. It front-loads the core concept and use cases, then moves logically through an Args section, return behavior, and truncation policy. Each sentence adds substantive information and no filler is present.

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 tool with no output schema and no annotations, the description is remarkably complete. It explains what the tool returns, how dates are calculated, when to choose siblings, what every parameter does, and how edge cases like truncation and sample rows behave. An agent has enough context to invoke it correctly and interpret results confidently.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must fully explain all 7 parameters, and it does. It defines chart_id as a handle from create_chart with independence from transit_date, specifies date inclusiveness and ordering, details systems behavior including antardasha handling, and clarifies step and include_samples interplay. This is exemplary parameter documentation.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Get the turning points between two dates — dasha changes and slow-planet ingresses.' It clearly differentiates this from sibling tools by explaining it is the 'two-clocks view' combining dasha sequence and gochara, and explicitly contrasts it with get_dasha_periods and get_transits.

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?

The description provides explicit when-to-use guidance with concrete example questions like 'what happens in the next five years' and 'when does Saturn cross my Moon'. It also states alternatives: get_dasha_periods for single-clock changes and get_transits for one-date full detail, making the routing decision unambiguous.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation5/5

Every tool targets a distinct astrological subsystem — positions, houses, aspects, strengths, dashas, transits, yogas, doshas, vargas, karakas, etc. The pairs that could plausibly be confused (calculate_birth_star vs create_chart, get_current_dasha vs get_dasha_periods, get_timeline vs get_transits) are explicitly cross-referenced with guidance on when to use which, so an agent can disambiguate reliably.

Naming Consistency4/5

24 of 30 tools follow a uniform get_X pattern, and the remaining action tools (create_chart, calculate_birth_star, describe_chart, rectify_birth_time) still use verb_noun. Only health_check and server_stats break the pattern as noun-style names, and the different verbs reflect genuinely different actions rather than inconsistency.

Tool Count3/5

30 tools is on the heavy side and exceeds the comfortable range, even though Vedic astrology is a genuinely broad domain with many distinct subsystems. Some tools are meta or adjacent (get_account_status, health_check, server_stats, get_prompt_library, get_numerology) and a couple could arguably be consolidated (get_current_dasha as a mode of get_dasha_periods), but each tool does carve out a distinct purpose.

Completeness5/5

The chart lifecycle is fully covered: create_chart produces a cached handle, describe_chart inventories it, and the get_* readers retrieve every section. Timing (dashas, transits, timeline), strengths (shadbala, vimsopaka), yogas, doshas, vargas, compatibility, rectification, and even meta-concerns (account status, health) are all present with no obvious dead ends or missing operations for a computation-cache domain.

Resources