@openephemeris/mcp-server 4.17.0 → 4.19.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.
Files changed (47) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/README.md +10 -10
  3. package/dist/backend/client.d.ts +57 -1
  4. package/dist/backend/client.js +125 -15
  5. package/dist/index.js +8 -110
  6. package/dist/prompts.js +26 -24
  7. package/dist/server-sse.d.ts +18 -0
  8. package/dist/server-sse.js +48 -120
  9. package/dist/tools/apps/_render-token.d.ts +34 -0
  10. package/dist/tools/apps/_render-token.js +50 -0
  11. package/dist/tools/apps/bazi-app.d.ts +1 -1
  12. package/dist/tools/apps/bazi-app.js +39 -14
  13. package/dist/tools/apps/bi-wheel-app.d.ts +10 -3
  14. package/dist/tools/apps/bi-wheel-app.js +79 -119
  15. package/dist/tools/apps/bodygraph-app.d.ts +7 -4
  16. package/dist/tools/apps/bodygraph-app.js +101 -46
  17. package/dist/tools/apps/chart-wheel-app.d.ts +1 -1
  18. package/dist/tools/apps/chart-wheel-app.js +59 -18
  19. package/dist/tools/apps/location-tools.js +10 -3
  20. package/dist/tools/apps/moon-phase-app.d.ts +1 -1
  21. package/dist/tools/apps/moon-phase-app.js +13 -4
  22. package/dist/tools/apps/transit-timeline-app.d.ts +1 -1
  23. package/dist/tools/apps/transit-timeline-app.js +6 -6
  24. package/dist/tools/apps/ui-resource.d.ts +43 -0
  25. package/dist/tools/apps/ui-resource.js +66 -0
  26. package/dist/tools/apps/ui-resources.d.ts +22 -0
  27. package/dist/tools/apps/ui-resources.js +105 -0
  28. package/dist/tools/apps/vedic-chart-app.d.ts +1 -1
  29. package/dist/tools/apps/vedic-chart-app.js +13 -3
  30. package/dist/tools/datetime-historical.js +7 -2
  31. package/dist/tools/datetime.js +2 -1
  32. package/dist/tools/dev.js +7 -6
  33. package/dist/tools/specialized/electional.js +4 -3
  34. package/dist/tools/specialized/ephemeris_extended.js +19 -4
  35. package/dist/tools/specialized/hd_group.js +2 -2
  36. package/dist/tools/specialized/moon.d.ts +1 -1
  37. package/dist/tools/specialized/moon.js +51 -43
  38. package/dist/tools/specialized/progressed.js +2 -25
  39. package/dist/tools/specialized/transits.js +5 -5
  40. package/dist/ui/bazi.html +1199 -1161
  41. package/dist/ui/bi-wheel.html +573 -504
  42. package/dist/ui/bodygraph.html +437 -337
  43. package/dist/ui/chart-wheel.html +654 -584
  44. package/dist/ui/moon-phase.html +190 -155
  45. package/dist/ui/transit-timeline.html +865 -830
  46. package/dist/ui/vedic-chart.html +971 -934
  47. package/package.json +2 -1
@@ -1,6 +1,6 @@
1
1
  import { registerTool, validateRequired } from "../index.js";
2
2
  import { getActiveClient } from "../../backend/client.js";
3
- import { OUTPUT_SCHEMA_IMAGE_AND_JSON } from "../output-schemas.js";
3
+ import { OUTPUT_SCHEMA_JSON } from "../output-schemas.js";
4
4
  import { DATETIME_DESC, TIMEZONE_PROPERTY, WINDOW_DATE_DESC, assertZonedDatetime } from "../datetime.js";
5
5
  registerTool({
6
6
  name: "ephemeris_progressed_chart",
@@ -44,26 +44,11 @@ registerTool({
44
44
  type: "boolean",
45
45
  description: "Whether to include aspect grid in the response. Default false.",
46
46
  },
47
- include_visual: {
48
- type: "boolean",
49
- description: "When true, renders the progressed chart wheel as an SVG and embeds it in the response. " +
50
- "The chart image will display in the conversation alongside the data. " +
51
- "Costs 2 additional credits on top of the base call cost.",
52
- },
53
- visual_config: {
54
- type: "object",
55
- description: "Optional rendering preferences (only used when include_visual=true).",
56
- properties: {
57
- theme: { type: "string", enum: ["light", "dark"], description: "Color theme. Default: light." },
58
- size: { type: "number", description: "Canvas size in pixels, 200–4000. Default: 800." },
59
- },
60
- additionalProperties: false,
61
- },
62
47
  },
63
48
  required: ["birth_datetime", "birth_latitude", "birth_longitude", "target_datetime"],
64
49
  additionalProperties: false,
65
50
  },
66
- outputSchema: OUTPUT_SCHEMA_IMAGE_AND_JSON,
51
+ outputSchema: OUTPUT_SCHEMA_JSON,
67
52
  annotations: { title: "Progressed Chart", readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false },
68
53
  handler: async (args) => {
69
54
  validateRequired(args, ["birth_datetime", "birth_latitude", "birth_longitude", "target_datetime"]);
@@ -91,14 +76,6 @@ registerTool({
91
76
  if (args.include_aspects != null) {
92
77
  body.options = { include_aspects: args.include_aspects };
93
78
  }
94
- if (args.include_visual) {
95
- body.include_visual = true;
96
- body.visual_config = {
97
- format: "svg",
98
- theme: args.visual_config?.theme || "light",
99
- size: args.visual_config?.size || 800,
100
- };
101
- }
102
79
  return await getActiveClient().post("/ephemeris/progressed", body);
103
80
  },
104
81
  });
@@ -11,11 +11,11 @@ registerTool({
11
11
  "ASPECT ANGLES (aspect_angle): 0 = conjunction/return (default), 180 = opposition, 90 = square, " +
12
12
  "120 = trine. Saturn return → transiting_planets=['saturn'], natal_points=['saturn'], " +
13
13
  "aspect_angle=0.\n" +
14
- "EFFICIENCY: always pass transiting_planets and natal_points — omitting both sweeps all outer " +
15
- "planets against all core points and is slow. DEFAULT natal_points: sun, moon, mercury, venus, " +
16
- "mars, jupiter, saturn.\n" +
17
- "SEARCH RANGE LIMITS: Explorer/PayG → 1 year; Pro → 5 years; Startup → 10 years.\n" +
18
- "CREDIT COST: 6 credits per call (natal chart + search).\n\n" +
14
+ "EFFICIENCY: always pass transiting_planets and natal_points (omitting both is slow). DEFAULT " +
15
+ "natal_points: sun, moon, mercury, venus, mars, jupiter, saturn.\n" +
16
+ "MAX SPAN: Explorer/PayG 1y, Pro 5y, Startup 10y, Scale 40y (longer = 400).\n" +
17
+ "CREDIT COST: 1 + span price: ≤1y 5, ≤3y 10, ≤5y 15, ≤10y 25, ≤20y 40, ≤40y 70. truncated:true = " +
18
+ "partial; re-call from truncation.resume_from.\n\n" +
19
19
  "Do not use when the user should SEE a forecast — use explore_transit_timeline; for the sky today " +
20
20
  "with no birth data use electional_moment_analysis; for retrograde dates use " +
21
21
  "electional_station_tracker.",