Vedaksha について
Vedakshaは、クンドリーアプリ、パンチャンガカレンダー、AIエージェントの開発者向けのRust製天体暦・ヴェーダ占星術エンジンです。Rust、Python、WebAssembly、MCPのインターフェースを備え、アルゴリズムは一次資料まで追跡できます。
主な機能
- 01出生図とハウスの計算
- 02パンチャンガ、ダシャー、ヴァルガの生成
- 03シャドバラ、アシュタカヴァルガ、ムフルタの計算
- 04Rust、Python、WebAssemblyに対応
- 05複数のインターフェースで天体暦を計算
活用シーン
- 01クンドリーアプリの構築
- 02パンチャンガカレンダーの開発
- 03占星術計算をAIエージェントに接続
- 04日時と場所に基づくチャート生成
MCP 対応
VedakshaはstdioおよびHTTP対応のMCP サーバーを提供し、天体暦計算とヴェーダ占星術の17個のツールをクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
翻訳後に原文が更新されています。最新の内容は原文をご確認ください。
Vedaksha — ヴェーダから見る世界
エージェント型 AI 時代に向けて構築された、クリーンルーム方式の Rust 暦表・ヴェーダ占星術エンジンです。 サブ秒角の惑星精度を実現し、すべてのアルゴリズムの一次資料を追跡でき、あらゆるチャートをプロパティグラフとしてクエリできます。
ウェブサイト · ドキュメント · プレイグラウンド · API リファレンス · ブログ
clean-room · JPL Horizons と平均黄経の差は 0.103″ · 1,147 件のテスト(プッシュごと)+ 24,350 件のオラクル行 · MCP ネイティブ · BUSL-1.1 → Apache 2.0
インストール · クイックスタート · 精度 · 内容 · MCP + プロパティグラフ · 来歴 · ライセンス
インストール
| プラットフォーム | インストール | 備考 |
|---|---|---|
| Rust | cargo add vedaksha | フルパイプライン |
| Python | pip install vedaksha | WebAssembly 経由のエンジン、py3-none-any、Python ≥ 3.9 — Rust ツールチェーンは不要 |
| WASM | npm install vedaksha-wasm | ブラウザーおよびエッジ向け、データファイル不要 |
| MCP | cargo install vedaksha-mcp | stdio + HTTP(ベアラー認証) |
| Docker | docker run -e VEDAKSHA_MCP_TOKEN=… -p 3100:3100 ghcr.io/arthiqlabs/vedaksha-mcp | マルチアーキテクチャ(amd64 + arm64) |
サブ秒角の暦表(VSOP87A、ELP/MPP02、JPL DE440s/DE441)から、ジャナマ・クンダリ(出生図)、パンチャンガ、ダシャー、ナクシャトラ、ヴァルガ、シャドバラ、アシュタカヴァルガ、ムフールタ、トランジット/ゴーチャラを計算します。
flowchart LR
K["JPL DE440s / DE441<br/>SPK kernel, ~31 MB"] --> E
V["VSOP87A + ELP/MPP02<br/>compiled to constants,<br/>no data files"] --> E
E["Ephemeris core<br/>precession · nutation<br/>light-time · ΔT"] --> W["Western<br/>houses · aspects<br/>dignities"]
E --> J["Jyotish<br/>nakshatras · dashas · vargas<br/>panchanga · shadbala · muhurta"]
W --> C["ComputedChart"]
J --> C
C --> G["Property graph<br/>Cypher · SurrealQL<br/>JSON-LD · RAG text"]
C --> M["MCP server<br/>17 tools · stdio + HTTP"]
C --> S["Rust · Python · WASM"]
クイックスタート
from vedaksha import Vedaksha
vk = Vedaksha()
chart = vk.natal_chart(julian_day=2451545.0, latitude=28.6139, longitude=77.2090)
cargo install vedaksha-mcp && vedaksha-mcp # stdio: Claude Desktop, Cursor, VS Code
Rust の例は crates/vedaksha/src/lib.rs にある、コンパイルされる doctest です。
公開インターフェースで使用するユリウス日はすべて UT1 です。TT でも TDB でもありません。 エンジンは力学項の計算用に内部で TT に変換し、地球の自転には UT1 を使用します。これにより、アセンダント、MC、12 のカスプが正しく求められます。TDB のユリウス日を渡すと、ΔT を取り除くのではなく、ΔT 分の回転が加算されます。今日の ΔT ≈ 69 秒では、すべてのカスプで 0.289°(17.3′)のずれになります。例外は生の SPK クエリ(state_vector)のみで、カーネルを直接インデックスし、TDB を受け取ります。
精度
以下の数値は主張にとどまらず、再現可能です。vedaksha-parity は、このエンジンと同じ作者が保守する独立したハーネスです。誰でも独自に用意した参照カーネルを使って実行し、以下の公表値を検証できます。
各数値は、名前付きテストによって出力されます。暦表の値は bash scripts/download_de440s.sh を実行してから、cargo test -p vedaksha-ephem-core --release -- --include-ignored --nocapture を実行すると再現できます。アヤナーンシャの値は cargo test -p vedaksha-astro sidereal から取得でき、同じ一次資料を独立して Python で導出した結果との照合は cargo test -p vedaksha-astro --test ayanamsha_fixture から行えます。
見出しの0.103″が正確に示すもの。 これは平均の見かけの地心黄経残差であり、一般的な位置精度を示す数値ではありません。フィクスチャにはref_latitude、ref_distance、ref_speedも含まれていますが、oracle_comparison.rsではdead_codeとしてマークされており、この数値にはいずれも含まれません。対象はΔTが実測されている時代、1900~2025年のみで、天体ごとに1,535件の比較(10天体合計で15,350件)です。1900~2100年の全期間のグリッドでは平均が0.878″になりますが、その理由はエフェメリスの精度とは無関係です(下記参照)。また、比較対象は物理的な惑星の中心ではなく、惑星系の重心です。これはDE440sカーネルに格納されている値、およびSpkReaderが返す値に合わせたものです。中心を問い合わせると、外惑星では約0.1″の誤ったオフセットが生じます(scripts/generate_horizons_oracle.py)。これは見出しの平均値自体と同程度の大きさです。この3点はmetrics.jsonのaccuracyブロック(quantity、era、targetConvention)にもデータとして公開されているため、サイトではこの段落を誰かが手作業で転記するのではなく、データから表示しています。
SpkReaderとJPL Horizons(DE441)の比較 — oracle_comparison.rs、コミット済みの24,350行(10天体×2,435日付、1900~2100年)。HorizonsはDE441を提供しているため、これは当社のDE440sパイプラインを独立したカーネルと比較するものです。
| 期間 | 比較数 | 平均 | 最大 |
|---|---|---|---|
| 1900~2025年(ΔT実測期間) | 15,350 | 0.103″ | 1.187″(天王星) |
| 1900~2100年(全期間) | 24,350 | 0.878″ | 44.912″(月、2099年) |
2026年より前の比較15,350件のうち、15,349件は1秒角未満です。2025年以降の残差はΔTの予測誤差であり、エフェメリスの誤差ではありません。 Espenak–Meeusによる当社の外挿値とHorizonsのΔTは、2099年には約68秒ずれます。誤差は天体の角速度に比例するため、月(0.64″/秒)では約45″のずれが生じますが、冥王星ではほぼ生じません。2099-02-06時点で、0.03~0.64″/秒の5天体がいずれも同じ66~71秒のオフセットを示します。これは位置の誤差ではなく、時計の差に固有の特徴です。
AnalyticalProviderとJPL Horizonsの比較 — analytical_oracle.rs、1900~2025年:全体平均は0.239″、最悪値は1.896″(海王星)、ELP/MPP02を用いた月の平均は0.169″です。ΔT実測期間の9天体にわたる13,815件の比較(天体ごとに1,535日付)です。metrics.jsonのaccuracy.analyticalブロックを参照してください。
平均値では、プロバイダーを選ぶ前に知っておきたい傾向が隠れてしまうため、天体ごとの値を以下に示します。
| 天体 | 平均″ | 天体 | 平均″ |
|---|---|---|---|
| 太陽 | 0.180 | 木星 | 0.239 |
| 月 | 0.169 | 土星 | 0.251 |
| 水星 | 0.180 | 天王星 | 0.267 |
| 金星 | 0.180 | 海王星 | 0.503 |
| 火星 | 0.178 |
内惑星の値は約0.18″の狭い範囲に収まり、外側に行くほど誤差は単調に大きくなります。
これは打ち切りによるもので、特定の惑星の性質ではなく、級数をどのように打ち切るかに起因します。scripts/generate_vsop87a.pyは、8惑星すべてに一律に適用される、1e-7 AU未満の絶対振幅の項を除外します。土星は水星より強く打ち切られているわけではなく、全惑星の中で最も多い7,530項を、30,046項の中から保持しています。しかし、絶対値による打ち切りでは軌道の大きさに比例した残差が残るため、各天体の角度誤差を位置誤差に換算すると、閾値の9倍(1 AU)、60倍(木星)、116倍(土星)、249倍(天王星)、734倍(海王星)になります。
閾値を引き下げればこの誤差を小さくできますが、その分係数セットが大きくなり、これこそがこのプロバイダーをWASMやエッジ環境で利用可能にしている要素です。外惑星で0.1″未満が必要な場合は、SpkReaderを使用してください。 同じオラクルとの比較では、外惑星は最悪ではなく最良の天体です。木星は0.083″、土星は0.061″で、内惑星は約0.13″です。
2026-08-20 までは、平均 2.06″、最悪 24.22″でした。この README では、その差は VSOP87A が省略された理論であるためだと説明していました。これは誤りであり、私たちの不具合を覆い隠す表現でした。解析プロバイダーは EarthMoonBarycenter に対して VSOP87A の地球中心の級数を返していたため、観測者の位置が 4,671 km ずれていました。また、earth_state は重心基準の月の位置を EMRAT ではなく 1 + EMRAT で割っており、さらに 56.8 km のずれが生じていました。どちらも修正済みです。2つ目の修正によって SPK 経路の値も 0.106″ → 0.103″ に変わりました。
ELP/MPP02 の月 — lunar_horizons.rs:J2000 で 0.015″、西暦 1500~2500 年で 0.020~0.053″。
測定していない項目
- ハウスカスプは、外部の参照データと照合して検証していません。
- どのアヤナムシャも、別の実装と照合して検証していません。これは意図的なものです。 11種類すべてが、章、委員会、提案者自身の論文、星表のいずれかを一次資料として、そこから順方向に導出されています。それぞれの基準値を 1e-9° まで再現し、一次資料にゼロ年が記載されている場合は、その年も再現します。他者の数値との一致は主張していません。他者の数値との比較は、この再導出が覆そうとしているリバースエンジニアリングにあたるためです。詳しくは
docs/audit/2026-08-17-ayanamsha-cleanroom/を参照してください。 - ダシャーとナクシャトラのテストは不変条件テストであり、外部との比較ではありません。BPHS の定数の合計が 120 年になることと、境界が円を隙間なく分割することを検証します。
- シャドバラの2つの要素は部分的な実装であり、その不足はここだけでなくツールの説明にもあります。 スターナ・バラには、5つの下位要素のうち4つ(ウッチャ、オージャユグマ、ケンドラディ、ドレッカナ)が含まれますが、サプタヴァルガジャ・バラは含まれません。サプタヴァルガジャ・バラには、ムーラトリコーナの度数表と、一次資料に基づくパンチャダー・マイトリーの導出が必要ですが、私たちはまだそれらを入手していません。カーラ・バラが対象とするのは、ナトンナタとパクシャのみです。ディグ、チェーシュタ、ナイサルギカ、ドリクの各バラは完全に実装されています。
技術レポート
両方の暦表パイプライン、その測定精度、および各アルゴリズムのクリーンルームでの出典をまとめた完全なレポートはこちらです:docs/paper/main.tex(tectonic が必要です。make -C docs/paper pdf でビルドできます)。
上記の概要をはるかに超える内容で、ほかでは述べていない次の事項も報告しています。
- 第三者による独立した相互検証。JPL DE440 だけとの一致ではなく、異なる機関が提供する2つの国家機関の暦表(JPL DE440 と IMCCE INPOP21a)と照合しています。
- 西暦 1550~2650 年における解析経路の精度。天体ごと、および J2000 からの距離による世紀単位の期間ごとに示しています。比較対象の両方を TT で扱うことで時間スケールの差を比較から取り除き、ΔT の乖離が残差に影響しないようにしています。
- SPK リーダーのコンポーネント単位の検証。同等のカーネルを別の実装で読み込んだ結果と照合し、DAF/SPK パーサーとチェビシェフ評価を、その上に重ねられた視位置のパイプラインから分離して検証しています。
- 再現性に関する方法論上の注記:ビット単位の出力はアーキテクチャに依存します。SIMD 三角関数カーネルが AVX2 では1つのレジスターに、NEON では2つのレジスターに対応するためです。精度は異なりません。どちらもミリ秒角単位まで同一であると測定されています。
- 検証していない項目を明示。ハウスカスプ、真ノード、すべてのアヤナムシャが含まれます。
ステータス:査読を受けておらず、どこにも投稿していません。 プレプリントではなく、技術レポートです。レポートに記載されている測定値はすべて、表紙に記載されたエンジンのバージョンに固有のものです。
含まれる機能
2つのエフェメリスプロバイダー。 SpkReader は JPL DE440s(約31 MB)を読み込み、1秒角未満の精度で計算します。AnalyticalProvider は VSOP87A + ELP/MPP02 を定数にコンパイルするため、データファイルは不要です。WASM、エッジ環境、Cloudflare Workers 向けです。
一次資料に基づくジョーティシュ。 27のナクシャトラ(パダと支配星を含む) · 5つのダシャー体系(ヴィムショッタリー、ヨーギニー、アシュトッタリー、ジャイミニのチャラとナーラーヤナ) · 16のヴァルガすべて(D-1 → D-60) · イシュタ/カシュタ・パラを含む6要素のシャドバラ(一部の2要素は部分対応です。上記を参照) · 11種類のアヤナーンシャ。それぞれ章、恒星、または委員会にたどれます · パンチャンガの5つの要素。ヴァーラは現地の日の出を基準に算出し、ラーフ/グリカ・カーラムは実際の時間帯として扱います · BPHS 第26章に基づく段階的なドリシュティ · 平均ノード、真ノード、振動ノードはいずれも当日の黄道に準拠し、J2000 バリアントは DE441 の OM を0.6″の精度で追跡します(KP のサブロードに対応)。
西洋占星術:解釈ではなく計算。 10種類のハウスシステム、接近/分離運動を伴う主要アスペクト、エッセンシャル・ディグニティ、シナストリー、コンポジットに対応しています。ChartConfig はトロピカルをデフォルトとします。西洋占星術の解釈レイヤーはなく、ジョーティシュの機能範囲との同等性もありません。
クレートは crates.io に同時公開されます:vedaksha(統合クレート、7ロケール) · -math · -ephem-core · -astro · -vedic · -graph · -mcp。
MCP + プロパティグラフ
17個のツールは、単一の tools/list で検出できます。カタログは Rust の定義から生成され、スナップショットテストで固定されているため、コードとのずれが気付かれないまま生じることはありません。
compute_natal_chart · compute_dasha · compute_vargas · compute_karakas · compute_combustion · compute_shadbala · compute_ashtakavarga · compute_transit · compute_gochara · search_transits · search_muhurta · compute_panchanga · compute_drishti · compute_bhavas · compute_synastry · compute_composite · emit_graph
任意のチャートは emit_graph または vedaksha_graph::chart_to_graph でプロパティグラフに変換でき、Cypher、SurrealQL、JSON-LD、JSON、または RAG 埋め込みテキストを出力できます。エージェントはチャートのロジックを再実装する代わりに、「どの惑星が第7ハウスの支配星にアスペクトしているか?」とグラフクエリで尋ねられます。計算自体は型付き構造体を返し、グラフは要求に応じて生成される投影です。
チャートが実際に生成するもの: オントロジーの9種類のノード型のうち4種類(Chart、Planet、Sign、House)と、12種類のエッジ型のうち7種類です。Nakshatra、Pada、Pattern、DashaPeriod、FixedStar は vedaksha_graph::ontology で定義されていますが、必要なデータを持たない ComputedChart からは構築されません。これらはそれぞれ独自の API で計算してください。
VEDAKSHA_MCP_TOKEN=… vedaksha-mcp --http --port 3100
HTTP モードでは、すべての POST に Authorization: Bearer <token> が必要です。また、信頼できるネットワーク向けに --insecure-no-auth を指定しない限り、VEDAKSHA_MCP_TOKEN が設定されていないと起動を拒否します。/health と情報を返す GET は認証なしで利用できます。
クリーンルームでの出典管理
実装済みの各アルゴリズムには、一次論文または論書の名称を示す // Source: ドキュメントコメントが付いています(VSOP87A、ELP/MPP02、IAU 標準、BPHS、ジャイミニ)。2つのサブシステムは、文書化されたファイアウォールの下で一次資料に基づき再導出され、それぞれに独自の監査ディレクトリが付属しています。対象は月理論(2026-05-09)とサイデリアルの機能群(2026-08-17)です。各ディレクトリには、参照した一次資料、プロセス、検索して却下した内容、および値を再導出するジェネレーターが記録されています。そのため、主張を鵜呑みにするのではなく、再実行して検証できます。詳細は DATA_PROVENANCE.md も参照してください。これは BUSL-1.1 のライセンシーが監査できる証拠です。
本番環境での利用
| 製品 | 内容 |
|---|---|
| kundalimcp.com | 完全な計算スイートを備えた、エージェント型 AI Jyotish MCP です。vedaksha-* クレートを直接基盤としています。 |
| kundali.live | 一般ユーザー向けのエンドポイントです。チャット形式の鑑定と、セルフサービスの PDF レポートを提供します。 |
ライセンス
Business Source License 1.1 — SPDX BUSL-1.1。crates.io、PyPI、npm にはこのライセンスとして表示されます。
- 非商用 — 無料です(個人利用、研究、教育、社内ツール)。
- 商用 — 組織ごとに一度だけ、500 ドルです。製品数とシート数は無制限で、永続的に利用できます。ライセンスを取得したバージョンと、それ以降にリリースされるすべてのバージョンが対象となり、リリースごとに追加料金が発生することはありません。購入 →
- 各バージョンのリリースから4年後に、Apache 2.0 に切り替わります。将来適用されるライセンスの
文面は
CHANGE-LICENSE.txtにあります。これは BUSL の用語でいう Change License であり、 現時点で選択できるライセンスではありません。
LICENSE、SECURITY.md、CONTRIBUTING.md、MAINTENANCE.md をご覧ください。
Copyright © 2026 ArthIQ Labs LLC · Business Source License 1.1 (BUSL-1.1) の下でライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。