Skip to main content
Glama
Shann5

true-solar-time-mcp

by Shann5

true-solar-time-mcp

Коррекция истинного солнечного времени для карт BaZi / Four Pillars — шаг, который пропускают большинство калькуляторов.

MCP-сервер, CLI и библиотека TypeScript, которые преобразуют записанное время рождения (время по часам + часовой пояс IANA + долгота) в фактическое солнечное время в месте рождения. Детерминированно: одинаковый вход — одинаковый выход, каждый раз.

$ 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 candidates

Почему это существует

Карта BaZi является функцией положения солнца, но записи о рождении ведутся по гражданскому времени. Между ними находятся три поправки, которые почти каждый инструмент для построения карт — включая популярные «навыки» LLM с открытым исходным кодом — молча пропускает:

  1. Исторический переход на летнее время (DST). Китай соблюдал переход на летнее время с 1986 по 1991 год. У всех, кто родился в эти шесть летних периодов, в свидетельстве о рождении записано время, переведённое на час вперёд — этого достаточно, чтобы пересечь целую часовую ветвь, а в нужное время ночи — и дневной столп. База данных часовых поясов IANA/ICU знает об этом; большинство калькуляторов никогда её об этом не спрашивают.

  2. Долгота. Китай простирается на четыре географических часовых пояса и живёт по одним часам. В 07:10 по пекинскому времени в Урумчи местное солнечное время едва перевалило за 05:00 — на две полные ветви в сторону.

  3. Уравнение времени. Истинное и среднее солнечное время расходятся на величину до ±16 минут в течение года (здесь используется приближение NOAA, ошибка значительно меньше минуты). В начале ноября только оно может переместить карту через границу ветви.

Эта библиотека также сообщает две вещи, которые большинство инструментов не скажут:

  • Существовало ли ваше время рождения вообще. В ночь перехода на летнее время местные часы перескакивают с 01:59 на 03:00; запись о рождении, указывающая 02:30, не соответствует реальному моменту. Мы обнаруживаем этот разрыв, сообщаем его ширину и никогда не догадываемся молча.

  • Насколько близко скорректированное время находится к границе ветви. В пределах нескольких минут честный ответ — «постройте обе карты», а не ложная точность.

Related MCP server: BaZi (Eight Characters) Calculator

Что она намеренно не делает

Она не строит карты, не подбирает благоприятные элементы и ничего не интерпретирует. Построение карт — решённая задача с хорошими реализациями с открытым исходным кодом; интерпретация не имеет единственно правильного ответа и не место в справочной библиотеке. Один шаг, выполненный тщательно.

Полная методология — каждая константа, порог и соглашение, включая те, что использует эта библиотека, — опубликована на auspiceoracle.com/en/method. Три проработанных примера с полными выводами: the birth-time test. Фоновое эссе: true solar time.

MCP-сервер

Размещённая конечная точка (без установки): https://auspiceoracle.com/mcp — stateless streamable HTTP, без аутентификации. Работает как пользовательский коннектор claude.ai или в любом MCP-клиенте, поддерживающем streamable HTTP:

{
  "mcpServers": {
    "true-solar-time": { "url": "https://auspiceoracle.com/mcp" }
  }
}

Локально (stdio):

{
  "mcpServers": {
    "true-solar-time": {
      "command": "npx",
      "args": ["-y", "true-solar-time-mcp"]
    }
  }
}

Инструменты:

  • true_solar_time — полная коррекция: скорректированный момент, разбивка DST/долгота/EoT (три компонента всегда в сумме дают ровно общую поправку), часовая ветвь, расстояние до границы, обнаружение несуществующего времени.

  • hour_branch — принадлежность к ветви и расстояние до границы для уже скорректированного времени.

Размещённая конечная точка дополнительно предоставляет cast_pillars — солнечно-скорректированные четыре столпа со скрытыми стволами, Na Yin и циклами удачи, вычисленные производственным движком Auspice Oracle (закрытый исходный код; те же соглашения, что и в опубликованной методологии). Только факты — никаких оценок силы, никакой интерпретации.

Если вы создаёте навык или агента BaZi: вызывайте true_solar_time до построения карты и передавайте скорректированное время вашему построителю. LLM не может выполнить это преобразование в контексте — уравнение времени представляет собой тригонометрический ряд, а история DST хранится в базе данных, а не в весах модели.

Библиотека

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 says

Соглашения, изложенные прямо

  • Часовые ветви переключаются по нечётным часам (子 начинается в 23:00), по 120 минут каждая.

  • Флаг риска на границе использует порог в 8 минут. Это соглашение, а не физика — настройте его под свой допуск; карты, близкие к границе, в любом случае следует строить обоими способами.

  • Исторические часовые пояса берутся из данных ICU вашей среды выполнения (Node ≥ 18). Мы не ведём собственные таблицы.

  • Когда стандартное смещение само менялось в середине года (Россия, 2011), разбивка DST/долгота в разбивке может быть неточной; общая поправка всегда вычисляется из фактического смещения и не зависит от этого.

Связь с auspiceoracle.com

Это извлечённое зеркало слоя солнечного времени движка, лежащего в основе Auspice Oracle. Основной движок является источником истины; золотые тесты здесь привязывают это зеркало к тем же опубликованным примерам. Отчёты об ошибках очень приветствуются; PR, изменяющие вышеуказанные соглашения, будут отклонены (форк соглашений сделал бы опубликованную методологию неверной).

MIT © Shan Liu

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables generation of detailed Chinese Ziwei Doushu (Purple Star) astrological charts with geographic location support and true solar time conversion. Provides tools for geocoding locations, converting Beijing time to apparent solar time, and creating comprehensive astrology readings based on birth information.
    10
    13
    MIT
  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Calculates 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
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to calculate deterministic Bazi (Four Pillars) charts with True Solar Time and Earthly Branch interactions, avoiding LLM hallucination of calendrical math.
    6
    182
    122
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Converts civil time to true solar time and audits whether civil and solar times cross Chinese 时辰 boundaries, for time-sensitive divination workflows.
    MIT

View all related MCP servers

Related MCP Connectors

  • Generate BaZi charts from birth details. Explore Four Pillars, solar terms, and Luck Pillars for d…

  • BaZi (Chinese Four Pillars) chart calculator. Structured chart data only, no predictions.

  • Sub-arcsecond ephemeris and astrology on NASA JPL DE440: natal, transits, eclipses, Human Design.

View all MCP Connectors

Latest Blog Posts

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/Shann5/true-solar-time-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server