astro-mcp
astro-mcp
Servidor MCP Astrológico — herramientas de astrología de alta precisión para agentes LLM.
Implementa 14 herramientas respaldadas por Swiss Ephemeris (pyswisseph) y se integra con cualquier cliente de Model Context Protocol (Claude Desktop, etc.).
Tools
# | Name | Description |
1 |
| Carta natal completa: planetas, ángulos, casas, aspectos |
2 |
| Aspectos de tránsito a la carta natal, fase lunar, lunaciones y luna vacía de curso |
3 |
| Progresiones de un día por año + Arco Solar |
4 |
| Carta de retorno solar anual |
5 |
| Puntúa tiempos de nacimiento candidatos contra eventos de vida |
6 |
| Carta(s) de retorno lunar mensual |
7 |
| Aspectos entre cartas + superposiciones de casas |
8 |
| Carta compuesta de punto medio o Davison |
9 |
| Profección anual — señor del año y casas activadas |
10 |
| 24 horas planetarias para cualquier día/ubicación |
11 |
| 12 Partes / Suertes arábigas (Fortuna, Espíritu, Matrimonio, etc.) |
12 |
| Tabla de posiciones planetarias en un rango de fechas |
13 |
| Encuentra fechas exactas de un aspecto específico |
14 |
| Puntos de antiscia y contra-antiscia, con contactos de tránsito opcionales |
Related MCP server: auseklis
Installation
# 1. Clone
git clone https://github.com/DrewCyber/astro-mcp
cd astro-mcp
# 2. Create virtual environment
python3.11 -m venv .venv
source .venv/bin/activate
# 3. Install package + dev dependencies
pip install -e ".[dev]"
# 4. Download Swiss Ephemeris data files
bash scripts/download_ephe.sh
# 5. Set environment variable
export EPHE_PATH="$(pwd)/ephe"
# 6. Run tests
pytest tests/Claude Desktop configuration
Añade a ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"astro": {
"command": "/path/to/astro-mcp/.venv/bin/python",
"args": ["-m", "astro_mcp"],
"env": {
"EPHE_PATH": "/path/to/astro-mcp/ephe",
"GEOCODING_PROVIDER": "nominatim",
"GEOCODING_USER_AGENT": "astro-mcp/1.0",
"LOG_LEVEL": "WARNING"
}
}
}
}Environment Variables
Variable | Default | Description |
|
| Ruta a los archivos de datos |
|
|
|
| — | Requerido si |
|
| User-agent de Nominatim |
|
| Tamaño de caché LRU para resultados de geocodificación |
|
| Caché de geocodificación persistente para que las búsquedas sobrevivan a un reinicio. Almacena solo ciudad → lat/lon/tz. Déjalo vacío para desactivar |
|
|
|
|
| Multiplicador de orbe global (0.1–3.0) |
|
|
|
|
| Nivel de registro de Python |
Architecture
src/astro_mcp/
├── server.py # MCP server — tool registration and dispatch
├── schemas.py # Pydantic input models (source of the JSON schemas)
├── config.py # Settings from environment variables
├── core/
│ ├── models.py # Data models and astrological constants
│ ├── errors.py # AstroError and the structured error codes
│ ├── ephemeris_provider.py # Swiss Ephemeris wrapper (pyswisseph)
│ ├── geocoding.py # City → lat/lon/tz (geopy + timezonefinder)
│ ├── moon.py # Lunar phase, lunations and void-of-course
│ └── formatters.py # LLM-optimized serialization
└── tools/
├── natal.py # Tool 1
├── transits.py # Tool 2
├── progressions.py # Tool 3
├── returns.py # Tools 4 + 6
├── rectification.py # Tool 5
├── synastry.py # Tools 7 + 8
├── profections.py # Tool 9
├── planetary_hours.py # Tool 10
├── arabic_parts.py # Tool 11
├── ephemeris.py # Tools 12 + 13
└── antiscia.py # Tool 14Output Format
Todas las herramientas devuelven JSON compacto sin espacios en blanco para minimizar los tokens de contexto del LLM (~75% más pequeño que el JSON verboso). Los códigos de planetas están abreviados (Su, Mo, Me, etc.), los aspectos usan códigos de 3 letras (Cnj, Tri, Squ), y la bandera de retrogradación ("R":true) se omite cuando es directo para ahorrar tokens adicionales.
Los fallos usan el mismo contrato, por lo que un cliente nunca tiene que analizar prosa:
{"error":true,"code":"INPUT_ERROR","message":"Invalid arguments for 'calculate_natal_chart'.","hint":"birth_location.lat: Input should be less than or equal to 90"}Planet Codes
Códigos soportados en todas las herramientas:
SuSolMoLunaMeMercurioVeVenusMaMarteJuJúpiterSaSaturnoUrUranoNeNeptunoPlPlutónChQuirónLiBlack Moon Lilith (Apogeo Medio)NNNodo Norte (Nodo Verdadero por defecto; Nodo Medio cuandoNODE_TYPE=mean)SNNodo SurAsteroides (donde
include_asteroidses compatible):CeCeres,PaPalas,JunJuno,VesVesta
API Notes
get_ephemerisacepta un soloplaneto una lista de planetas.get_ephemeris.stepsoporta1h,2h,3h,6h,12h,1d,7d,30d.get_ephemerisahora devuelve un campotimezoney formateadtenoutput_tz.find_aspect_exact_dates.modesoporta:transit-to-transitpara dos cuerpos en movimientotransit-to-natalpara tránsito a un planeta/ángulo natalauto(por defecto) infiere el modo a partir de la presencia debirth_*
Testing
pytest tests/ -v --cov=src/astro_mcp --cov-report=term-missingLas regresiones de cartas doradas viven en línea en la suite de pruebas (tests/test_audit_regressions.py) y fueron verificadas contra Astro.com y Solar Fire.
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityAmaintenanceMulti-tradition astrology engine that computes real birth charts, transits, and synastry for AI agents via MCP tools.3
- AlicenseAqualityAmaintenanceAstrology MCP server that computes natal charts, transits, synastry, progressions, returns, eclipses, retrogrades, and moon phases from a real ephemeris, enabling AI agents to provide accurate astrological calculations without hallucination.12741MIT
- FlicenseAqualityDmaintenanceProvides astronomical calculations using the Swiss Ephemeris library, including planetary positions, houses, chart points, and asteroids for any date and location.48
- AlicenseAqualityBmaintenancePrecision-audited astrology MCP for natal charts, transits, synastry and moon phases. No API key.10124MIT
Related MCP Connectors
Sub-arcsecond ephemeris and astrology on NASA JPL DE440: natal, transits, eclipses, Human Design.
Zi Wei Dou Shu for AI agents: free natal charts, six transit levels, and optional readings.
60+ units, live FX, timezones, and date arithmetic for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DrewCyber/astro-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server