Computes the full sidereal natal chart from BirthData and returns planet rows, houses, aspects, arudhas, upapada, bhava cusps, and avakhada metadata.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: RECOMMENDED — asterwise_get_yogas — layer classical combinations after the base chart exists
Computes divisional (varga) charts from BirthData; pass chart_type for one varga, or omit chart_type for all sixteen. Each planet in each varga comes with its dignity there and whether it is vargottama; with a known birth time, each chart also has its own lagna, every planet's whole-sign house from
Calls atmakaraka and ishta-devata endpoints sequentially and merges their payloads into top-level atmakaraka and ishta_devata objects for one BirthData.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — understand chart basics before devotional pointers.
AFTER: None.
INPUT CONTRACT: Wrap
Looks up static metadata for one of twenty-seven nakshatras by name and returns interpretive, professional, activity, and body-map reference data.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: None.
INPUT CONTRACT: nakshatra_name is sent as given; the API ignores case, spaces, hyphens a
Evaluates Saturn's seven-and-a-half-year Sade Sati cycle against the natal Moon sign for the current day. Returns intensity, upcoming cycles, and historical rows.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — confirm Moon sign context.
AFTER: asterwise_get_gochar — broader transit can
Casts a Prashna chart for the query instant from the supplied date, time, place and a single-topic keyword. Returns houses, Moon diagnostics, a verdict, and cusps.
WORKFLOW: BEFORE: None — standalone for horary.
AFTER: None.
INPUT CONTRACT: question must be exactly one of: self, wealth, siblings,
Produces a Lal Kitab chart from BirthData following the 1952 Lal Kitab: houses counted from the Vedic lagna, the lagna house read as house 1 (Aries). Returns planets with pakka ghar, uchcha/neecha, fixed or doubtful effect and malefic reasons, the twelve houses, and the nine Lal Kitab debts (rin).
Lists Lal Kitab remedies (from the 1952 Lal Kitab) for the planets that need them, plus remedies for any indicated debts (rin).
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_lal_kitab_chart — see the chart and malefic reasons first.
AFTER: None.
INPUT CONTRACT: BirthData only. ayanamsa: lahiri (de
Builds a KP natal chart with sub-lords on grahas and twelve cusps from BirthData using the KP ayanamsa in the response.
WORKFLOW: BEFORE: RECOMMENDED — cross-check birth record before trusting sub-lords.
AFTER: asterwise_get_kp_significators — house-level significator chains.
INPUT CONTRACT: ayana
Computes KP significator chains for all houses or one optional house from BirthData and returns house tables plus planet-tier reverse indexes.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_kp_chart — establish cusps before significators.
AFTER: None.
INPUT CONTRACT: house_number optional int 1..12
Computes KP ruling planets at a latitude and longitude for the current instant or a given local date and time, with no birth data. Returns the day lord, Moon and Ascendant lord chains, and a deduplicated ruling_planets list.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: asterwise_get_kp_
Computes full Ashtakavarga bindu matrices, trikona and ekadhipatya reductions, and sarva totals from BirthData for transit support analysis.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — confirm chart before AVK study.
AFTER: asterwise_get_gochar — uses AVK scores in transit rows.
IN
Computes the annual Tajika-style solar return for a four-digit civil year and returns Muntha, Pancha Adhikari metrics, Tajika aspects, and varshaphal positions.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — baseline radix before annual overlay.
AFTER: None.
INPUT CONTRACT: year is a
Computes all 10 Tajika Saham (sensitive points) for a Varshaphal solar return chart. Sahams are the Tajika equivalent of Arabic Parts — mathematically derived zodiac points that focus the annual horoscope on specific life themes.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_varshaphal — understand
Computes Harsha Bala (positional happiness score) for all 7 classical planets in a Varshaphal solar return chart. Maximum 20 per planet (4 components × 5 points each).
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_varshaphal — identify the Year Lord (Varsha Pati) before interpreting Harsha Bala. Th
Computes Vimshottari Dasha from birth data and returns hierarchical period trees plus current Maha/Antar interpretation blocks.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — establishes chart and Moon context before interpreting Dasha lords.
AFTER: asterwise_get_dasha_transits — corre
Combines active Vimshottari lords with transits on one date and returns scored correlations plus transit longitudes and houses from Moon and Lagna.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — same birth data should be understood before interpreting houses and lords.
AFTER: asterwise
Computes Char Dasha from birth data and returns sign lords as period rulers with ISO-dated Maha and Antar sequences plus karaka mappings.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — contextualises the chart before interpreting sign-based lords.
AFTER: asterwise_get_dasha — optional
Computes the Ashtottari Dasha tree (108-year cycle) with configurable depth, levels 1–5. The timeline continues into the next cycle until it reaches at least age 120 (usually 9–11 mahadashas); periods are under data.periods.root with DD/MM/YYYY dates.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_n
Scores North Indian Ashtakoota (36-point Guna Milan) for two charts. Returns the koota breakdown, dosha flags, classical vetoes, a Mangal cross-check and narrative guidance.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart per person — understand charts before interpreting scores.
AFTER: a
Computes the ten-koota Dashakoot grid for two charts and converts it to a ten-point score with percentage. Also returns boolean dosha flags and supplementary diagnostics.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart for each native — context before regional scoring.
AFTER: asterwise_ge
Scores malefic affliction for each partner from Lagna, Moon and Venus and checks that the bride's score does not exceed the groom's. Points: one per malefic (Sun, Mars, Saturn, Rahu, Ketu) in houses 1, 2, 4, 7, 8, 12, at full value from Lagna, half from Moon, a quarter from Venus.
WORKFLOW: BEFORE:
Runs the Tamil ten-porutham checklist (PyJHora South rules) for two charts and counts passes out of ten. Also returns Rajju and Vedha condition booleans and per-porutham evidence objects.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart per native.
AFTER: asterwise_get_thirumana_porutham —
Evaluates twelve Tamil Thirumana poruthams for two charts, tracks veto severity for Rajju, and returns an expanded breakdown map with tradition metadata.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_porutham — quick ten-koota pass before twelve-koota depth.
AFTER: None.
INPUT CONTRACT: Two BirthD
Panchanga for one date at a location: the limbs at sunrise plus every tithi, nakshatra, yoga and karana of the panchanga day (sunrise to next sunrise). Each comes with ISO start and end times and kshaya/vriddhi flags. Also returns sunrise, sunset, moonrise and moonset; Sun and Moon rashi; lunar mont
Splits a solar day into sixteen Choghadiya segments from sunrise/sunset at a location and labels each slot's quality, ruler, and local clock bounds.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: asterwise_get_rahu_kaal — optional inauspicious band overlay for the same date.
INPUT CONTRA
Builds the twenty-four planetary Horas between successive sunrises for a location date and tags each hour with ruler, quality text, and whether it is current.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: asterwise_get_choghadiya — alternative same-day slot system.
INPUT CONTRACT: Locat
Computes Rahu Kaal, Gulika Kaal, and Yamaganda Kaal intervals from diurnal length at a location and marks whether Rahu Kaal is active now in local time.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: asterwise_get_choghadiya — broader auspicious/inauspicious grid for the day.
INPUT CONTR
Finds auspicious time windows for an activity between two dates (up to a year) at a location, with exact ISO start and end times. Activities: marriage, griha_pravesh, business, travel, naming_ceremony, vehicle_purchase, property_purchase, mundan, annaprashan, upanayana, vidyarambha. Applies each act
Panchanga for every day of a month at a location, one entry per day. Each day has its sunrise tithi, vara, nakshatra, yoga, karana and Rahu Kaal, plus sunrise, sunset, moonrise, moonset, paksha, lunar month (amanta and purnimanta, with Adhik months), Bhadra windows, and every tithi, nakshatra, yoga
Tamil Panchanga for a date and location: Rahu Kalam, Yamagandam, Kuligai (Gulika), Nalla Neram and the Tamil solar month. Nalla Neram is the daytime windows free of those periods; the month comes from the Sun's sidereal sign at sunrise.
WORKFLOW: BEFORE: asterwise_geocode — when you only have a pla
Hindu festivals, vrats, sankrantis, eclipses and periods for a year at a location. Each lunar festival is fixed by its lunar month (amanta, with Adhik months found from new moons and sankrantis), its tithi, and the part of the day the tithi must hold (sunrise, forenoon, Madhyahna, Aparahna, Pradosh,
Turns a place name into latitude, longitude and IANA timezone for the other tools, which all take lat, lon and timezone.
WORKFLOW: BEFORE: None.
AFTER: any tool that takes lat, lon and timezone — asterwise_get_natal_chart, asterwise_get_panchanga, asterwise_get_muhurta, asterwise_get_festival_calen
Returns classical graha (planet) properties for all nine planets or a single planet per classical Vedic tradition.
WORKFLOW: BEFORE: None — standalone reference.
AFTER: asterwise_get_puja_suggestions — propitiation for a specific graha.
INPUT CONTRACT: planet (optional): One of Sun, Moon, Mars, Me
Returns Rudraksha bead recommendations per planet.
WORKFLOW: BEFORE: asterwise_get_natal_chart — identify planets needing support.
AFTER: None.
INPUT CONTRACT: planet (optional): One of Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu. Omit to get all nine planets.
DO NOT CONFUSE WITH
Returns ayanamsha values for all four supported systems (Lahiri, Raman, KP, Tropical) for a given date.
WORKFLOW: BEFORE: None — standalone reference.
AFTER: None.
INPUT CONTRACT: date (optional): Date in YYYY-MM-DD format. Defaults to today.
DO NOT CONFUSE WITH: asterwise_get_natal_chart — appli
Computes physical (23-day), emotional (28-day), and intellectual (33-day) biorhythm cycles for a birth date.
WORKFLOW: BEFORE: None — standalone.
AFTER: asterwise_get_nakshatra_prediction — for the Vedic personalized daily prediction.
INPUT CONTRACT: birth_date (required): Date of birth in YYYY-MM
Personal daily prediction from Tarabala and Chandrabala for the day at the birth place (sunrise to next sunrise).
WORKFLOW: BEFORE: None — birth data computes everything needed.
AFTER: asterwise_get_panchanga — the day's full panchanga; asterwise_get_muhurta — Tarabala-aware windows for an activity
Returns the four Ghatak (inauspicious) timing parameters for a native based on their Janma Rasi (natal Moon sign).
WORKFLOW: BEFORE: None — birth data computes everything needed.
AFTER: asterwise_get_nakshatra_prediction — for today's personalized daily auspiciousness score.
INPUT CONTRACT: birth
Evaluates the natal chart for named classical yogas. Each hit returns its category, formation text, the classical texts it is drawn from (classical_sources), a modern summary, and keywords.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — same birth tuple should be understood before inte
Computes Ratna-style gemstone picks and cautions from the natal chart. Returns the primary and role-based stones, secondary options, contraindications and a safety note.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_natal_chart — confirm chart before wearing advice.
AFTER: asterwise_get_remedies —
Builds a Pythagorean numerology profile from a legal name and birth date and returns core numbers, cycles, lucky digits, and summary copy.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: asterwise_get_personal_year — fills Personal Year when needed.
INPUT CONTRACT: name and date strings a
Compares two people on their Pythagorean Life Path numbers, worked out from their birth dates. Returns a score, tier label, narrative, strengths, challenges, and advice.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_numerology_profile per person — sanity-check Life Paths before comparing.
AFTER: No
Reduces a name and birth date through the Chaldean letter-value system and returns name, birth, and combined compound analyses with themes and keywords.
WORKFLOW: BEFORE: None — standalone.
AFTER: asterwise_get_numerology_profile — compare against Pythagorean cores if needed.
INPUT CONTRACT: name
Derives a Lo Shu three-by-three frequency grid from birth-date digits and annotates planes, missing or repeated digits, and per-digit traits.
WORKFLOW: BEFORE: None — standalone.
AFTER: None.
INPUT CONTRACT: date string only; validated upstream.
DO NOT CONFUSE WITH: asterwise_get_numerology_profi
Scores the current spelling of a personal name against the birth-date Life Path and suggests alternate spellings with harmony metrics. Names the best alternative when one scores higher.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_numerology_profile — baseline numbers before renaming advice.
AFTER
Fetches condensed lucky-number guidance for a name and birth date including primary and secondary picks, power number, interpretation, and a date_specific flag.
WORKFLOW: BEFORE: None — standalone.
AFTER: asterwise_get_numerology_profile — if deeper context is required.
INPUT CONTRACT: name and da
Looks up the Personal Year theme for the current calendar year from a birth date (its month and day).
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_numerology_profile — see other core numbers first.
AFTER: None.
INPUT CONTRACT: Only the birth date is sent; name is optional and not used. The active
Returns dictionary-style numerology copy for a single integer, including interpretation, keywords, and stubbed extended fields.
WORKFLOW: BEFORE: None — standalone.
AFTER: None.
INPUT CONTRACT: number must pass local guard: one of 1-9, 11, 22 or 33; any other value raises MCP INVALID_PARAMS before
Sums the digits of the national number (country code left out), reduces them to a single number, and returns harmonic scoring plus interpretive copy.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_numerology_profile — anchor Life Path before judging the line.
AFTER: None.
INPUT CONTRACT: Only digit
Strips non-digits from a vehicle registration token, reduces the numeric run to a single number, and returns the same harmony schema as mobile analysis.
WORKFLOW: BEFORE: RECOMMENDED — asterwise_get_numerology_profile — owner baseline.
AFTER: None.
INPUT CONTRACT: Letters and separators are ignore
Reduces a business name to Expression and root digits and returns thematic suitability lists plus a harmony score. Uses the name only; no founder birth date is involved.
WORKFLOW: BEFORE: None — standalone.
AFTER: asterwise_get_name_correction — if the entity is a person, not a brand.
INPUT CONTRA
Calculates the Expression (Destiny) number from the full name using Pythagorean letter values. Reduces each name part separately before summing (Decoz per-part method), keeping master numbers 11, 22, 33 at every step.
WORKFLOW: BEFORE: None — this tool is standalone.
AFTER: asterwise_get_soul_urge_
Calculates the Soul Urge (Heart's Desire) number from vowels in the full name. Only A, E, I, O, U are treated as vowels — Y is always a consonant in this system. Reduces each name part separately before summing, preserving master numbers 11, 22, 33.
WORKFLOW: BEFORE: None — standalone.
AFTER: aster
FAQ
Questions
How do I install Asterwise?
Copy the http config for Cursor, Claude Desktop, Claude Code, or VS Code on this page. It uses the publisher's install, not a PlugMCP proxy.
Does Asterwise need an API key?
No required environment variable is listed on this record.
What transport does Asterwise use?
Asterwise is reached over HTTP.
When was Asterwise last checked?
Last checked 2026-10-22. Vedic and Western astrology for AI agents: charts, dasha, matchmaking, panchanga, numerology, tarot.
From the publisher
Documentation
Asterwise MCP Server
Astrology and divination calculations as MCP tools. 118 tools covering Vedic and Western astrology, numerology, tarot, crystals, dreams, natal charts, Dasha, matchmaking and Panchanga, with interpretations that follow classical Jyotish method. Every position is verified against an independent Swiss Ephemeris run (asterwise.com/proof) and checked against NASA JPL Horizons, median 0.050 arcseconds over 80 positions (asterwise.com/accuracy). How it compares with seven other astrology APIs, sourced and dated: asterwise.com/compare.
Method 1 — API Key (quick start)
Pass your Asterwise API key (starts with aw_) either as Authorization: Bearer <api-key> or as an X-API-Key: <api-key> header. Both are equivalent; use whichever your MCP client can set.
Method 2 — OAuth 2.1 (production)
Exchange your API key for a short-lived token:
Use the token: Authorization: Bearer <access_token>
Access tokens are stateless HS256 JWTs. The API key is carried inside the token encrypted with a key derived from JWT_SECRET; only a SHA-256 hash of the key appears in the sub claim. Keep JWT_SECRET private.
Method 3 — OAuth 2.1 authorization code for MCP clients (Claude, Cursor, VS Code, Smithery)
MCP clients log a user in through the standard authorization-code flow with PKCE (S256). Discovery is at /.well-known/oauth-authorization-server. Two ways for a client to identify itself are supported:
Client ID Metadata Documents (current MCP spec, preferred): use an HTTPS URL as client_id. The URL must serve a JSON document whose client_id equals the URL, with client_name, redirect_uris, and token_endpoint_auth_method: "none". These clients are public: no secret, PKCE only, authorization_code and refresh_token grants, refresh tokens rotate on every use. Redirect URIs must be https, or http on localhost / 127.0.0.1 / [::1] (port ignored, per RFC 8252). A reference document you can copy: https://asterwise.com/public/oauth/example-client.json.
Dynamic Client Registration (POST /oauth/register, deprecated in the MCP spec but still supported): returns a client_id and client_secret; the secret is required at /oauth/token.
The server fetches metadata documents with SSRF protections (public addresses only, no redirects, 64 KB, 10 s) and caches them for the document's Cache-Control: max-age (60 s to 24 h, default 1 h). The consent page shows the host that published the document.
Run over stdio
For hosts that speak stdio instead of HTTP (Glama hosted builds, a local Claude Desktop entry, quick tests):
Over stdio the key comes from ASTERWISE_API_KEY; the server starts and lists its tools without one, and tool calls need it. Logs go to stderr.
Configuration
Copy .env.example to .env and set at least:
Variable
Required
Description
ASTERWISE_API_BASE_URL
Yes
Asterwise API base URL (e.g. https://api.asterwise.com).
JWT_SECRET
For /oauth/token
At least 32 characters; used to sign access tokens.
MCP_SERVER_HOST / MCP_SERVER_PORT
No
Bind address and port for the MCP HTTP server.
LOG_LEVEL
No
Default INFO.
MCP_OAUTH_SECRET
For OAuth
Shared with asterwise-api; verifies access tokens issued by its /v1/oauth/token.
ASTERWISE_API_KEY
stdio only
Your Asterwise API key for python stdio.py; HTTP deployments take the key per request instead.
INTERNAL_API_TOKEN
For OAuth client registration
Shared with asterwise-api; used when forwarding dynamic client registration.
FRONTEND_URL
For /authorize
Where the browser is sent for sign-in and consent (e.g. https://asterwise.com).
OPENAI_APPS_CHALLENGE_TOKEN
No
Served at /.well-known/openai-apps-challenge for directory verification.
Tools (118 total)
The MCP server exposes 118 tools organized by Python module. The categorization reflects code organization; tools may serve multiple traditions (e.g. matchmaking includes both Sanskrit Dashakoot and Tamil Porutham methods).
uvicorn server:app is the same entry point the production Dockerfile and railway.toml use, so the auth middleware, OAuth routes and /health are all present locally. Runtime dependencies are pinned in requirements.txt; requirements-dev.txt adds the test tooling.
Tests
pytest
Coverage is enforced at 78% for core modules (auth, client, errors, logging_config, models, runtime, server); tool modules are excluded from the gate (see .coveragerc).