true-solar-time-mcp
true-solar-time-mcp
Corrección de la hora solar verdadera para cartas BaZi / Cuatro Pilares: el paso que la mayoría de las calculadoras omiten.
Un servidor MCP, CLI y biblioteca TypeScript que convierte una hora de nacimiento registrada (reloj de pared + zona horaria IANA + longitud) en la hora real del sol en el lugar de nacimiento. Determinista: misma entrada, misma salida, siempre.
$ npx true-solar-time 1988-07-01 08:00 Asia/Shanghai 121.47
clock time 1988-07-01 08:00 (Asia/Shanghai, DST GMT+9)
true solar 1988-07-01 07:02
correction -58 min
DST -60
longitude +6
eq. of time -4
hour branch 辰 (2 min from 卯)
⚠ within 8 min of a branch boundary — cast both candidatesPor qué existe esto
Una carta BaZi es función de la posición del sol, pero los registros de nacimiento se escriben en hora civil. Entre ambas se sitúan tres correcciones que casi todas las herramientas de cartas —incluidas las populares "skills" de LLM de código abierto— omiten silenciosamente:
Horario de verano histórico. China observó el horario de verano de 1986 a 1991. Todos los nacidos en esos seis veranos tienen un certificado de nacimiento que registra un reloj adelantado una hora, suficiente para cruzar una rama horaria completa y, en el momento adecuado de la noche, también el pilar del día. La base de datos de zonas horarias IANA/ICU lo sabe; la mayoría de las calculadoras nunca lo consultan.
Longitud. China abarca cuatro zonas horarias geográficas y funciona con un solo reloj. A las 07:10 hora de Pekín en Ürümqi, la hora solar local apenas supera las 05:00, dos ramas completas de diferencia.
Ecuación del tiempo. El tiempo solar verdadero y el medio se separan hasta ±16 minutos a lo largo del año (aproximación NOAA aquí, error muy por debajo de un minuto). A principios de noviembre, por sí sola puede mover una carta a través de un límite de rama.
Esta biblioteca también informa de dos cosas que la mayoría de las herramientas no te dirán:
Si tu hora de nacimiento existió alguna vez. En una noche de adelanto de reloj, el reloj local salta de 01:59 a 03:00; un registro de nacimiento que dice 02:30 se refiere a un instante inexistente. Detectamos el hueco, informamos de su anchura y nunca adivinamos en silencio.
Cuán cerca está la hora corregida de un límite de rama. A pocos minutos de distancia, la respuesta honesta es "calcula ambos candidatos", no una falsa precisión.
Related MCP server: OpenFate Bazi MCP
Lo que deliberadamente no hace
No calcula cartas, no elige elementos favorables ni interpreta nada. El cálculo de cartas es un problema resuelto con buenas implementaciones de código abierto; la interpretación no tiene una respuesta única correcta y no pertenece a una biblioteca de consulta. Un paso, hecho con cuidado.
La metodología completa —cada constante, umbral y convención, incluidas las que usa esta biblioteca— está publicada en auspiceoracle.com/en/method. Tres ejemplos resueltos con derivaciones completas: la prueba de hora de nacimiento. Ensayo de fondo: hora solar verdadera.
Servidor MCP
Endpoint alojado (sin instalación): https://auspiceoracle.com/mcp — HTTP de flujo sin estado, sin autenticación. Funciona como conector personalizado de claude.ai o en cualquier cliente MCP que hable HTTP de flujo:
{
"mcpServers": {
"true-solar-time": { "url": "https://auspiceoracle.com/mcp" }
}
}Local (stdio):
{
"mcpServers": {
"true-solar-time": {
"command": "npx",
"args": ["-y", "true-solar-time-mcp"]
}
}
}Herramientas:
true_solar_time— corrección completa: instante corregido, desglose de DST/longitud/EoT (los tres siempre suman exactamente el total), rama horaria, distancia al límite, detección de tiempo inexistente.hour_branch— pertenencia a rama y distancia al límite para un tiempo ya corregido.
El endpoint alojado además expone cast_pillars — cuatro pilares corregidos solarmente con tallos ocultos, Na Yin y ciclos de suerte, calculados por el motor de producción de Auspice Oracle (código cerrado; mismas convenciones que la metodología publicada). Solo hechos, sin veredictos de fuerza ni interpretación.
Si estás construyendo una skill o agente BaZi: llama a true_solar_time antes de calcular, y pasa el tiempo corregido a tu calculador. Un LLM no puede hacer esta conversión en contexto: la ecuación del tiempo es una serie trigonométrica y la historia del DST vive en una base de datos, no en los pesos del modelo.
Biblioteca
import { toTrueSolarTime } from 'true-solar-time-mcp'
const r = toTrueSolarTime(1992, 6, 15, 7, 10, 'Asia/Shanghai', 87.6)
// r.hour === 4, r.minute === 59, r.correctionMinutes === -130
// r.hourBranch === '寅' — two branches away from what the clock saysConvenciones, expresadas claramente
Las ramas horarias cambian en horas impares (子 comienza a las 23:00), 120 minutos cada una.
El indicador de riesgo de límite usa un umbral de 8 minutos. Eso es una convención, no física: ajústalo a tu propia tolerancia; las cartas cercanas a un límite deben calcularse de ambas maneras de todos modos.
Las zonas horarias históricas provienen de los datos ICU de tu runtime (Node ≥ 18). No mantenemos nuestras propias tablas.
Cuando el offset estándar en sí cambió a mitad de año (Rusia 2011), la división DST/longitud del desglose puede atribuir de manera imperfecta; la corrección total siempre se calcula a partir del offset real y no se ve afectada.
Relación con auspiceoracle.com
Este es un espejo extraído de la capa de tiempo solar del motor detrás de Auspice Oracle. El motor principal es la fuente de verdad; las pruebas doradas aquí fijan este espejo a los mismos ejemplos publicados. Los informes de errores son muy bienvenidos; las PRs que cambien las convenciones anteriores serán rechazadas (una bifurcación de convenciones haría falsa la metodología publicada).
MIT © Shan Liu
This server cannot be deployed
Maintenance
Related MCP Connectors
Bazi (Four Pillars) and Qimen Dunjia charts with true solar time and historical time zones.
Cast a BaZi (Four Pillars) chart with true solar time, plus a reflective personality sketch.
Read-only Bazi, True Solar Time, and Chinese almanac tools in English and Traditional Chinese.
Generate BaZi charts from birth details. Explore Four Pillars, solar terms, and Luck Pillars for d…
Related MCP Servers
- FlicenseNot gradedqualityNot gradedmaintenanceCalculates Chinese BaZi (Four Pillars of Destiny) charts based on birth date, time, and location, including solar term information, decade luck cycles, and true solar time corrections.2-

OpenFate Bazi MCPofficial
AlicenseAqualityAmaintenanceEnables AI agents to calculate deterministic Bazi (Four Pillars) charts with True Solar Time and Earthly Branch interactions, avoiding LLM hallucination of calendrical math.6177 npm160MIT- AlicenseNot gradedqualityDmaintenanceConverts civil time to true solar time and audits whether civil and solar times cross Chinese 时辰 boundaries, for time-sensitive divination workflows.53 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables calculation of Four Pillars of Destiny (BaZi) charts using true solar time and a global geographic database, providing pillars, Da Yun, and branch interactions for any location and time.34 npm1MIT