Stellara
Plain-language astrology: birth chart wheel, sun sign, transits and celebrity star matches (en/nl).
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"stellara-mcp": {
"url": "https://mcp.mystellara.com/mcp"
}
}
}Remote endpoints
https://mcp.mystellara.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
🟢get_sun_sign_reading(birth_date, language, voice)
Returns a short, free reading based only on a birth date: sun sign (simple date table) and Pythagorean life path number, with a few sentences about character, written in the third person by default. No predictions, no personal data stored.
Input Schema
{
"type": "object",
"properties": {
"birth_date": {
"type": "string",
"maxLength": 20,
"description": "Birth date in YYYY-MM-DD format, for example 1988-03-14. Birth time and place are not needed."
},
"language": {
"description": "Language of the text: 'en' (default) or 'nl'.",
"type": "string",
"enum": [
"en",
"nl"
]
},
"voice": {
"description": "Optional voice of the reading: 'third_person' (default, about someone born under the sign) or 'second_person' (addresses the reader as 'you').",
"type": "string",
"enum": [
"third_person",
"second_person"
]
}
},
"required": [
"birth_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"sun_sign": {
"type": "string"
},
"sun_sign_key": {
"type": "string"
},
"sign_change_day": {
"type": "boolean"
},
"life_path_number": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"disclaimer": {
"type": "string"
},
"reading": {
"type": "string"
}
},
"required": [
"sun_sign",
"sun_sign_key",
"sign_change_day",
"life_path_number",
"disclaimer",
"reading"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢create_christmas_star_card(birth_date, recipient_name, language)
Creates a festive Christmas card (text plus SVG image) about someone, from their birth date and optional first name: sun sign and life path number, described as character, not prediction. The card text talks about the recipient in the third person (by name, or neutrally without a name). No personal data stored.
Input Schema
{
"type": "object",
"properties": {
"birth_date": {
"type": "string",
"maxLength": 20,
"description": "Birth date in YYYY-MM-DD format, for example 1988-03-14. Birth time and place are not needed."
},
"recipient_name": {
"description": "Optional first name of the person the card is for. Letters, spaces, hyphens and apostrophes only, max 40 characters. The card is written about this person in the third person. Leave empty for a card without a name.",
"type": "string",
"maxLength": 40
},
"language": {
"description": "Language of the text: 'en' (default) or 'nl'.",
"type": "string",
"enum": [
"en",
"nl"
]
}
},
"required": [
"birth_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output Schema
{
"type": "object",
"properties": {
"sun_sign": {
"type": "string"
},
"sun_sign_key": {
"type": "string"
},
"sign_change_day": {
"type": "boolean"
},
"life_path_number": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"disclaimer": {
"type": "string"
},
"recipient_name": {
"type": [
"string",
"null"
]
},
"card_text": {
"type": "string"
}
},
"required": [
"sun_sign",
"sun_sign_key",
"sign_change_day",
"life_path_number",
"disclaimer",
"recipient_name",
"card_text"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢get_birth_chart(birth_date, birth_time, birth_place, latitude, longitude, ...)
Computes a real birth chart from astronomical positions (tropical zodiac): Sun to Pluto with sign, degree and retrograde flag, major aspects with orbs, and a short character-focused interpretation. Ascendant, Midheaven and Whole Sign houses only when birth time and place are both given. Without a time the Moon is flagged as approximate. No predictions, nothing stored.
Input Schema
{
"type": "object",
"properties": {
"birth_date": {
"type": "string",
"maxLength": 20,
"description": "Birth date in YYYY-MM-DD format, for example 1988-03-14."
},
"birth_time": {
"description": "Optional local birth time, HH:MM 24-hour, for example 07:45. Needed for Ascendant, houses and an exact Moon.",
"type": "string",
"maxLength": 8
},
"birth_place": {
"description": "Optional birth place: any town worldwide with 1000+ inhabitants (offline GeoNames list, CC BY 4.0), Dutch names like 'Den Haag' or 'Keulen' work. Add region or country when a name is common, e.g. 'Springfield, Illinois' or 'Hengelo, Gelderland'. Alternatively give latitude, longitude and timezone.",
"type": "string",
"maxLength": 80
},
"latitude": {
"description": "Optional birth latitude in decimal degrees (north positive), used instead of birth_place.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional birth longitude in decimal degrees (east positive), used instead of birth_place.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "IANA timezone of the birth place, for example Europe/Amsterdam. Required with latitude/longitude; historical daylight saving time is handled automatically.",
"type": "string",
"maxLength": 60
},
"language": {
"description": "Language of the text: 'en' (default) or 'nl'.",
"type": "string",
"enum": [
"en",
"nl"
]
}
},
"required": [
"birth_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_transits(birth_date, birth_time, birth_place, latitude, longitude, ...)
Shows where the planets are now (or on a given UTC date) and which major transits they make to a person's birth chart, with orbs and exact dates, for one day or a 7-day week. Short reflective interpretation, no predictions, nothing stored.
Input Schema
{
"type": "object",
"properties": {
"birth_date": {
"type": "string",
"maxLength": 20,
"description": "Birth date in YYYY-MM-DD format, for example 1988-03-14."
},
"birth_time": {
"description": "Optional local birth time, HH:MM 24-hour, for example 07:45. Needed for Ascendant, houses and an exact Moon.",
"type": "string",
"maxLength": 8
},
"birth_place": {
"description": "Optional birth place: any town worldwide with 1000+ inhabitants (offline GeoNames list, CC BY 4.0), Dutch names like 'Den Haag' or 'Keulen' work. Add region or country when a name is common, e.g. 'Springfield, Illinois' or 'Hengelo, Gelderland'. Alternatively give latitude, longitude and timezone.",
"type": "string",
"maxLength": 80
},
"latitude": {
"description": "Optional birth latitude in decimal degrees (north positive), used instead of birth_place.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional birth longitude in decimal degrees (east positive), used instead of birth_place.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "IANA timezone of the birth place, for example Europe/Amsterdam. Required with latitude/longitude; historical daylight saving time is handled automatically.",
"type": "string",
"maxLength": 60
},
"date": {
"description": "Optional UTC date YYYY-MM-DD to look at. Default: today (UTC).",
"type": "string",
"maxLength": 12
},
"period": {
"description": "'today' (default) or 'week' (7 days starting at date).",
"type": "string",
"enum": [
"today",
"week"
]
},
"language": {
"description": "Language of the text: 'en' (default) or 'nl'.",
"type": "string",
"enum": [
"en",
"nl"
]
}
},
"required": [
"birth_date"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢compare_charts(person_a, person_b, celebrity, language)
Compares two birth charts (synastry): the closest aspects between person A's and person B's planets, with orbs and a short, balanced summary. Birth times and places are optional. Instead of person_b you can pass `celebrity` (name or X handle, see list_celebrities) for a playful star match with a score and a share text for X. No predictions, nothing stored.
Input Schema
{
"type": "object",
"properties": {
"person_a": {
"type": "object",
"properties": {
"birth_date": {
"type": "string",
"maxLength": 20,
"description": "Birth date in YYYY-MM-DD format, for example 1988-03-14."
},
"birth_time": {
"description": "Optional local birth time, HH:MM 24-hour, for example 07:45. Needed for Ascendant, houses and an exact Moon.",
"type": "string",
"maxLength": 8
},
"birth_place": {
"description": "Optional birth place: any town worldwide with 1000+ inhabitants (offline GeoNames list, CC BY 4.0), Dutch names like 'Den Haag' or 'Keulen' work. Add region or country when a name is common, e.g. 'Springfield, Illinois' or 'Hengelo, Gelderland'. Alternatively give latitude, longitude and timezone.",
"type": "string",
"maxLength": 80
},
"latitude": {
"description": "Optional birth latitude in decimal degrees (north positive), used instead of birth_place.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional birth longitude in decimal degrees (east positive), used instead of birth_place.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "IANA timezone of the birth place, for example Europe/Amsterdam. Required with latitude/longitude; historical daylight saving time is handled automatically.",
"type": "string",
"maxLength": 60
}
},
"required": [
"birth_date"
],
"description": "Birth data of one person."
},
"person_b": {
"type": "object",
"properties": {
"birth_date": {
"type": "string",
"maxLength": 20,
"description": "Birth date in YYYY-MM-DD format, for example 1988-03-14."
},
"birth_time": {
"description": "Optional local birth time, HH:MM 24-hour, for example 07:45. Needed for Ascendant, houses and an exact Moon.",
"type": "string",
"maxLength": 8
},
"birth_place": {
"description": "Optional birth place: any town worldwide with 1000+ inhabitants (offline GeoNames list, CC BY 4.0), Dutch names like 'Den Haag' or 'Keulen' work. Add region or country when a name is common, e.g. 'Springfield, Illinois' or 'Hengelo, Gelderland'. Alternatively give latitude, longitude and timezone.",
"type": "string",
"maxLength": 80
},
"latitude": {
"description": "Optional birth latitude in decimal degrees (north positive), used instead of birth_place.",
"type": "number",
"minimum": -90,
"maximum": 90
},
"longitude": {
"description": "Optional birth longitude in decimal degrees (east positive), used instead of birth_place.",
"type": "number",
"minimum": -180,
"maximum": 180
},
"timezone": {
"description": "IANA timezone of the birth place, for example Europe/Amsterdam. Required with latitude/longitude; historical daylight saving time is handled automatically.",
"type": "string",
"maxLength": 60
}
},
"required": [
"birth_date"
],
"description": "Birth data of one person."
},
"celebrity": {
"description": "Optional: name or X handle of a famous person from list_celebrities (for example 'Elon Musk' or '@elonmusk'). Use instead of person_b.",
"type": "string",
"maxLength": 60
},
"language": {
"description": "Language of the text: 'en' (default) or 'nl'.",
"type": "string",
"enum": [
"en",
"nl"
]
}
},
"required": [
"person_a"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_celebrities(query)
Lists the famous people you can compare charts with in compare_charts (about 1000 most-followed real people on X, birth dates from Wikidata cross-checked with Grokipedia). Optional search query (name, handle or description such as 'singer'); returns up to 25, most followed first. Most are date-only.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Optional search text, for example 'singer' or 'Taylor'.",
"type": "string",
"maxLength": 60
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence