MCP server exposing server-computed planetary positions (Swiss Ephemeris), validated against JPL Horizons (NASA). Plug any LLM/agent into the real sky: 19 astrology tools, never hallucinated.
Strong foundation with 16 well-named tools following verb_noun convention (get_*, find_*). All tools have descriptions (avg 156 chars, within 10-1024 baseline). Input schemas present with type definitions and parameter descriptions. However, output schemas are not documented in the source code, LLMs cannot see what fields to expect from responses. Parameter descriptions are solid but some lack explicit format/constraint details (e.g., timezone format not stated as IANA). No error handling guidance visible. Tool composition is excellent (each does one thing), but missing pagination/limit guidance for tools returning lists (find_ingresses, find_retrograde_stations, find_next_solar_eclipse).
Changements de signe d'une planète sur une période : liste des dates/heures où elle franchit un nouveau signe.
Prochaine éclipse lunaire après une date donnée : date, type (totale/partielle/pénombrale), magnitude.
Prochaine éclipse solaire après une date donnée : date, type (totale/annulaire/partielle), magnitude, chemins de totalité.
Stations rétrogrades d'une planète sur une période : dates/heures où elle devient rétrograde ou reprend son mouvement direct.
Aspects (majeurs et mineurs) entre les planètes à un instant donné, avec orbe et tonalité. Grille d'aspects calculée par le moteur, pas estimée.
Astrocartographie : lignes de puissance (angles planétaires) sur la Terre pour un thème natal donné.
Le ciel à l'instant présent (transits du moment) pour un lieu donné : positions en maisons + aspects.
Output schemas not documented. LLMs cannot see what fields responses contain (e.g., get_natal_chart returns what structure?). This forces agents to guess field names and risks downstream tool call failures.
Parameter format constraints not explicit in descriptions. 'timezone' parameter documented as 'Fuseau IANA' but LLMs may not recognize IANA as a standard. Should state: 'IANA timezone identifier (e.g., Europe/Paris, America/New_York)'. Same for date/time formats, state 'ISO 8601 UTC' or 'YYYY-MM-DD HH:mm' directly in description.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Diagnostic du moteur d'éphéméride actif : version, précision, capacités (swisseph vs AstraCore fallback).
Chemin de vie (progressions secondaires) : positions progressées et aspects progressés à une date donnée.
Retour lunaire : date/heure du prochain retour de la Lune à sa position natale, et thème du retour lunaire.
Phase de la Lune (nom, illumination %, description) à un instant donné, dérivée de la position réelle Soleil/Lune.
Thème natal complet : positions en maisons, aspects, ASC/MC, phase lunaire, Lots hermétiques. Prend une date/heure LOCALE + fuseau IANA + coordonnées. Zodiaque tropical (défaut) ou sidéral (Lahiri), et système de maisons au choix (Placidus par défaut).
Positions écliptiques géocentriques de tous les corps (Soleil→Pluton, nœuds, Lilith) à un instant donné. Calculé côté serveur par le moteur d'éphéméride — jamais estimé par le modèle.
Retour solaire : date/heure du prochain retour du Soleil à sa position natale, et thème du retour solaire.
Synastrie (comparaison de deux thèmes) : aspects croisés entre deux personnes, composite par mi-points, tonalité globale.
Transits croisés au thème natal : aspects entre les planètes qui transitent (aujourd'hui ou à une date donnée) et les planètes de naissance, triés par orbe. Le cœur des « prévisions ».
No error handling guidance. Tools lack descriptions of failure modes (e.g., what if timezone is invalid? What if birth time is unknown?). Responses should include recovery hints: 'If timezone is invalid, try UTC or call get_engine_diagnostic for supported timezones.'
List-returning tools lack pagination guidance. find_ingresses, find_retrograde_stations, find_next_solar_eclipse may return large result sets over multi-year date ranges. No limit parameter or pagination cursor documented. Should cap results at 50-100 items and offer offset/limit or next_cursor.
Tool composition: get_natal_chart, get_transits, get_synastry, get_solar_return, get_lunar_return, get_astrocartography, get_life_path all require identical birth data (date, time, timezone, lat, lon). No batch variant or shared context tool. Agents calling multiple tools must repeat parameters 7 times, wasting tokens and inviting copy-paste errors.