# Birthstar Vedic Astrology MCP (remote · mcp.birthstar.ai)

30 Vedic Jyotish tools: natal charts, dashas, yogas, nakshatras. Swiss Ephemeris.

- Trust score: 79/100 (medium)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-24

## Components

- remote · `mcp.birthstar.ai`: 79/100 (this document), [markdown](https://verifymcp.io/servers/amarpathak-birthstar/mcp.md), [page](https://verifymcp.io/servers/amarpathak-birthstar/mcp)

## Channel facts

- Endpoint: `https://mcp.birthstar.ai/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.29.1`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-24.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 30 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 82/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 5388 tokens (~179/item across 30 items; 30 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 100/100
  - No destabilizing schema changes in the last 30 days.
- **Tool Coverage**: 67/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 30 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 30 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Birthstar Vedic Astrology MCP server?

Birthstar Vedic Astrology MCP is a hosted endpoint at https://mcp.birthstar.ai/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http amarpathak-birthstar 'https://mcp.birthstar.ai/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "amarpathak-birthstar": {
      "url": "https://mcp.birthstar.ai/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "amarpathak-birthstar": {
      "type": "http",
      "url": "https://mcp.birthstar.ai/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.amarpathak-birthstar]
url = "https://mcp.birthstar.ai/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "amarpathak-birthstar": {
      "type": "remote",
      "url": "https://mcp.birthstar.ai/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add amarpathak-birthstar --url 'https://mcp.birthstar.ai/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  amarpathak-birthstar:
    url: "https://mcp.birthstar.ai/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "amarpathak-birthstar": {
      "Transport": "http",
      "Url": "https://mcp.birthstar.ai/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add amarpathak-birthstar -t streamable-http -u 'https://mcp.birthstar.ai/mcp'
```

### Other

```json
{
  "mcpServers": {
    "amarpathak-birthstar": {
      "type": "http",
      "url": "https://mcp.birthstar.ai/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-10 (score 79, +54)

- [security improvement] Injection markers: unverified → pass
- [security improvement] Stability: unverified → pass
- [security improvement] Transport: fail → pass
- [security] Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 30 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
- [functional improvement] Endpoint reachability: not serving MCP → reachable
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Schema quality: unverified → 100
- [functional improvement] MCP protocol: unverified → pass

### 2026-10-03 (score 25, −53)

- [security regression] Endpoint reachability: reachable → not serving MCP
- [security regression] Tool safety: pass → unverified
- [security regression] Stability: 0.90 → unverified
- [security regression] Transport: pass → fail
- [security] Authorization: Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
- [functional regression] Schema quality: 100 → unverified
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified

### 2026-10-01 (score 78, +1)

No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-29 (score 77, +1)

No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-28 (score 76, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-27 (score 76, +1)

No change was recorded against any check on this day. Stability & Change Management went from 70 to 73. That category is still filling its 30-day observation window: 21 days of observed history at the previous scan, 22 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-25 (score 75, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-23 (score 74, +1)

No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes.

## MCP tools (30)

### `create_chart` (~453 tokens)

Compute a full Vedic natal chart and cache it, returning a short handle.

    Call this FIRST. It returns a `chart_id` plus a small summary. Pass that
    chart_id to the other tools (get_grahas, get_houses, get_current_dasha,
    get_panchanga, get_yogas) to read specific parts of the chart without
    recomputing it.

    Args:
        dob: Date of birth, YYYY-MM-DD (proleptic Gregorian).
        tob: Time of birth, HH:MM or HH:MM:SS, 24-hour, local to `tz`.
        tz:  IANA timezone name (e.g. "Asia/Kolkata") or fixed offset "+05:30".
        lat: Latitude in decimal degrees, North positive.
        lon: Longitude in decimal degrees, East positive.
        ayanamsha: Sidereal zero-point — lahiri, raman, kp, true_chitra,
            yukteshwar, or fagan_bradley.
        house_system: whole_sign, sripati, equal, placidus, or kp.
        node_type: "true" or "mean" lunar nodes.
        transit_date: YYYY-MM-DD the "now" questions are answered against —
            which dasha is running, where the transits are, whether Sade Sati
            is active. Defaults to today *in `tz`*, not in UTC, so a caller in
            Asia/Kolkata at 01:00 local gets their own date rather than the
            previous one. Set it to ask about another date; a chart made
            yesterday still answers as of yesterday.

    Returns the chart_id and the headline placements (birth star, moon sign,
    ascendant) — not the full document, which is far too large to return.

Input parameters:

- `ayanamsha` (string)
- `dob` (string, required)
- `house_system` (string)
- `lat` (number, required)
- `lon` (number, required)
- `node_type` (string)
- `tob` (string, required)
- `transit_date`
- `tz` (string, required)

### `get_grahas` (~209 tokens)

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 parameters:

- `chart_id` (string, required)
- `detail` (string)
- `planets`

### `get_houses` (~181 tokens)

Get the 12 houses (bhavas) for a cached chart.

    Args:
        chart_id: Handle returned by create_chart.
        method: "whole_sign" (default) — sign, lord, lord placement, karaka,
            occupants. "bhava_chalit" — Sripati/Porphyry cusps with degree
            spans, which can place a planet in a different house than
            whole-sign does. "kp_cusps" — Placidus cusps with sub-lords.

    Always includes an `analysis` block: each planet's functional nature for
    this ascendant (benefic/malefic/mixed by the houses it rules), plus the
    Baadhaka and Maraka houses and lords.

Input parameters:

- `chart_id` (string, required)
- `method` (string)

### `get_current_dasha` (~111 tokens)

Get the currently-running dasha periods for a cached chart.

    Returns the active lord at every nested level (Maha -> Antar -> Pratyantar
    -> Sukshma -> Prana) for each dasha system the engine computed, with the
    ISO start/end dates of each period.

    NOTE: "current" is evaluated against the transit date baked into the chart
    when it was computed, not against today's date at call time.

Input parameters:

- `chart_id` (string, required)

### `get_dasha_periods` (~251 tokens)

Walk the dasha tree — list periods at any level, past or future.

    Use this for "when does my next antardasha start", "what runs after this
    mahadasha", "when was I in Jupiter". get_current_dasha only tells you what
    is running now; this gives you the whole sequence.

    Args:
        chart_id: Handle returned by create_chart.
        system: vimshottari (default), yogini, ashtottari, or chara_jaimini.
        within: Drill down by naming the enclosing lords, outermost first.
            None (default) lists the mahadashas. ["Sun"] lists the antardashas
            inside the Sun mahadasha. ["Sun", "Mercury"] lists the
            pratyantardashas inside that antardasha. Chara Jaimini is keyed by
            rashi name rather than graha.

    Each period carries lord, ISO start/end, duration in years, and whether it
    is the one currently running.

Input parameters:

- `chart_id` (string, required)
- `system` (string)
- `within`

### `get_timeline` (~481 tokens)

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 parameters:

- `chart_id` (string, required)
- `end_date` (string, required)
- `include_samples` (boolean)
- `start_date` (string, required)
- `step` (string)
- `systems`
- `types`

### `get_lagna_points` (~135 tokens)

Get the chart angles, special lagnas, Arudha padas and Bhrigu Bindu.

    Beyond the ascendant: MC/IC/Descendant/Vertex, the time-based special
    lagnas (Bhava/Hora/Ghati/Sree/Indu), the Jaimini Arudha padas (AL, A2-A12,
    Upapada) and Bhrigu Bindu.

    Special lagnas whose rate is school-divergent are reported under
    `not_computed` with a reason rather than guessed.

Input parameters:

- `chart_id` (string, required)

### `get_panchanga` (~75 tokens)

Get the birth panchanga (the five limbs of the Vedic calendar).

    Returns tithi (lunar day + paksha), vara (weekday), nakshatra, yoga, and
    karana at the moment of birth, plus the lunar month and season.

Input parameters:

- `chart_id` (string, required)

### `get_yogas` (~85 tokens)

Get the yogas (classical planetary combinations) present in a chart.

    Only yogas whose rule actually tested true are listed, each with the rule
    that matched. An empty list is a real result — it means none of the
    implemented yogas are present in this chart, not that the check was skipped.

Input parameters:

- `chart_id` (string, required)

### `get_varga` (~169 tokens)

Get one divisional chart (varga) from a cached chart.

    Args:
        chart_id: Handle returned by create_chart.
        varga: Which divisional chart, e.g. "D9" (navamsa), "D10" (dashamsa),
            "D11", "D60". See describe_chart -> varga_coverage for the full list
            of what this engine computes and what it deliberately does not.

    Returns the varga ascendant and each planet's sign in that chart. Where a
    varga's counting scheme diverges between schools, the scheme actually used
    is reported in `method` — do not assume it matches your tradition.

Input parameters:

- `chart_id` (string, required)
- `varga` (string)

### `get_vimsopaka` (~118 tokens)

Get Vimsopaka bala — each planet's dignity-weighted strength across the 16 vargas.

    Use this to answer "which planets are strong across the divisional charts?"
    A planet in its own or exalted sign in all sixteen scores the full 20.

    Returns the score, the ceiling actually applicable, and an interpretive
    band. The score is the classical quantity; the band labels are a convention
    laid over it and are tagged as such.

Input parameters:

- `chart_id` (string, required)

### `get_strengths` (~333 tokens)

Get Shadbala, Bhava Bala and Ishta/Kashta phala — how strong each planet and house is.

    Call this for "which planet is strongest", "is Saturn strong enough", or
    "which houses are weak". Shadbala is the six-fold Parasari strength; a
    planet meets expectation when `ratio` >= 1.

    Read `ratio` (>= 1 means the planet clears its own bar) and `rank_by_ratio`
    when saying a planet is strong or weak; the summary's `meets_requirement`
    lists every planet that qualifies. Each planet has its own `required_rupa`,
    so plain `rank` (absolute `total_rupa`) frequently disagrees: a planet can
    clear its own bar and still rank low overall. Use `strongest_by_ratio` /
    `weakest_by_ratio` for interpretation; the bare `strongest` / `weakest`
    keys are absolute-rupa based and kept only for backward compatibility.

    Args:
        chart_id: Handle returned by create_chart.
        detail: "summary" (default) gives totals, both ranks, ratio and
            Ishta/Kashta per planet. "full" adds the six sub-bala breakdowns and
            is several times larger — ask for it only when the components matter.

    Ishta phala is benefic capacity, Kashta phala malefic; they are derived
    from Shadbala, not independent measurements.

Input parameters:

- `chart_id` (string, required)
- `detail` (string)

### `get_ashtakavarga` (~177 tokens)

Get Ashtakavarga bindus — the point-score each sign carries, used for transit strength.

    Call this for "is this a good sign for Saturn to transit" or "which signs
    are strongest overall". Sarvashtakavarga (SAV) sums the seven planetary
    charts; the classical pre-reduction total is always 337.

    Args:
        chart_id: Handle returned by create_chart.
        planet: Restrict the per-planet (Bhinna) charts to one graha.
        include_sodhana: Add the trikona/ekadhipatya reductions and Shodhya
            Pinda. Off by default — it roughly triples the response.

Input parameters:

- `chart_id` (string, required)
- `include_sodhana` (boolean)
- `planet`

### `get_aspects` (~162 tokens)

Get planetary and sign aspects — who is looking at which house.

    Graha drishti is the Parasari planetary aspect (everything aspects the 7th;
    Mars, Jupiter, Saturn and the nodes have special aspects). Rasi drishti is
    the Jaimini sign aspect, a different system — do not merge the two.

    Args:
        chart_id: Handle returned by create_chart.
        planet: Restrict graha drishti to one graha.
        include_argala: Add Argala and Virodhargala (Jaimini intervention).
            Off by default — it roughly doubles the response.

Input parameters:

- `chart_id` (string, required)
- `include_argala` (boolean)
- `planet`

### `get_karakas` (~120 tokens)

Get the Chara (Jaimini) karakas plus Karakamsa and Swamsa.

    The Atmakaraka — the planet at the highest degree in its sign — is the
    single most-used significator in Jaimini analysis. Returns the whole ladder
    in descending degree order, plus the natural (naisargika) karakas.

    Note Rahu's degrees are counted in reverse, so its `effective_degrees` will
    differ from its actual position.

Input parameters:

- `chart_id` (string, required)

### `get_transits` (~135 tokens)

Get gochara — where the planets are now relative to the natal chart.

    Answers "is Sade Sati running", "is Jupiter transiting well", "is today
    favourable". Houses are counted from BOTH the natal Moon (the classical
    reference for gochara) and the natal Lagna.

    IMPORTANT: transits are computed for the chart's `as_of` date, which is the
    transit_date it was created with — not today unless the chart was created
    today. Pass transit_date to create_chart to ask about another date.

Input parameters:

- `chart_id` (string, required)

### `get_day_periods` (~124 tokens)

Get sunrise/sunset and the auspicious/inauspicious windows of the BIRTH day.

    Rahu kala, Yamaganda, Gulika kala, Abhijit and Brahma muhurta, plus true
    sunrise/sunset, day length and whether the birth was by day.

    IMPORTANT: these are the windows for the DATE OF BIRTH, not for today. This
    tool cannot answer "when is Rahu kala today" — that needs a chart created
    for today's date.

Input parameters:

- `chart_id` (string, required)

### `get_avasthas` (~136 tokens)

Get planetary avasthas — the maturity, alertness and mood states of each graha.

    Baladi is the age state (infant..dead) and scales a planet's ability to
    deliver. Jagradadi is awake/dreaming/sleeping. Deeptadi is the mood from
    exaltation down to combustion.

    Two further ladders, lajjitadi and sayanadi, are deliberately NOT computed —
    their conditions are school-divergent — and are reported as deferred rather
    than guessed.

Input parameters:

- `chart_id` (string, required)
- `planets`

### `get_fixed_stars` (~89 tokens)

Get conjunctions between the grahas and named prominent fixed stars.

    Returns only real conjunctions within the configured orb, plus what was
    scanned. An empty `conjunctions` list is a provable negative, not a skipped
    check — `planets_scanned` and `stars_scanned` show the search that ran.

Input parameters:

- `chart_id` (string, required)

### `get_longevity` (~108 tokens)

Get Ayurdaya (longevity) estimates — EXPERIMENTAL, not for predictive use.

    The engine computes Pindayu and Nisargayu, but flags the whole section
    experimental: the classical methods are textually divergent and the
    reduction rules are only partially applied. The disclaimer is returned with
    the numbers and must be passed on to the reader, not dropped.

    Do not present these as a lifespan prediction.

Input parameters:

- `chart_id` (string, required)

### `get_compatibility` (~116 tokens)

Calculate 36-point Ashta-Kuta Guna Milan compatibility between two charts.

    Evaluates all 8 classical Parashari Kutas (Varna, Vashya, Tara, Yoni animal
    intimacy, Graha Maitri, Gana, Bhakoot, and Nadi) plus a Kuja Dosha (Manglik)
    mutual cross-audit between Person 1 and Person 2.

Input parameters:

- `chart_id_1` (string, required)
- `chart_id_2` (string, required)

### `get_doshas` (~87 tokens)

Audit classical Vedic doshas: Kuja Dosha (Manglik), Kaal Sarp, Gandanta, Pitre.

    Evaluates Mars placements from Lagna, Moon, and Venus with 8 classical cancellation
    exceptions, 12 Kaal Sarp variants, Gandanta junctions, and Pitre dosha indicators.

Input parameters:

- `chart_id` (string, required)

### `get_numerology` (~78 tokens)

Calculate Chaldean Name Numerology and Vedic Date of Birth numbers.

    Calculates Name Number (compound + root), Birth Number (Mulank), Destiny Number
    (Bhagyank), ruling planetary archetypes (Swami Grahas), and harmonic resonance.

Input parameters:

- `dob` (string)
- `name` (string, required)

### `get_prompt_library` (~235 tokens)

Fetch curated high-value prompt templates and multi-tool question workflows.

    Call this tool whenever you want to suggest high-value questions to the user,
    or when the user asks "what can you do?", "what should I ask?", or wants
    guided astrology workflows (e.g. Sade Sati analysis, timeline forecast,
    dasha transitions, chart strength, school comparisons, timing windows).

    Args:
        category: Optional category filter. One of 'all', 'Core Reading',
            'Timing & Transits', 'Career & Wealth', 'Strengths & Accuracy',
            'Relationships', 'Daily & Remedies'. Names are matched
            case-insensitively; an unrecognised one is an error listing the
            valid names, never a silent empty result.
        include_full_templates: Set to True to retrieve the full expanded prompt text.
            Defaults to False for compact workflow titles and tool chains.

    Returns a structured catalog of prompt templates with their titles, descriptions,
    required arguments, and which underlying tools they chain.

Input parameters:

- `category`
- `include_full_templates` (boolean)

### `describe_chart` (~77 tokens)

Get metadata and an inventory of what a cached chart contains.

    Useful for orienting before drilling in: returns the birth data and config
    it was computed with, the top-level sections available in the document, and
    how many fields the engine honestly marked as deferred or uncomputable.

Input parameters:

- `chart_id` (string, required)

### `rectify_birth_time` (~533 tokens)

Test how much a recorded birth time can actually be narrowed, and against what.

    Two modes:

    * **No events** — scans the uncertainty window and reports how many
      genuinely distinct charts it contains, what differs between them, and
      what does not. Use this FIRST to find out whether rectification is even
      worth attempting.
    * **With events** — scores each candidate against dated life events and
      checks the result against a null model of randomised dates.

    This tool does NOT return "your real birth time is X", and you should not
    present it that way. The unit of the answer is the **variant** — a group of
    minutes producing an identical chart structure. Preferring one minute over
    its neighbour inside a variant is fitting arithmetic, not evidence.

    Read `verdict.usable` before quoting anything else. Fewer than three
    independent, well-dated events fits the events rather than the birth time,
    and the verdict will say so.

    Args:
        dob, tob, tz, lat, lon: Birth data, as for create_chart. `tob` is the
            centre of the window, not an assertion.
        events: Dated life events, e.g.
            [{"date": "2015-06", "type": "job_change"},
             {"date": "2019-03", "type": "marriage"}].
            Dates may be YYYY-MM or YYYY-MM-DD. See `event_types` in the error
            response for the accepted vocabulary.
        half_width_minutes: Half-width of the uncertainty window (max 120).
        step_minutes: Candidate spacing in minutes.
        ayanamsha: Sidereal zero-point.

    Costs one full chart computation per candidate, with a minimum of 20 per
    call — a 30-minute window at 1-minute steps is 61 charts and takes a few
    seconds. The floor means a very narrow window is not cheaper than one
    considered call, which is deliberate: probing repeatedly is the wrong way
    to use this. On the shared public demo a single call is capped at 61
    candidates; the refusal names two smaller…

Input parameters:

- `ayanamsha` (string)
- `dob` (string, required)
- `events`
- `half_width_minutes` (integer)
- `lat` (number, required)
- `lon` (number, required)
- `step_minutes` (integer)
- `tob` (string, required)
- `tz` (string, required)

### `get_account_status` (~154 tokens)

Check the calling account's plan, remaining chart credits, and what is gated.

    Call this BEFORE attempting a tool that might be refused, not after. It is
    to subscription limits what describe_chart is to chart sections: the index
    you consult to find out what is reachable, so a paywall is something you can
    plan around rather than something you discover by hitting it.

    `credits_remaining` is the number of chart *computations* left this month —
    reading a chart you already created costs nothing, so the count falls only
    when new astronomy is calculated. `gated_tools` lists what the current plan
    cannot reach, and is empty on a paid plan.

### `health_check` (~114 tokens)

Check whether this server is correctly configured and computing accurately.

    Reports the ephemeris mode actually in use, engine versions, and cache
    state. Call this when chart positions look wrong or disagree with another
    source: the usual cause is a missing ephemeris directory, which degrades
    the engine to an approximation without failing.

    `status` is "ok" when the Swiss ephemeris is complete, "degraded" when the
    engine is running on the Moshier fallback.

### `server_stats` (~86 tokens)

Get usage metrics for this server session: calls, latency, errors, payload size.

    Per tool: call count, p50/p95/max latency, average and peak response size,
    and how many responses exceeded the payload budget. Plus cache hit rate and
    a breakdown of errors by type.

    Counters are per-process and reset when the client restarts the server.

### `calculate_birth_star` (~256 tokens)

Compute just a person's Vedic birth star (nakshatra) and core anchors.

    A one-shot shortcut: use this when the birth star is the whole question. If
    you expect follow-up questions about the same person's chart, prefer
    create_chart, which caches the full chart behind a reusable handle.

    Args:
        dob: Date of birth, YYYY-MM-DD (proleptic Gregorian).
        tob: Time of birth, HH:MM or HH:MM:SS, 24-hour.
        tz:  IANA timezone name (e.g. "Asia/Kolkata") or fixed offset "+05:30".
        lat: Latitude in decimal degrees, North positive.
        lon: Longitude in decimal degrees, East positive.
        ayanamsha: Sidereal zero-point. Default lahiri.

    Returns the birth star (Moon's nakshatra), its pada and ruling planet, the
    Moon sign, the ascendant, and the Sun's nakshatra.

Input parameters:

- `ayanamsha` (string)
- `dob` (string, required)
- `lat` (number, required)
- `lon` (number, required)
- `tob` (string, required)
- `tz` (string, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/amarpathak-birthstar/mcp#diagnostics

## Score history

- 2026-10-24: 79
- 2026-10-23: 79
- 2026-10-22: 79
- 2026-10-21: 79
- 2026-10-20: 79
- 2026-10-19: 79
- 2026-10-18: 79
- 2026-10-17: 79
- 2026-10-16: 79
- 2026-10-15: 79
- 2026-10-14: 79
- 2026-10-13: 79
- 2026-10-12: 79
- 2026-10-10: 79
- 2026-10-06: 25
- 2026-10-04: 25
- 2026-10-03: 25
- 2026-10-02: 78
- 2026-10-01: 78
- 2026-09-30: 77
- 2026-09-29: 77
- 2026-09-28: 76
- 2026-09-27: 76
- 2026-09-26: 75
- 2026-09-25: 75
- 2026-09-24: 74
- 2026-09-23: 74
- 2026-09-22: 73
- 2026-09-21: 73
- 2026-09-20: 72

## Common questions

### What is the Birthstar Vedic Astrology MCP server?

Birthstar Vedic Astrology MCP is listed in the public MCP registry as io.github.amarpathak/birthstar. 30 Vedic Jyotish tools: natal charts, dashas, yogas, nakshatras. Swiss Ephemeris. This page covers its hosted endpoint (https://mcp.birthstar.ai/mcp).

### Is the Birthstar Vedic Astrology MCP server safe to use?

Birthstar Vedic Astrology MCP scores 79 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Birthstar Vedic Astrology MCP server expose?

Birthstar Vedic Astrology MCP exposes 30 tools: create_chart, get_grahas, get_houses, get_current_dasha, get_dasha_periods, and 25 more. Their descriptions and schemas cost roughly 5,388 tokens of context every time the server is loaded.

### Does the Birthstar Vedic Astrology MCP server require authentication?

No. We connected to Birthstar Vedic Astrology MCP without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Birthstar Vedic Astrology MCP server still maintained?

Birthstar Vedic Astrology MCP is still listed as active in the MCP registry. We last reached this channel on 24 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://mcp.birthstar.ai/mcp
- Changelog RSS feed: https://verifymcp.io/servers/amarpathak-birthstar/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/amarpathak-birthstar/mcp.json
- HTML version of this page: https://verifymcp.io/servers/amarpathak-birthstar/mcp
