Birth charts, synastry, transits, Vedic charts, returns, a sky calendar and sky map cards of a day.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
The events of a month (2020–2035): new and full moons and quarters with their signs, the Sun and planets entering signs, retrograde stations and all retrograde periods touching the month, solar and lunar eclipses with their visibility from Warsaw; optionally every Moon sign change. Times in a time zone (Polish time by default).
IANA time zone of the times (default Europe/Warsaw)
Language of the names in the answer: pl (default) or en
YYYY-MM; leave out for this month
Also list each time the Moon enters a sign (about 12 a month)
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http zodiak https://zodiak.info.pl/mcp
Tool list last changed Nov 5, 2026.
The events of a month (2020–2035): new and full moons and quarters with their signs, the Sun and planets entering signs, retrograde stations and all retrograde periods touching the month, solar and lunar eclipses with their visibility from Warsaw; optionally every Moon sign change. Times in a time zone (Polish time by default).
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone of the times (default Europe/Warsaw) |
| lang | string | Language of the names in the answer: pl (default) or en |
| month | string | YYYY-MM; leave out for this month |
| moon_signs | boolean | Also list each time the Moon enters a sign (about 12 a month) |
{
"type": "object",
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone of the times (default Europe/Warsaw)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"month": {
"type": "string",
"description": "YYYY-MM; leave out for this month"
},
"moon_signs": {
"type": "boolean",
"description": "Also list each time the Moon enters a sign (about 12 a month)"
}
},
"additionalProperties": false
}Computes a natal (birth) chart from the date, local clock time and place of birth: the Sun, Moon, planets, lunar node and Lilith in the signs of the tropical zodiac and in the houses, the ascendant and midheaven, house cusps (Placidus or whole sign), aspects with orbs, the phase of the Moon, the Chinese year sign and the four pillars (BaZi), and how close the ascendant, houses and signs are to changing with the hour. Without a time it gives what does not depend on the hour. The time zone and summer time of the place are applied from the IANA history. Calculations only, no interpretation; the link opens the full result on the site.
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone, e.g. Europe/Warsaw (with lat and lon) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date* | string | Date of birth, YYYY-MM-DD (1800–2100) |
| lang | string | Language of the names in the answer: pl (default) or en |
| time | string | Clock time at the place of birth, HH:MM (24-hour); leave out if unknown |
| later | boolean | For a time the clocks showed twice (put back in autumn): the second one |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
| house_system | string | placidus (default) or whole sign houses |
{
"type": "object",
"required": [
"date"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM (24-hour); leave out if unknown"
},
"later": {
"type": "boolean",
"description": "For a time the clocks showed twice (put back in autumn): the second one"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string",
"description": "placidus (default) or whole sign houses"
}
},
"additionalProperties": false
}The Chinese zodiac of a year (1901–2100): animal, element, yin or yang, the sexagenary name, the dates of Chinese New Year and of the year's last day, and Lichun. With a date of birth instead, which Chinese year and sign it falls in (January and February births often belong to the year before) and the year of the four pillars.
| Argument | Type | Description |
|---|---|---|
| date | string | A date of birth, YYYY-MM-DD, instead of year |
| lang | string | Language of the names in the answer: pl (default) or en |
| year | integer |
{
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "A date of birth, YYYY-MM-DD, instead of year"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1901
}
},
"additionalProperties": false
}Coordinates and IANA time zone of a town or city: all places in Poland and world cities over 15 000 people, Polish names first (Londyn and London both work). Use it to check which place birth_chart or sky_at would take, or to pick one of several of the same name and pass its lat, lon and tz.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many (default 5) |
| query* | string | The name |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "How many (default 5)"
},
"query": {
"type": "string",
"maxLength": 60,
"minLength": 2,
"description": "The name"
}
},
"additionalProperties": false
}When Saturn (about at 29, 59 and 88) and Jupiter (about every 12 years) come back to their places of birth: each return with its dates and the age, three crossings when retrograde motion takes the planet back over the place.
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone, e.g. Europe/Warsaw (with lat and lon) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date* | string | Date of birth, YYYY-MM-DD (1800–2100) |
| lang | string | Language of the names in the answer: pl (default) or en |
| time | string | Clock time at the place of birth, HH:MM; leave out if unknown |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
| house_system | string |
{
"type": "object",
"required": [
"date"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM; leave out if unknown"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string"
}
},
"additionalProperties": false
}When the Sun enters each zodiac sign in a given year (1900–2100), to the minute, in a time zone (Polish time by default). With a sign, also its usual first and last day and the earliest and latest entry across 1900–2100. For "what is my sign" when someone is born near the edge of two signs.
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone of the times (default Europe/Warsaw) |
| lang | string | Language of the names in the answer: pl (default) or en |
| sign | string | Only this sign, e.g. aries or baran (optional) |
| year* | integer |
{
"type": "object",
"required": [
"year"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone of the times (default Europe/Warsaw)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"sign": {
"type": "string",
"description": "Only this sign, e.g. aries or baran (optional)"
},
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1900
}
},
"additionalProperties": false
}Where the Sun, Moon and planets are in the zodiac at a moment (now when no date is given): signs and degrees, which planets are retrograde, aspects between them, the Moon's sign, phase and next sign change, the next new and full moon. With a place it adds the ascendant, midheaven and houses. For questions like "what sign is the Moon in today" or "is Mercury retrograde now".
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone of date and time and of the answer's times (default: the place's, else Europe/Warsaw) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date | string | YYYY-MM-DD (1800–2100); leave out for now |
| lang | string | Language of the names in the answer: pl (default) or en |
| time | string | HH:MM clock time in tz (default 12:00 when a date is given) |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
{
"type": "object",
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone of date and time and of the answer's times (default: the place's, else Europe/Warsaw)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "YYYY-MM-DD (1800–2100); leave out for now"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"time": {
"type": "string",
"description": "HH:MM clock time in tz (default 12:00 when a date is given)"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
}
},
"additionalProperties": false
}Makes a printable card of the sky on a day that matters - a birthday, the birth of a child, a wedding or any day - at a place: the link opens the sky map over that place (at the given hour, or 22:00) with a title, a line, the Moon's phase, sunrise and sunset, the planets, the signs and a QR code of the card, ready to print on A4, A3 or as an A6 greeting card. The answer also lists those facts, eclipses within 15 days, the meteor showers active that night and the NASA picture of the day of that date. Use it when someone wants a gift or keepsake of the night sky on a date.
| Argument | Type | Description |
|---|---|---|
| qr | boolean | A QR code of the card in its corner (default true) |
| tz | string | IANA time zone, e.g. Europe/Warsaw (with lat and lon) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date* | string | YYYY-MM-DD (1800–2100) |
| lang | string | Language of the names in the answer: pl (default) or en |
| time | string | HH:MM clock time at the place; leave out for the evening sky |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
| style | string | Dark blue (default), light, or black and white |
| title | string | The card's heading (else the occasion's) |
| occasion | string | The card's page and default title (birthday by default) |
| subtitle | string | A line under it, e.g. names |
{
"type": "object",
"required": [
"date"
],
"properties": {
"qr": {
"type": "boolean",
"description": "A QR code of the card in its corner (default true)"
},
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "YYYY-MM-DD (1800–2100)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"time": {
"type": "string",
"description": "HH:MM clock time at the place; leave out for the evening sky"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"style": {
"enum": [
"granat",
"jasny",
"cb"
],
"type": "string",
"description": "Dark blue (default), light, or black and white"
},
"title": {
"type": "string",
"maxLength": 60,
"description": "The card's heading (else the occasion's)"
},
"occasion": {
"enum": [
"birthday",
"birth",
"wedding",
"day"
],
"type": "string",
"description": "The card's page and default title (birthday by default)"
},
"subtitle": {
"type": "string",
"maxLength": 80,
"description": "A line under it, e.g. names"
}
},
"additionalProperties": false
}The moment the Sun comes back to its place of birth in a year (this year by default), to the minute, and the chart of that moment for the place of the birthday (the place of birth by default): planets, ascendant and houses, and the returns of the next years.
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone, e.g. Europe/Warsaw (with lat and lon) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date* | string | Date of birth, YYYY-MM-DD (1800–2100) |
| lang | string | Language of the names in the answer: pl (default) or en |
| time | string | Clock time at the place of birth, HH:MM; leave out if unknown |
| year | integer | |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
| return_tz | string | |
| return_lat | number | |
| return_lon | number | |
| house_system | string | |
| return_place | string | Where the birthday is spent (else the place of birth) |
{
"type": "object",
"required": [
"date"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM; leave out if unknown"
},
"year": {
"type": "integer",
"maximum": 2100,
"minimum": 1801
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"return_tz": {
"type": "string"
},
"return_lat": {
"type": "number"
},
"return_lon": {
"type": "number"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string"
},
"return_place": {
"type": "string",
"description": "Where the birthday is spent (else the place of birth)"
}
},
"additionalProperties": false
}Compares two birth charts: the aspects between the planets (and ascendant and midheaven when known) of the two people, the most exact first, and each person's planets in the other's houses. Each person is an object with date, time (optional), place (or lat, lon, tz) and name (optional). Calculations only, no reading of the relationship; the link opens the double chart on the site.
| Argument | Type | Description |
|---|---|---|
| a* | object | |
| b* | object | |
| lang | string | Language of the names in the answer: pl (default) or en |
{
"type": "object",
"required": [
"a",
"b"
],
"properties": {
"a": {
"type": "object",
"required": [
"date"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"name": {
"type": "string",
"maxLength": 30
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM; leave out if unknown"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string"
}
}
},
"b": {
"type": "object",
"required": [
"date"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"name": {
"type": "string",
"maxLength": 30
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM; leave out if unknown"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string"
}
}
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
}
},
"additionalProperties": false
}The planets of a day (today by default) against a birth chart: their houses in it, their aspects to the points of birth, and the exact transits of Jupiter, Saturn, Uranus, Neptune and Pluto to it for twelve months. Calculations only, no forecast.
| Argument | Type | Description |
|---|---|---|
| on | string | The day, YYYY-MM-DD; leave out for today |
| tz | string | IANA time zone, e.g. Europe/Warsaw (with lat and lon) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date* | string | Date of birth, YYYY-MM-DD (1800–2100) |
| lang | string | Language of the names in the answer: pl (default) or en |
| time | string | Clock time at the place of birth, HH:MM; leave out if unknown |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
| house_system | string |
{
"type": "object",
"required": [
"date"
],
"properties": {
"on": {
"type": "string",
"description": "The day, YYYY-MM-DD; leave out for today"
},
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM; leave out if unknown"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string"
}
},
"additionalProperties": false
}A birth chart in the sidereal zodiac (Lahiri ayanamsa): the lagna, the nine grahas in their rashis with nakshatras and padas, whole-sign houses, navamsa (D9) signs and the Vimshottari periods with the current mahadasha and antardasha. Without the hour no lagna or houses. Calculations only.
| Argument | Type | Description |
|---|---|---|
| tz | string | IANA time zone, e.g. Europe/Warsaw (with lat and lon) |
| lat | number | Latitude, instead of place |
| lon | number | Longitude (east positive), instead of place |
| date* | string | Date of birth, YYYY-MM-DD (1800–2100) |
| lang | string | Language of the names in the answer: pl (default) or en |
| node | string | Rahu as the mean (default) or true node |
| time | string | Clock time at the place of birth, HH:MM; leave out if unknown |
| place | string | A town or city, e.g. "Opole", "Kraków", "London"; the first match is used (Polish places come first) |
| house_system | string |
{
"type": "object",
"required": [
"date"
],
"properties": {
"tz": {
"type": "string",
"description": "IANA time zone, e.g. Europe/Warsaw (with lat and lon)"
},
"lat": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude, instead of place"
},
"lon": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude (east positive), instead of place"
},
"date": {
"type": "string",
"description": "Date of birth, YYYY-MM-DD (1800–2100)"
},
"lang": {
"enum": [
"pl",
"en"
],
"type": "string",
"description": "Language of the names in the answer: pl (default) or en"
},
"node": {
"enum": [
"mean",
"true"
],
"type": "string",
"description": "Rahu as the mean (default) or true node"
},
"time": {
"type": "string",
"description": "Clock time at the place of birth, HH:MM; leave out if unknown"
},
"place": {
"type": "string",
"description": "A town or city, e.g. \"Opole\", \"Kraków\", \"London\"; the first match is used (Polish places come first)"
},
"house_system": {
"enum": [
"placidus",
"whole"
],
"type": "string"
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 5, 2026.
What changed in this server's tools since we started watching, newest first. Each change is scanned again.
Makes a printable card of the sky on a day that matters - a birthday, the birth of a child, a wedding or any day - at a place: the link opens the sky map over that place (at the given hour, or 22:00) with a title, a line, the Moon's phase, sunrise and sunset, the planets, the signs and a QR code of the card, ready to print on A4, A3 or as an A6 greeting card. The answer also lists those facts, eclipses within 15 days, the meteor showers active that night and the NASA picture of the day of that date. Use it when someone wants a gift or keepsake of the night sky on a date.
When Saturn (about at 29, 59 and 88) and Jupiter (about every 12 years) come back to their places of birth: each return with its dates and the age, three crossings when retrograde motion takes the planet back over the place.
The moment the Sun comes back to its place of birth in a year (this year by default), to the minute, and the chart of that moment for the place of the birthday (the place of birth by default): planets, ascendant and houses, and the returns of the next years.
A birth chart in the sidereal zodiac (Lahiri ayanamsa): the lagna, the nine grahas in their rashis with nakshatras and padas, whole-sign houses, navamsa (D9) signs and the Vimshottari periods with the current mahadasha and antardasha. Without the hour no lagna or houses. Calculations only.
The planets of a day (today by default) against a birth chart: their houses in it, their aspects to the points of birth, and the exact transits of Jupiter, Saturn, Uranus, Neptune and Pluto to it for twelve months. Calculations only, no forecast.
Compares two birth charts: the aspects between the planets (and ascendant and midheaven when known) of the two people, the most exact first, and each person's planets in the other's houses. Each person is an object with date, time (optional), place (or lat, lon, tz) and name (optional). Calculations only, no reading of the relationship; the link opens the double chart on the site.