Skip to main content
Glama

Birthstar Vedic Astrology MCP

get_grahas

Get planetary positions for a cached chart.

Args:
    chart_id: Handle returned by create_chart.
    planets: Optional list of names to fetch (e.g. ["Moon", "Saturn"]).
        Defaults to the 9 classical grahas. Also accepts the outer bodies
        Uranus, Neptune, Pluto, Ceres, Pallas, Juno, Vesta, Chiron.
    detail: "basic" (default) or "full". Full adds the KP sub-lord and
        sub-sub-lord, navamsa sign, compound friendships, avasthas,
        gandanta/pushkara flags, natural karaka and daily motion.

Per planet: sign, degrees, nakshatra + pada + lord, house (whole-sign),
retrograde flag, and dignity state (exalted/debilitated/own/friend/etc).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
detailNobasic
planetsNo
chart_idYes

Schema Changelog

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

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden, and it does so well: it explains the default planet set, accepted outer bodies, the difference between basic and full detail, and the exact per-planet return fields. It does not explicitly state side-effect-free behavior or error conditions, but the get/cached framing plus the detailed return specification make the behavior largely transparent.

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

Conciseness5/5

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

The description is organized into Args and return-value sections, each sentence adds useful information, and there is no filler. The key scoping phrase is front-loaded, and the parameter details are concise but complete.

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?

There is no output schema, so the description fills that gap by listing the per-planet return fields. It also covers defaults, optional inputs, and all detail-mode extensions. For a three-parameter read-style tool, nothing essential is missing for an agent to call it correctly.

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 compensate, and it fully does. chart_id is tied to create_chart, planets lists examples and accepted bodies plus the default, and detail explains both allowed values and what 'full' adds. This is richer than the raw schema alone.

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 planetary positions for a cached chart.' It distinguishes itself from siblings like get_houses and get_aspects by specifying the resource type (planetary positions) and the precondition (a cached chart). The scope is unambiguous.

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 description gives clear context: this tool operates on a chart_id produced by create_chart, and it is the tool to call for planetary positions. It does not explicitly name alternatives or state when not to use it, but the 'cached chart' precondition and the parameter documentation make the intended usage clear.

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