AstralRead MCP
An MCP server providing astrological calculations and knowledge-base retrieval. It computes natal charts, daily transits, and sky data using Swiss Ephemeris, and answers queries by retrieving specific passages from a library of astrology and psychology books. It supports birth chart construction, transit analysis, and semantic search within its curated knowledge base without requiring user authentication.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://astralread.com/mcpWhat you can do with it
- Build a natal chart from birth data
- Check daily transits and aspects
- Lookup astrological concepts in knowledge base
- Analyze synastry between two charts
Source and maintenance
Protocol and capabilities
- Server
- astralread 0.1.0
- MCP protocol
- 2025-06-18
- Tools
- 6 advertised
- Resources
- 1 advertised
- Resource templates
- 0 advertised
- Prompts
- 0 advertised
{
"tools": {
"listChanged": false
},
"prompts": {
"listChanged": false
},
"resources": {
"subscribe": false,
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
6 advertised
natal_chart — Natal chart
Calculates a natal (birth) chart with the Swiss Ephemeris: the exact sign, degree and house of the Sun, Moon, planets, North Node and Chiron; the Ascendant, MC, DSC and IC; the 12 house cusps; and the major aspects between the planets with their orbs. Adds short notes and links from the AstralRead knowledge base for the Sun, Moon and Ascendant signs. Use it when someone asks for their birth chart or about their placements. Needs the birth date, the place (or coordinates) and ideally the birth time. Birth data is used only for this calculation and is not stored or logged.
{
"type": "object",
"title": "natal_chartArguments",
"required": [
"birth_date"
],
"properties": {
"lang": {
"enum": [
"en",
"ru"
],
"type": "string",
"title": "Lang",
"default": "en",
"description": "Language of the result: en or ru."
},
"place": {
"anyOf": [
{
"type": "string",
"maxLength": 120
},
{
"type": "null"
}
],
"title": "Place",
"default": null,
"description": "Birth city, e.g. 'Chicago, Illinois, USA'. Used to look up coordinates and the time zone. Not needed if latitude/longitude are given."
},
"latitude": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90
},
{
"type": "null"
}
],
"title": "Latitude",
"default": null,
"description": "Birth latitude in degrees (north +)."
},
"timezone": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Timezone",
"default": null,
"description": "IANA time zone of the birth place, e.g. America/Chicago. Looked up from the place/coordinates when omitted."
},
"longitude": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180
},
{
"type": "null"
}
],
"title": "Longitude",
"default": null,
"description": "Birth longitude in degrees (east +)."
},
"birth_date": {
"type": "string",
"title": "Birth Date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Birth date, YYYY-MM-DD (years 1800–2100)."
},
"birth_time": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{1,2}:\\d{2}$"
},
{
"type": "null"
}
],
"title": "Birth Time",
"default": null,
"description": "Local birth time, 24-hour HH:MM. Omit if unknown: then houses, Ascendant and MC are not computed."
},
"house_system": {
"enum": [
"koch",
"placidus",
"whole_sign"
],
"type": "string",
"title": "House System",
"default": "koch",
"description": "House system: koch (default), placidus or whole_sign."
}
}
}{
"title": "Natal chart",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}transits_today — Transits to a natal chart
Lists the tight transits of a given day to a natal chart: aspects of the transiting Moon, Sun, Mercury, Venus, Mars, Jupiter and Saturn to the natal planets, Ascendant and MC within 2° (3° for Jupiter and Saturn), plus each planet's current sign and natal house and the Moon phase. Use it for questions like 'what are my transits today' or 'what is happening in my chart this week'. The date defaults to today in the person's time zone. Computed with the Swiss Ephemeris; no forecast text is generated. Birth data is used only for this calculation and is not stored or logged.
{
"type": "object",
"title": "transits_todayArguments",
"required": [
"birth_date"
],
"properties": {
"date": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
{
"type": "null"
}
],
"title": "Date",
"default": null,
"description": "Day to check, YYYY-MM-DD. Defaults to today in current_timezone."
},
"lang": {
"enum": [
"en",
"ru"
],
"type": "string",
"title": "Lang",
"default": "en",
"description": "Language of the result: en or ru."
},
"place": {
"anyOf": [
{
"type": "string",
"maxLength": 120
},
{
"type": "null"
}
],
"title": "Place",
"default": null,
"description": "Birth city, e.g. 'Chicago, Illinois, USA'. Used to look up coordinates and the time zone. Not needed if latitude/longitude are given."
},
"latitude": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90
},
{
"type": "null"
}
],
"title": "Latitude",
"default": null,
"description": "Birth latitude in degrees (north +)."
},
"timezone": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Timezone",
"default": null,
"description": "IANA time zone of the birth place, e.g. America/Chicago. Looked up from the place/coordinates when omitted."
},
"longitude": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180
},
{
"type": "null"
}
],
"title": "Longitude",
"default": null,
"description": "Birth longitude in degrees (east +)."
},
"birth_date": {
"type": "string",
"title": "Birth Date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Birth date, YYYY-MM-DD (years 1800–2100)."
},
"birth_time": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{1,2}:\\d{2}$"
},
{
"type": "null"
}
],
"title": "Birth Time",
"default": null,
"description": "Local birth time, 24-hour HH:MM. Omit if unknown: then houses, Ascendant and MC are not computed."
},
"house_system": {
"enum": [
"koch",
"placidus",
"whole_sign"
],
"type": "string",
"title": "House System",
"default": "koch",
"description": "House system: koch (default), placidus or whole_sign."
},
"current_timezone": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Current Timezone",
"default": null,
"description": "IANA time zone where the person is now (defines 'today'); defaults to the birth time zone."
}
}
}{
"title": "Transits to a natal chart",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}vedic_chart — Vedic (Jyotish) chart
Calculates a Vedic (Jyotish) birth chart with the Swiss Ephemeris: sidereal zodiac with the Lahiri ayanamsa, whole-sign houses from the Lagna (Ascendant), the rashi, degree and house of the nine grahas (Sun to Saturn, Rahu as the mean node and Ketu opposite), and the nakshatra, pada and nakshatra lord of the Lagna and every graha, with the traditional symbol and deity of the Moon's nakshatra. Use it for questions like 'what is my nakshatra', 'my Vedic chart' or 'my rashi / Moon sign in Jyotish'. Pure calculation: no doshas, yogas or predictions. Birth data is used only for this calculation and is not stored or logged.
{
"type": "object",
"title": "vedic_chartArguments",
"required": [
"birth_date"
],
"properties": {
"lang": {
"enum": [
"en",
"ru"
],
"type": "string",
"title": "Lang",
"default": "en",
"description": "Language of the result: en or ru."
},
"place": {
"anyOf": [
{
"type": "string",
"maxLength": 120
},
{
"type": "null"
}
],
"title": "Place",
"default": null,
"description": "Birth city, e.g. 'Chicago, Illinois, USA'. Used to look up coordinates and the time zone. Not needed if latitude/longitude are given."
},
"latitude": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90
},
{
"type": "null"
}
],
"title": "Latitude",
"default": null,
"description": "Birth latitude in degrees (north +)."
},
"timezone": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Timezone",
"default": null,
"description": "IANA time zone of the birth place, e.g. America/Chicago. Looked up from the place/coordinates when omitted."
},
"longitude": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180
},
{
"type": "null"
}
],
"title": "Longitude",
"default": null,
"description": "Birth longitude in degrees (east +)."
},
"birth_date": {
"type": "string",
"title": "Birth Date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Birth date, YYYY-MM-DD (years 1800–2100)."
},
"birth_time": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{1,2}:\\d{2}$"
},
{
"type": "null"
}
],
"title": "Birth Time",
"default": null,
"description": "Local birth time, 24-hour HH:MM. Omit if unknown: then houses, Ascendant and MC are not computed."
}
}
}{
"title": "Vedic (Jyotish) chart",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}vimshottari_dasha — Vimshottari dasha periods
Calculates the Vimshottari dasha periods of a birth chart (Swiss Ephemeris, Lahiri ayanamsa): the Moon's nakshatra at birth, the balance of the first Mahadasha, the full Mahadasha sequence from birth with start and end dates, and the Mahadasha, Antardasha and Pratyantardasha running on a given date plus the next two Antardashas. Use it for questions like 'which Mahadasha am I in' or 'when does my Saturn dasha start'. Dates use a 365.25-day year. The result lists the classical themes of the running periods, not predictions. Birth data is used only for this calculation and is not stored or logged.
{
"type": "object",
"title": "vimshottari_dashaArguments",
"required": [
"birth_date"
],
"properties": {
"date": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
{
"type": "null"
}
],
"title": "Date",
"default": null,
"description": "Date to check the running periods for, YYYY-MM-DD (on or after the birth date). Defaults to today in the birth time zone."
},
"lang": {
"enum": [
"en",
"ru"
],
"type": "string",
"title": "Lang",
"default": "en",
"description": "Language of the result: en or ru."
},
"place": {
"anyOf": [
{
"type": "string",
"maxLength": 120
},
{
"type": "null"
}
],
"title": "Place",
"default": null,
"description": "Birth city, e.g. 'Chicago, Illinois, USA'. Used to look up coordinates and the time zone. Not needed if latitude/longitude are given."
},
"latitude": {
"anyOf": [
{
"type": "number",
"maximum": 90,
"minimum": -90
},
{
"type": "null"
}
],
"title": "Latitude",
"default": null,
"description": "Birth latitude in degrees (north +)."
},
"timezone": {
"anyOf": [
{
"type": "string",
"maxLength": 64
},
{
"type": "null"
}
],
"title": "Timezone",
"default": null,
"description": "IANA time zone of the birth place, e.g. America/Chicago. Looked up from the place/coordinates when omitted."
},
"longitude": {
"anyOf": [
{
"type": "number",
"maximum": 180,
"minimum": -180
},
{
"type": "null"
}
],
"title": "Longitude",
"default": null,
"description": "Birth longitude in degrees (east +)."
},
"birth_date": {
"type": "string",
"title": "Birth Date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Birth date, YYYY-MM-DD (years 1800–2100)."
},
"birth_time": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{1,2}:\\d{2}$"
},
{
"type": "null"
}
],
"title": "Birth Time",
"default": null,
"description": "Local birth time, 24-hour HH:MM. Omit if unknown: then houses, Ascendant and MC are not computed."
}
}
}{
"title": "Vimshottari dasha periods",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}sky_today — Sky of the day
Returns the sky of one calendar day from the Swiss Ephemeris: the Moon's sign, phase and illumination, lunations and eclipses, planet sign changes, retrograde/direct stations, exact aspects between planets, which planets are retrograde, and every planet's position, plus a link to the AstralRead 'Sky of the day' page. No birth data needed. English uses UTC times, Russian uses Moscow time.
{
"type": "object",
"title": "sky_todayArguments",
"properties": {
"date": {
"anyOf": [
{
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
{
"type": "null"
}
],
"title": "Date",
"default": null,
"description": "Day, YYYY-MM-DD (1900–2100). Defaults to today."
},
"lang": {
"enum": [
"en",
"ru"
],
"type": "string",
"title": "Lang",
"default": "en",
"description": "Language of the result: en or ru."
}
}
}{
"title": "Sky of the day",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}kb_lookup — Astrology knowledge base lookup
Finds pages of the AstralRead astrology knowledge base for a chart factor and returns each page's title, a one- or two-sentence summary and its link. Understands planets in signs and houses ('Moon in Taurus', 'Mars in 10th house'), Ascendant/MC signs, aspects ('Venus square Saturn'), houses ('7th house'), patterns ('grand trine', 'T-square', 'yod'), North Node and Chiron placements, and transits ('Saturn transit Aries', 'transiting Saturn square Venus', 'Saturn return'). English or Russian.
{
"type": "object",
"title": "kb_lookupArguments",
"required": [
"topic"
],
"properties": {
"lang": {
"enum": [
"en",
"ru"
],
"type": "string",
"title": "Lang",
"default": "en",
"description": "Language of the result: en or ru."
},
"topic": {
"type": "string",
"title": "Topic",
"maxLength": 200,
"minLength": 3,
"description": "The chart factor to look up, e.g. 'Venus square Saturn'."
}
}
}{
"title": "Astrology knowledge base lookup",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
0 advertised
Resources
1 advertised
chart-widget — AstralRead chart
Natal chart wheel with planets, houses, aspects and today's transits; South-Indian Vedic chart and dasha timeline.
ui://widget/chart.html30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1894 ms
- 95th percentile latency
- 1894 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1894 ms · metadata changed · 6 tool(s), 1 resource(s), 0 resource template(s), 0 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http astralread-mcp https://astralread.com/mcpCodex
codex mcp add astralread-mcp --url https://astralread.com/mcpCursor
{
"mcpServers": {
"astralread-mcp": {
"url": "https://astralread.com/mcp"
}
}
}Cline
{
"mcpServers": {
"astralread-mcp": {
"type": "streamableHttp",
"url": "https://astralread.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"astralread-mcp": {
"type": "http",
"url": "https://astralread.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http astralread-mcp https://astralread.com/mcpClaude Desktop
{
"mcpServers": {
"astralread-mcp": {
"url": "https://astralread.com/mcp"
}
}
}Windsurf
{
"mcpServers": {
"astralread-mcp": {
"serverUrl": "https://astralread.com/mcp"
}
}
}Let your agent find its tools
Find servers like AstralRead MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run AstralRead MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.