Astrology API Skill
When to Use
Use this skill when the user asks about:
- Birth charts, natal charts, horoscopes
- Zodiac compatibility, synastry, relationship analysis
- Planetary positions, transits, aspects
- Moon phases, lunar metrics, void of course
- Solar/lunar returns, progressions, directions
- Tarot card readings, spreads, interpretations
- Numerology (core numbers, compatibility, comprehensive)
- Vedic astrology (kundli, doshas, dashas, panchang)
- Chinese astrology (bazi, ming gua, feng shui)
- Human design (bodygraph, type, channels, gates)
- Kabbalah (tree of life, birth angels, gematria)
- Astrocartography (relocation, power zones, lines)
- Fixed stars (positions, conjunctions)
- Eclipses (upcoming, natal impact)
- Palmistry (palm analysis, reading)
- Daily/weekly/monthly/yearly horoscopes
- Career, health, spiritual, psychological analysis
- Chart rendering (SVG, PNG images)
Prerequisites
Before making any API call, verify:
$ASTROLOGY_API_KEY environment variable is set
curl is available on PATH
If the API key is missing, ask the user to set it:
export ASTROLOGY_API_KEY="your_token_here"
How It Works
Gather data from the user depending on the request type:
- For natal/personal: name, birth date (year, month, day), birth time (hour, minute), birth city + country code (2-letter ISO)
- For synastry/compatibility: birth data for TWO people
- For transits: natal data + transit date/time
- For horoscopes by sign: just the zodiac sign name
- For tarot: question or spread type
- For numerology: full name + birth date
Call the API using {baseDir}/scripts/astro-api.sh:
bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/natal '{ ... }'
Present results in a human-friendly format, highlighting key findings.
API Call Patterns
Natal Chart (most common)
bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/natal '{
"subject": {
"name": "John",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"options": {
"house_system": "P",
"zodiac_type": "Tropic",
"language": "EN"
}
}'
Synastry (compatibility)
bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/synastry '{
"subject": {
"name": "Person A",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"partner": {
"name": "Person B",
"year": 1992, "month": 7, "day": 20,
"hour": 9, "minute": 0, "second": 0,
"city": "London", "country_code": "GB"
},
"options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}
}'
Transit Snapshot
bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/transit '{
"subject": {
"name": "John",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"transit": {
"year": 2026, "month": 2, "day": 12,
"hour": 12, "minute": 0, "second": 0,
"city": "New York", "country_code": "US"
},
"options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}
}'
Current Sky Data (no parameters needed)
bash {baseDir}/scripts/astro-api.sh GET /api/v3/data/now
Planetary Positions
bash {baseDir}/scripts/astro-api.sh POST /api/v3/data/positions '{
"subject": {
"name": "John",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"options": {"house_system": "P", "zodiac_type": "Tropic"}
}'
Lunar Metrics
bash {baseDir}/scripts/astro-api.sh POST /api/v3/data/lunar-metrics '{
"subject": {
"name": "now",
"year": 2026, "month": 2, "day": 12,
"hour": 12, "minute": 0, "second": 0,
"city": "New York", "country_code": "US"
}
}'
Daily Horoscope by Sign
bash {baseDir}/scripts/astro-api.sh POST /api/v3/horoscope/sign/daily '{
"sign": "aries",
"language": "EN"
}'
Personal Daily Horoscope
bash {baseDir}/scripts/astro-api.sh POST /api/v3/horoscope/personal/daily '{
"subject": {
"name": "John",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"language": "EN"
}'
Natal Analysis Report (AI-generated interpretation)
bash {baseDir}/scripts/astro-api.sh POST /api/v3/analysis/natal-report '{
"subject": {
"name": "John",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}
}'
Render Chart as SVG
bash {baseDir}/scripts/astro-api.sh POST /api/v3/svg/natal '{
"subject": {
"name": "John",
"year": 1990, "month": 3, "day": 15,
"hour": 14, "minute": 30, "second": 0,
"city": "New York", "country_code": "US"
},
"options": {"house_system": "P", "zodiac_type": "Tropic"}
}'
Tarot Card Draw
bash {baseDir}/scripts/astro-api.sh POST /api/v3/tarot/cards/draw '{
"count": 3
}'
Numerology Core Numbers
bash {baseDir}/scripts/astro-api.sh POST /api/v3/numerology/core-numbers '{
"full_name": "John Smith",
"birth_date": "1990-03-15"
}'
Full endpoint reference: Read {baseDir}/references/api-endpoints.md for all 190+ endpoints with detailed parameters.
Default Options
When the user doesn't specify preferences, use these defaults:
- House system:
P (Placidus) — most common in Western astrology
- Zodiac type:
Tropic (Tropical) — Western standard
- Language:
EN (English) — override based on user's language
- Tradition:
universal — broadest coverage
Output Format
When presenting results to the user:
- Start with the highlights: Sun sign, Moon sign, Ascendant (Rising)
- Use plain language — translate astrological jargon
- Format positions as tables when showing multiple planets
- Highlight notable aspects (conjunctions, oppositions, squares, trines)
- For compatibility: lead with the overall score/summary
- For horoscopes: present the text naturally, don't dump raw JSON
- For chart images (SVG/render): save to a file and inform the user
Edge Cases
- Birth time unknown: Use noon (12:00) and note that house positions and Moon degree may be less accurate
- City not found: Ask for latitude/longitude instead. Use
latitude and longitude fields instead of city/country_code
- API errors (400/422): Parse the error message and explain to the user what's wrong (e.g., invalid date, missing field)
- Large responses: For analysis reports, summarize the key points rather than showing everything
- Language support: The API supports EN, RU, FR, DE, ES, IT, PT, and more — match the user's language when possible
1---2name: astroapi-skill3description: Astrology API: generate natal charts, synastry, composite, transits, solar/lunar returns, progressions, directions, planetary positions, house cusps, aspects, lunar metrics, horoscopes, analysis reports, SVG/render charts, tarot, numerology, Vedic, Chinese astrology, human design, kabbalah, astrocartography, eclipses, palmistry, and fixed stars. Use when user asks about birth charts, horoscopes, zodiac signs, compatibility, planetary positions, moon phases, transits, astrological calculations, tarot readings, numerology, or any esoteric/astrological topic.4license: MIT5---67# Astrology API Skill89## When to Use1011Use this skill when the user asks about:1213- Birth charts, natal charts, horoscopes14- Zodiac compatibility, synastry, relationship analysis15- Planetary positions, transits, aspects16- Moon phases, lunar metrics, void of course17- Solar/lunar returns, progressions, directions18- Tarot card readings, spreads, interpretations19- Numerology (core numbers, compatibility, comprehensive)20- Vedic astrology (kundli, doshas, dashas, panchang)21- Chinese astrology (bazi, ming gua, feng shui)22- Human design (bodygraph, type, channels, gates)23- Kabbalah (tree of life, birth angels, gematria)24- Astrocartography (relocation, power zones, lines)25- Fixed stars (positions, conjunctions)26- Eclipses (upcoming, natal impact)27- Palmistry (palm analysis, reading)28- Daily/weekly/monthly/yearly horoscopes29- Career, health, spiritual, psychological analysis30- Chart rendering (SVG, PNG images)3132## Prerequisites3334Before making any API call, verify:35361. `$ASTROLOGY_API_KEY` environment variable is set372. `curl` is available on PATH3839If the API key is missing, ask the user to set it:4041```42export ASTROLOGY_API_KEY="your_token_here"43```4445## How It Works46471. **Gather data** from the user depending on the request type:48 - For natal/personal: name, birth date (year, month, day), birth time (hour, minute), birth city + country code (2-letter ISO)49 - For synastry/compatibility: birth data for TWO people50 - For transits: natal data + transit date/time51 - For horoscopes by sign: just the zodiac sign name52 - For tarot: question or spread type53 - For numerology: full name + birth date54552. **Call the API** using `{baseDir}/scripts/astro-api.sh`:5657 ```58 bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/natal '{ ... }'59 ```60613. **Present results** in a human-friendly format, highlighting key findings.6263## API Call Patterns6465### Natal Chart (most common)6667```bash68bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/natal '{69 "subject": {70 "name": "John",71 "year": 1990, "month": 3, "day": 15,72 "hour": 14, "minute": 30, "second": 0,73 "city": "New York", "country_code": "US"74 },75 "options": {76 "house_system": "P",77 "zodiac_type": "Tropic",78 "language": "EN"79 }80}'81```8283### Synastry (compatibility)8485```bash86bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/synastry '{87 "subject": {88 "name": "Person A",89 "year": 1990, "month": 3, "day": 15,90 "hour": 14, "minute": 30, "second": 0,91 "city": "New York", "country_code": "US"92 },93 "partner": {94 "name": "Person B",95 "year": 1992, "month": 7, "day": 20,96 "hour": 9, "minute": 0, "second": 0,97 "city": "London", "country_code": "GB"98 },99 "options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}100}'101```102103### Transit Snapshot104105```bash106bash {baseDir}/scripts/astro-api.sh POST /api/v3/charts/transit '{107 "subject": {108 "name": "John",109 "year": 1990, "month": 3, "day": 15,110 "hour": 14, "minute": 30, "second": 0,111 "city": "New York", "country_code": "US"112 },113 "transit": {114 "year": 2026, "month": 2, "day": 12,115 "hour": 12, "minute": 0, "second": 0,116 "city": "New York", "country_code": "US"117 },118 "options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}119}'120```121122### Current Sky Data (no parameters needed)123124```bash125bash {baseDir}/scripts/astro-api.sh GET /api/v3/data/now126```127128### Planetary Positions129130```bash131bash {baseDir}/scripts/astro-api.sh POST /api/v3/data/positions '{132 "subject": {133 "name": "John",134 "year": 1990, "month": 3, "day": 15,135 "hour": 14, "minute": 30, "second": 0,136 "city": "New York", "country_code": "US"137 },138 "options": {"house_system": "P", "zodiac_type": "Tropic"}139}'140```141142### Lunar Metrics143144```bash145bash {baseDir}/scripts/astro-api.sh POST /api/v3/data/lunar-metrics '{146 "subject": {147 "name": "now",148 "year": 2026, "month": 2, "day": 12,149 "hour": 12, "minute": 0, "second": 0,150 "city": "New York", "country_code": "US"151 }152}'153```154155### Daily Horoscope by Sign156157```bash158bash {baseDir}/scripts/astro-api.sh POST /api/v3/horoscope/sign/daily '{159 "sign": "aries",160 "language": "EN"161}'162```163164### Personal Daily Horoscope165166```bash167bash {baseDir}/scripts/astro-api.sh POST /api/v3/horoscope/personal/daily '{168 "subject": {169 "name": "John",170 "year": 1990, "month": 3, "day": 15,171 "hour": 14, "minute": 30, "second": 0,172 "city": "New York", "country_code": "US"173 },174 "language": "EN"175}'176```177178### Natal Analysis Report (AI-generated interpretation)179180```bash181bash {baseDir}/scripts/astro-api.sh POST /api/v3/analysis/natal-report '{182 "subject": {183 "name": "John",184 "year": 1990, "month": 3, "day": 15,185 "hour": 14, "minute": 30, "second": 0,186 "city": "New York", "country_code": "US"187 },188 "options": {"house_system": "P", "zodiac_type": "Tropic", "language": "EN"}189}'190```191192### Render Chart as SVG193194```bash195bash {baseDir}/scripts/astro-api.sh POST /api/v3/svg/natal '{196 "subject": {197 "name": "John",198 "year": 1990, "month": 3, "day": 15,199 "hour": 14, "minute": 30, "second": 0,200 "city": "New York", "country_code": "US"201 },202 "options": {"house_system": "P", "zodiac_type": "Tropic"}203}'204```205206### Tarot Card Draw207208```bash209bash {baseDir}/scripts/astro-api.sh POST /api/v3/tarot/cards/draw '{210 "count": 3211}'212```213214### Numerology Core Numbers215216```bash217bash {baseDir}/scripts/astro-api.sh POST /api/v3/numerology/core-numbers '{218 "full_name": "John Smith",219 "birth_date": "1990-03-15"220}'221```222223> **Full endpoint reference:** Read `{baseDir}/references/api-endpoints.md` for all 190+ endpoints with detailed parameters.224225## Default Options226227When the user doesn't specify preferences, use these defaults:228229- **House system:** `P` (Placidus) — most common in Western astrology230- **Zodiac type:** `Tropic` (Tropical) — Western standard231- **Language:** `EN` (English) — override based on user's language232- **Tradition:** `universal` — broadest coverage233234## Output Format235236When presenting results to the user:2372381. **Start with the highlights**: Sun sign, Moon sign, Ascendant (Rising)2392. **Use plain language** — translate astrological jargon2403. **Format positions as tables** when showing multiple planets2414. **Highlight notable aspects** (conjunctions, oppositions, squares, trines)2425. **For compatibility**: lead with the overall score/summary2436. **For horoscopes**: present the text naturally, don't dump raw JSON2447. **For chart images (SVG/render)**: save to a file and inform the user245246## Edge Cases247248- **Birth time unknown**: Use noon (12:00) and note that house positions and Moon degree may be less accurate249- **City not found**: Ask for latitude/longitude instead. Use `latitude` and `longitude` fields instead of `city`/`country_code`250- **API errors (400/422)**: Parse the error message and explain to the user what's wrong (e.g., invalid date, missing field)251- **Large responses**: For analysis reports, summarize the key points rather than showing everything252- **Language support**: The API supports EN, RU, FR, DE, ES, IT, PT, and more — match the user's language when possible