mcpField
T
True Solar Time

True Solar Time

ローカル
auspiceoracle.comゲーム・エンタメ04 週間前に更新

True Solar Time について

BaZi の実践者や作盤ツール開発者向けの、決定論的な太陽時変換サーバー、CLI、TypeScript ライブラリです。過去の DST、経度、均時差を使って出生時刻を補正し、命式の解釈は行いません。

主な機能

  1. 01出生時刻を真太陽時に補正
  2. 02DST・経度・均時差の内訳を表示
  3. 03存在しない現地時刻を検出
  4. 04時支の境界までの距離を計測
  5. 05時支への該当を確認

活用シーン

  1. 01BaZi の作盤前に出生情報を補正
  2. 02過去の DST の影響を受ける日付を確認
  3. 03時支境界に近い出生時刻を特定
  4. 04太陽時変換を BaZi ツールに統合

MCP 対応

MCP クライアントに `true_solar_time` と `hour_branch` ツールを提供します。ホスト版とデスクトップ構成には作盤関連ツールもあり、リモート呼び出しは Auspice Oracle エンジンに転送されます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"shann5-true-solar-time": {
"command": "npx",
"args": [
"-y",
"true-solar-time-mcp"
]
}
}
}
起動コマンドnpx -y true-solar-time-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmtrue-solar-time-mcp1.0.1

ツール

2

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
dayintegerはい
hourintegerはい記録された時計時刻の時。24 時間制。
yearintegerはい出生年(グレゴリオ暦)
monthintegerはい
minuteintegerはい
timeZonestringはい出生地の IANA タイムゾーン。例:'Asia/Shanghai'、'America/Vancouver'。
longitudenumberはい出生地の経度(度)。東経は正(ウルムチ ≈ 87.6、バンクーバー ≈ -123.1)。

詳細

true-solar-time-mcp

BaZi/四柱推命の命式における真太陽時補正 — ほとんどの計算ツールが省略しているステップです。

記録された出生時刻(時計の時刻+IANA タイムゾーン+経度)を、出生地における太陽の実際の時刻に変換する MCP サーバー、CLI、TypeScript ライブラリです。決定論的に動作するため、入力が同じなら、毎回出力も同じです。

$ 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 の命式は太陽の位置をもとに算出されますが、出生記録には民間時刻が記載されています。この2つの間には、ほぼすべての命式ツール(人気のオープンソース LLM「スキル」も含めて)が気づかれないまま省略している、次の3つの補正があります。

  1. 過去の夏時間。 中国では1986年から1991年まで夏時間が実施されていました。この6回の夏に生まれた人の出生証明書には、時計を1時間進めた時刻が記録されています。これは時支全体をまたぐのに十分な差で、夜の適切な時間帯であれば日柱も変わります。IANA/ICU のタイムゾーンデータベースにはこの情報がありますが、ほとんどの計算ツールは参照しません。
  2. 経度。 中国は地理的には4つのタイムゾーンにまたがっていますが、時計は1つに統一されています。ウルムチで北京時間の07:10は、現地の太陽時ではまだ05:00を少し過ぎたところで、時支が丸2つ分ずれます。
  3. 均時差。 真太陽時と平均太陽時の差は年間で最大±16分になります(ここでは NOAA の近似式を使っており、誤差は1分を大きく下回ります)。11月上旬には、これだけで命式が時支の境界をまたぐことがあります。

このライブラリは、ほとんどのツールが教えてくれない次の2点も報告します。

  • 出生時刻が実際に存在したかどうか。 夏時間への切り替えで時計が01:59から03:00に進む夜は、02:30という出生記録が示す実際の時刻は存在しません。この時間の隙間を検出して、その幅を報告し、推測で補うことは決してありません。
  • 補正後の時刻が時支の境界にどれだけ近いか。 境界まで数分以内の場合、正直な答えは「両方の候補で算出する」であり、見せかけの精密さではありません。

意図的に行わないこと

命式を算出したり、有利な五行を選んだり、何かを解釈したりはしません。命式の算出は、優れたオープンソース実装がある、すでに解決済みの問題です。解釈には唯一の正解がなく、参照用ライブラリには適しません。1つのステップを、慎重に実行します。

すべての定数、しきい値、規約を含む、完全な手法(このライブラリが採用しているものも含みます)は、auspiceoracle.com/en/method で公開されています。導出をすべて示した、詳しい計算例を3つ紹介しています:出生時刻のテスト。背景となる解説:真太陽時。

何もインストールせずに自分の出生データで試すには:無料の BaZi 計算ツール(真太陽時を適用)。

MCP サーバー

ホステッドエンドポイント(インストール不要): https://auspiceoracle.com/mcp — ステートレスなストリーミング可能 HTTP、認証不要。claude.ai のカスタムコネクター、またはストリーミング可能 HTTP に対応するあらゆる MCP クライアントで利用できます。

{
  "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 — 完全な補正:補正後の時刻、夏時間/経度/均時差の内訳(3つの値の合計は必ず全体の補正量と一致します)、時支、境界までの距離、存在しない時刻の検出。
  • hour_branch — すでに補正済みの時刻について、時支と境界までの距離を判定します。

ホステッドエンドポイントでは、さらに cast_pillars も利用できます — 本番用の Auspice Oracle エンジンが算出する、太陽時で補正された四柱と蔵干、納音、運勢サイクルです(ソースは非公開で、公開済みの手法と同じ規約を使用します)。事実のみを提供し、強弱の判定や解釈は行いません。

BaZi のスキルやエージェントを構築する場合は、命式を算出する前に true_solar_time を呼び出し、補正後の時刻を算出ツールに渡してください。LLM はこの変換をコンテキスト内で実行できません。均時差は三角関数の級数で計算され、夏時間の履歴はモデルの重みではなくデータベースに保存されているためです。

ライブラリ

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/経度による分割で正確に帰属できないことがあります。合計補正は常に実際のオフセットから計算されるため、影響を受けません。

デスクトップ拡張機能(Claude Desktop)

リリースのMCPBバンドルは、このサーバーをワンクリックでインストールできるようパッケージ化しており、チャート作成の全フローも追加されています。

ツール実行場所
true_solar_time、hour_branchこのリポジトリ内のコードを使って、ローカルでオフライン実行
cast_chart、personality_sketch、compose_sketchhttps://auspiceoracle.com/mcp/bazi 上でリモート実行

四柱の算出には本番エンジン(節気の瞬間、運周期の開始日、晩子時の慣例)が必要ですが、これはこのパッケージには含まれていません。そのため、バンドルはこれら3つの呼び出しをHTTPS経由で転送し、結果をそのまま返します。npm run build:mcpb で自分でビルドできます。

同じホスト型エンドポイントは、インストール不要の通常のリモートMCPサーバーとしても利用できます。

claude mcp add --transport http bazi https://auspiceoracle.com/mcp/bazi

プライバシーポリシー

ポリシー全文:https://auspiceoracle.com/en/privacy

  • ローカルツール(true_solar_time、hour_branch)は、どこにもデータを送信しません。ネットワーク通信、テレメトリー、ファイルへの書き込みはありません。
  • リモートツール(cast_chart、personality_sketch、compose_sketch)は、1回の応答を計算するため、指定された出生情報(日付、時計時刻、IANAタイムゾーン、経度、および算出時に運周期の方向を決める性別フラグ)をHTTPS経由で https://auspiceoracle.com/mcp/bazi に送信します。
  • このエンドポイントでは、氏名、メールアドレス、アカウント、認証情報の提供を求めることも、受け付けることもありません。
  • 何も保存されません。このエンドポイントはステートレスで、出生情報や結果を保存せず、トレーニングにも使用しません。不正利用防止のため、標準的なエッジリクエストログ(IP、タイムスタンプ、パス)はCDNに保持されますが、リクエスト本文は記録されません。
  • データが第三者に渡ることはありません。このエンドポイントは外部サービスを呼び出しません。
  • 保持期間:リクエスト内容は保持しません。お問い合わせ先:https://github.com/Shann5/true-solar-time-mcp/issues または auspiceoracle.com のお問い合わせページ。

auspiceoracle.com との関係

これは、Auspice Oracle の背後にあるエンジンから、太陽時のレイヤーを抽出してミラー化したものです。正本はメインエンジンであり、ここにあるゴールデンテストは、このミラーが同じ公開済みの例に準拠するよう固定しています。バグ報告は歓迎しますが、上記の慣例を変更するPRは受け付けません(慣例を分岐させると、公開済みの方法論が事実と異なるものになるためです)。

MIT © Shan Liu

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。