caelus-mcp 0.4.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/src/server.d.ts +39 -39
- package/dist/src/server.js +19 -4
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
MCP server for the [caelus](https://github.com/heavyblotto/caelus) ephemeris
|
|
4
4
|
engine: seven chart tools over stdio. Computation only — positions, houses,
|
|
5
|
-
aspects with orbs, event search — the model does the interpreting.
|
|
6
|
-
keys,
|
|
7
|
-
package.
|
|
5
|
+
aspects with orbs, event search — the model does the interpreting. It needs
|
|
6
|
+
no API keys, ephemeris files, or network calls; the engine data ships inside
|
|
7
|
+
the package.
|
|
8
8
|
|
|
9
9
|
## Setup
|
|
10
10
|
|
package/dist/src/server.d.ts
CHANGED
|
@@ -15,7 +15,7 @@ import { z } from "zod";
|
|
|
15
15
|
export declare const chartOut: z.ZodObject<{
|
|
16
16
|
utc: z.ZodString;
|
|
17
17
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
18
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
18
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
19
19
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
20
20
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
21
21
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -93,7 +93,7 @@ export declare const chartOut: z.ZodObject<{
|
|
|
93
93
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
94
94
|
orb: number;
|
|
95
95
|
}[];
|
|
96
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
96
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
97
97
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
98
98
|
houses_fallback_reason?: string | undefined;
|
|
99
99
|
}, {
|
|
@@ -119,7 +119,7 @@ export declare const chartOut: z.ZodObject<{
|
|
|
119
119
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
120
120
|
orb: number;
|
|
121
121
|
}[];
|
|
122
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
122
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
123
123
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
124
124
|
houses_fallback_reason?: string | undefined;
|
|
125
125
|
}>;
|
|
@@ -190,7 +190,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
190
190
|
a: z.ZodObject<{
|
|
191
191
|
utc: z.ZodString;
|
|
192
192
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
193
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
193
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
194
194
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
195
195
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
196
196
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -268,7 +268,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
268
268
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
269
269
|
orb: number;
|
|
270
270
|
}[];
|
|
271
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
271
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
272
272
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
273
273
|
houses_fallback_reason?: string | undefined;
|
|
274
274
|
}, {
|
|
@@ -294,14 +294,14 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
294
294
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
295
295
|
orb: number;
|
|
296
296
|
}[];
|
|
297
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
297
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
298
298
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
299
299
|
houses_fallback_reason?: string | undefined;
|
|
300
300
|
}>;
|
|
301
301
|
b: z.ZodObject<{
|
|
302
302
|
utc: z.ZodString;
|
|
303
303
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
304
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
304
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
305
305
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
306
306
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
307
307
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -379,7 +379,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
379
379
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
380
380
|
orb: number;
|
|
381
381
|
}[];
|
|
382
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
382
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
383
383
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
384
384
|
houses_fallback_reason?: string | undefined;
|
|
385
385
|
}, {
|
|
@@ -405,7 +405,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
405
405
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
406
406
|
orb: number;
|
|
407
407
|
}[];
|
|
408
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
408
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
409
409
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
410
410
|
houses_fallback_reason?: string | undefined;
|
|
411
411
|
}>;
|
|
@@ -451,7 +451,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
451
451
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
452
452
|
orb: number;
|
|
453
453
|
}[];
|
|
454
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
454
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
455
455
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
456
456
|
houses_fallback_reason?: string | undefined;
|
|
457
457
|
};
|
|
@@ -478,7 +478,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
478
478
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
479
479
|
orb: number;
|
|
480
480
|
}[];
|
|
481
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
481
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
482
482
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
483
483
|
houses_fallback_reason?: string | undefined;
|
|
484
484
|
};
|
|
@@ -514,7 +514,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
514
514
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
515
515
|
orb: number;
|
|
516
516
|
}[];
|
|
517
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
517
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
518
518
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
519
519
|
houses_fallback_reason?: string | undefined;
|
|
520
520
|
};
|
|
@@ -541,7 +541,7 @@ export declare const synastryOut: z.ZodObject<{
|
|
|
541
541
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
542
542
|
orb: number;
|
|
543
543
|
}[];
|
|
544
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
544
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
545
545
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
546
546
|
houses_fallback_reason?: string | undefined;
|
|
547
547
|
};
|
|
@@ -608,15 +608,15 @@ export declare const skyEventsOut: z.ZodObject<{
|
|
|
608
608
|
end: z.ZodString;
|
|
609
609
|
events: z.ZodArray<z.ZodObject<{
|
|
610
610
|
t: z.ZodString;
|
|
611
|
-
kind: z.ZodEnum<["rise", "set", "mtransit", "itransit", "phase", "station", "crossing"]>;
|
|
611
|
+
kind: z.ZodEnum<["rise", "set", "mtransit", "itransit", "phase", "station", "crossing", "solar_eclipse", "lunar_eclipse"]>;
|
|
612
612
|
detail: z.ZodOptional<z.ZodString>;
|
|
613
613
|
}, "strip", z.ZodTypeAny, {
|
|
614
614
|
t: string;
|
|
615
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
615
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
616
616
|
detail?: string | undefined;
|
|
617
617
|
}, {
|
|
618
618
|
t: string;
|
|
619
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
619
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
620
620
|
detail?: string | undefined;
|
|
621
621
|
}>, "many">;
|
|
622
622
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -624,7 +624,7 @@ export declare const skyEventsOut: z.ZodObject<{
|
|
|
624
624
|
end: string;
|
|
625
625
|
events: {
|
|
626
626
|
t: string;
|
|
627
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
627
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
628
628
|
detail?: string | undefined;
|
|
629
629
|
}[];
|
|
630
630
|
}, {
|
|
@@ -632,7 +632,7 @@ export declare const skyEventsOut: z.ZodObject<{
|
|
|
632
632
|
end: string;
|
|
633
633
|
events: {
|
|
634
634
|
t: string;
|
|
635
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
635
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
636
636
|
detail?: string | undefined;
|
|
637
637
|
}[];
|
|
638
638
|
}>;
|
|
@@ -640,7 +640,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
640
640
|
readonly natal_chart: z.ZodObject<{
|
|
641
641
|
utc: z.ZodString;
|
|
642
642
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
643
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
643
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
644
644
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
645
645
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
646
646
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -718,7 +718,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
718
718
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
719
719
|
orb: number;
|
|
720
720
|
}[];
|
|
721
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
721
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
722
722
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
723
723
|
houses_fallback_reason?: string | undefined;
|
|
724
724
|
}, {
|
|
@@ -744,14 +744,14 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
744
744
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
745
745
|
orb: number;
|
|
746
746
|
}[];
|
|
747
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
747
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
748
748
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
749
749
|
houses_fallback_reason?: string | undefined;
|
|
750
750
|
}>;
|
|
751
751
|
readonly current_sky: z.ZodObject<{
|
|
752
752
|
utc: z.ZodString;
|
|
753
753
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
754
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
754
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
755
755
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
756
756
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
757
757
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -829,7 +829,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
829
829
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
830
830
|
orb: number;
|
|
831
831
|
}[];
|
|
832
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
832
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
833
833
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
834
834
|
houses_fallback_reason?: string | undefined;
|
|
835
835
|
}, {
|
|
@@ -855,7 +855,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
855
855
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
856
856
|
orb: number;
|
|
857
857
|
}[];
|
|
858
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
858
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
859
859
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
860
860
|
houses_fallback_reason?: string | undefined;
|
|
861
861
|
}>;
|
|
@@ -926,7 +926,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
926
926
|
a: z.ZodObject<{
|
|
927
927
|
utc: z.ZodString;
|
|
928
928
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
929
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
929
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
930
930
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
931
931
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
932
932
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -1004,7 +1004,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1004
1004
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1005
1005
|
orb: number;
|
|
1006
1006
|
}[];
|
|
1007
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1007
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1008
1008
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1009
1009
|
houses_fallback_reason?: string | undefined;
|
|
1010
1010
|
}, {
|
|
@@ -1030,14 +1030,14 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1030
1030
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1031
1031
|
orb: number;
|
|
1032
1032
|
}[];
|
|
1033
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1033
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1034
1034
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1035
1035
|
houses_fallback_reason?: string | undefined;
|
|
1036
1036
|
}>;
|
|
1037
1037
|
b: z.ZodObject<{
|
|
1038
1038
|
utc: z.ZodString;
|
|
1039
1039
|
houses: z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>;
|
|
1040
|
-
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar"]>>;
|
|
1040
|
+
zodiac: z.ZodOptional<z.ZodEnum<["tropical", "sidereal:lahiri", "sidereal:fagan_bradley", "sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar", "sidereal:galcent_0sag", "sidereal:true_citra"]>>;
|
|
1041
1041
|
houses_requested: z.ZodOptional<z.ZodEnum<["placidus", "whole_sign", "equal", "porphyry", "koch", "regiomontanus", "campanus", "alcabitius", "morinus", "meridian", "polich_page", "vehlow"]>>;
|
|
1042
1042
|
houses_fallback_reason: z.ZodOptional<z.ZodString>;
|
|
1043
1043
|
bodies: z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -1115,7 +1115,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1115
1115
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1116
1116
|
orb: number;
|
|
1117
1117
|
}[];
|
|
1118
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1118
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1119
1119
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1120
1120
|
houses_fallback_reason?: string | undefined;
|
|
1121
1121
|
}, {
|
|
@@ -1141,7 +1141,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1141
1141
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1142
1142
|
orb: number;
|
|
1143
1143
|
}[];
|
|
1144
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1144
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1145
1145
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1146
1146
|
houses_fallback_reason?: string | undefined;
|
|
1147
1147
|
}>;
|
|
@@ -1187,7 +1187,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1187
1187
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1188
1188
|
orb: number;
|
|
1189
1189
|
}[];
|
|
1190
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1190
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1191
1191
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1192
1192
|
houses_fallback_reason?: string | undefined;
|
|
1193
1193
|
};
|
|
@@ -1214,7 +1214,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1214
1214
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1215
1215
|
orb: number;
|
|
1216
1216
|
}[];
|
|
1217
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1217
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1218
1218
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1219
1219
|
houses_fallback_reason?: string | undefined;
|
|
1220
1220
|
};
|
|
@@ -1250,7 +1250,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1250
1250
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1251
1251
|
orb: number;
|
|
1252
1252
|
}[];
|
|
1253
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1253
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1254
1254
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1255
1255
|
houses_fallback_reason?: string | undefined;
|
|
1256
1256
|
};
|
|
@@ -1277,7 +1277,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1277
1277
|
aspect: "conjunction" | "sextile" | "square" | "trine" | "opposition";
|
|
1278
1278
|
orb: number;
|
|
1279
1279
|
}[];
|
|
1280
|
-
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | undefined;
|
|
1280
|
+
zodiac?: "tropical" | "sidereal:lahiri" | "sidereal:fagan_bradley" | "sidereal:krishnamurti" | "sidereal:raman" | "sidereal:yukteshwar" | "sidereal:galcent_0sag" | "sidereal:true_citra" | undefined;
|
|
1281
1281
|
houses_requested?: "placidus" | "whole_sign" | "equal" | "porphyry" | "koch" | "regiomontanus" | "campanus" | "alcabitius" | "morinus" | "meridian" | "polich_page" | "vehlow" | undefined;
|
|
1282
1282
|
houses_fallback_reason?: string | undefined;
|
|
1283
1283
|
};
|
|
@@ -1344,15 +1344,15 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1344
1344
|
end: z.ZodString;
|
|
1345
1345
|
events: z.ZodArray<z.ZodObject<{
|
|
1346
1346
|
t: z.ZodString;
|
|
1347
|
-
kind: z.ZodEnum<["rise", "set", "mtransit", "itransit", "phase", "station", "crossing"]>;
|
|
1347
|
+
kind: z.ZodEnum<["rise", "set", "mtransit", "itransit", "phase", "station", "crossing", "solar_eclipse", "lunar_eclipse"]>;
|
|
1348
1348
|
detail: z.ZodOptional<z.ZodString>;
|
|
1349
1349
|
}, "strip", z.ZodTypeAny, {
|
|
1350
1350
|
t: string;
|
|
1351
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
1351
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
1352
1352
|
detail?: string | undefined;
|
|
1353
1353
|
}, {
|
|
1354
1354
|
t: string;
|
|
1355
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
1355
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
1356
1356
|
detail?: string | undefined;
|
|
1357
1357
|
}>, "many">;
|
|
1358
1358
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -1360,7 +1360,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1360
1360
|
end: string;
|
|
1361
1361
|
events: {
|
|
1362
1362
|
t: string;
|
|
1363
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
1363
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
1364
1364
|
detail?: string | undefined;
|
|
1365
1365
|
}[];
|
|
1366
1366
|
}, {
|
|
@@ -1368,7 +1368,7 @@ export declare const OUTPUT_SCHEMAS: {
|
|
|
1368
1368
|
end: string;
|
|
1369
1369
|
events: {
|
|
1370
1370
|
t: string;
|
|
1371
|
-
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing";
|
|
1371
|
+
kind: "set" | "rise" | "mtransit" | "itransit" | "phase" | "station" | "crossing" | "solar_eclipse" | "lunar_eclipse";
|
|
1372
1372
|
detail?: string | undefined;
|
|
1373
1373
|
}[];
|
|
1374
1374
|
}>;
|
package/dist/src/server.js
CHANGED
|
@@ -17,7 +17,7 @@ import { dirname, join } from "node:path";
|
|
|
17
17
|
import { fileURLToPath } from "node:url";
|
|
18
18
|
import { createRequire } from "node:module";
|
|
19
19
|
import { realpathSync } from "node:fs";
|
|
20
|
-
import { Engine, BODIES, julianDay, mod, riseSet, crossings, lunarPhases, stations, } from "caelus";
|
|
20
|
+
import { Engine, BODIES, julianDay, mod, riseSet, crossings, lunarPhases, stations, lunarEclipses, solarEclipses, } from "caelus";
|
|
21
21
|
import { loadNodeData } from "caelus/node";
|
|
22
22
|
const require = createRequire(import.meta.url);
|
|
23
23
|
const VERSION = require("caelus-mcp/package.json").version;
|
|
@@ -46,6 +46,7 @@ const houseSys = z.enum(HOUSE_SYSTEMS).default("placidus");
|
|
|
46
46
|
const ZODIACS = [
|
|
47
47
|
"tropical", "sidereal:lahiri", "sidereal:fagan_bradley",
|
|
48
48
|
"sidereal:krishnamurti", "sidereal:raman", "sidereal:yukteshwar",
|
|
49
|
+
"sidereal:galcent_0sag", "sidereal:true_citra",
|
|
49
50
|
];
|
|
50
51
|
const zodiacSchema = z.enum(ZODIACS).default("tropical")
|
|
51
52
|
.describe("tropical (default) or sidereal:<ayanamsa>");
|
|
@@ -141,7 +142,8 @@ export const skyEventsOut = z.object({
|
|
|
141
142
|
end: z.string(),
|
|
142
143
|
events: z.array(z.object({
|
|
143
144
|
t: z.string(),
|
|
144
|
-
kind: z.enum(["rise", "set", "mtransit", "itransit", "phase", "station",
|
|
145
|
+
kind: z.enum(["rise", "set", "mtransit", "itransit", "phase", "station",
|
|
146
|
+
"crossing", "solar_eclipse", "lunar_eclipse"]),
|
|
145
147
|
detail: z.string().optional(),
|
|
146
148
|
})),
|
|
147
149
|
});
|
|
@@ -349,11 +351,12 @@ export function buildServer() {
|
|
|
349
351
|
return text({ date: date.slice(0, 10), lat, lon, asc_sign_changes: boundaries, grid });
|
|
350
352
|
});
|
|
351
353
|
server.registerTool("sky_events", {
|
|
352
|
-
description: "Sky events in a UTC date range: rise/set/meridian transits (need lat+lon+body), lunar phases (new/quarters/full), stations (body turns retrograde/direct; needs body), zodiac degree crossings (needs body + target_lon). Times to the second vs Swiss Ephemeris (stations to ~1 min: ill-conditioned by nature). Range <= 370 days.",
|
|
354
|
+
description: "Sky events in a UTC date range: rise/set/meridian transits (need lat+lon+body), lunar phases (new/quarters/full), solar and lunar eclipses (global circumstances: type, magnitude, gamma), stations (body turns retrograde/direct; needs body), zodiac degree crossings (needs body + target_lon). Times to the second vs Swiss Ephemeris (stations to ~1 min: ill-conditioned by nature). Range <= 370 days.",
|
|
353
355
|
inputSchema: {
|
|
354
356
|
start: z.string().describe("UTC ISO start date (convert from local first)"),
|
|
355
357
|
end: z.string().describe("UTC ISO end date; range <= 370 days"),
|
|
356
|
-
kinds: z.array(z.enum(["rise", "set", "mtransit", "itransit", "phase",
|
|
358
|
+
kinds: z.array(z.enum(["rise", "set", "mtransit", "itransit", "phase",
|
|
359
|
+
"station", "crossing", "solar_eclipse", "lunar_eclipse"]))
|
|
357
360
|
.min(1).describe("Event kinds to include"),
|
|
358
361
|
body: z.enum(BODIES).optional()
|
|
359
362
|
.describe("Required for rise/set/transit/station/crossing"),
|
|
@@ -398,6 +401,18 @@ export function buildServer() {
|
|
|
398
401
|
events.push({ t: iso(t), kind: "station", detail: dir });
|
|
399
402
|
}
|
|
400
403
|
}
|
|
404
|
+
if (kinds.includes("lunar_eclipse")) {
|
|
405
|
+
for (const e of lunarEclipses(engine, jd0, jd1)) {
|
|
406
|
+
events.push({ t: iso(e.tMax), kind: "lunar_eclipse",
|
|
407
|
+
detail: `${e.type}, mag ${e.magUmbral > 0 ? e.magUmbral.toFixed(2) : e.magPenumbral.toFixed(2) + " penumbral"}` });
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
if (kinds.includes("solar_eclipse")) {
|
|
411
|
+
for (const e of solarEclipses(engine, jd0, jd1)) {
|
|
412
|
+
events.push({ t: iso(e.tMax), kind: "solar_eclipse",
|
|
413
|
+
detail: `${e.type}, gamma ${e.gamma.toFixed(2)}` });
|
|
414
|
+
}
|
|
415
|
+
}
|
|
401
416
|
if (kinds.includes("crossing")) {
|
|
402
417
|
if (body === undefined || target_lon === undefined) {
|
|
403
418
|
throw new Error("crossing needs body and target_lon");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "caelus-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "MCP server for caelus chart computation.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"dependencies": {
|
|
15
15
|
"@modelcontextprotocol/sdk": "^1.12.0",
|
|
16
16
|
"zod": "^3.24.0",
|
|
17
|
-
"caelus": "^0.
|
|
17
|
+
"caelus": "^0.5.0"
|
|
18
18
|
},
|
|
19
19
|
"devDependencies": {
|
|
20
20
|
"ajv": "^8.17.1"
|