Kaalshodh — Indian astronomy time machine

Observatory-grade Indian astronomy, years -5000..+5000: positions, eclipses, panchang date search.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
70%
命名质量
100%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~3,404token 数(工具定义)
~1.5 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 2.66%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "kaalshodh": {
      "url": "https://kaalshodh.com/mcp"
    }
  }
}

远程端点

https://kaalshodh.com/mcpstreamable-http

它能做什么

工具清单

工具(5)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢get_astro_events(start_date, end_date, ayanamsa, grah, event_types)

Return precomputed astronomical events between start_date and end_date — any range within years -5000..+5000 (eclipses -1999..3000), instant. Events are global (location-independent) and served from binary-searched lookup tables — no live ephemeris computation. Example questions: "planetary events this month", "solar eclipses in the 12th century", "when was Shani retrograde in 1500 BCE?", "adhik maas years this decade". Ritu/ayana changes are Sayan sankrantis: Surya entering Meena=Vasanta, Vrishabha=Grishma, Karka=Varsha (=Dakshinayan start, = solstice), Kanya=Sharada, Vrishchika=Hemanta, Makara=Shishira (=Uttarayan start, = solstice) — query event_types=["sankranti"] with ayanamsa="Sayan". Args: start_date: Start date inclusive, YYYY-MM-DD (e.g. "2026-01-01"); negative years allowed (e.g. "-3101-01-01") end_date: End date inclusive, YYYY-MM-DD (e.g. "2026-12-31") ayanamsa: "Lahiri" (Vedic sidereal, default) or "Sayan" (tropical/Western) grah: Optional planet filter. One of: Surya, Chandra, Mangala, Budha, Guru, Shukra, Shani, Rahu, Ketu event_types: Optional list of event type filters. Valid values: "transit" – Mangala..Ketu change rashi (NOT Surya/Chandra) "sankranti" – Surya changes rashi (~monthly) "moon_transit" – Chandra changes rashi (~monthly) "full_moon" – Purnima (Moon at 180° elongation) "new_moon" – Amavasya (Moon at 0° elongation) "retrograde_start" – planet turns retrograde "retrograde_end" – planet resumes direct motion "equinox" – Vernal or Autumnal equinox (Sayan Surya) "solstice" – Summer or Winter solstice (Sayan Surya) "asta_start" – planet enters combust zone (Grah Asta) "asta_end" – planet exits combust zone (Uday) "solar_eclipse" – solar eclipse (catalog, years -1999..3000) "lunar_eclipse" – lunar eclipse (catalog, years -1999..3000) "kaal_sarp" – Kaal Sarp window (interval) "adhik_maas" – intercalary Hindu month (interval) "kshay_maas" – lost Hindu month (interval) "kumbh_mela" – Kumbh Mela window (interval) The max range is set by the densest requested type: 3 years by default, up to 1000 years for sparse-only queries (kumbh, maas). Interval events also carry end_time, duration_days, and type-specific details. Returns: Dict with keys: start_date, end_date, ayanamsa, count, events (list). Each event has: time (UTC ISO), event_type, grah, from, to, and (for intervals) end_time, duration_days, plus a details dict.

输入模式

{
  "type": "object",
  "properties": {
    "start_date": {
      "title": "Start Date",
      "type": "string"
    },
    "end_date": {
      "title": "End Date",
      "type": "string"
    },
    "ayanamsa": {
      "default": "Lahiri",
      "title": "Ayanamsa",
      "type": "string"
    },
    "grah": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Grah"
    },
    "event_types": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Event Types"
    }
  },
  "required": [
    "start_date",
    "end_date"
  ],
  "title": "get_astro_eventsArguments"
}
🟢get_nearest_event(event_type, from_date, direction, ayanamsa, grah, ...)

Return the nearest occurrence of one event type before or after a date — walks outward from any date in years -5000..+5000, instant. Ideal for questions like "when is the next Kumbh Mela?", "when does Guru go retrograde next?", "when is Makara Sankranti?" or "when was the last total solar eclipse before 1500 CE?" without scanning a whole range. Args: event_type: One of the values listed in get_astro_events (e.g. "kumbh_mela", "solar_eclipse", "adhik_maas", "sankranti"). from_date: Reference date, YYYY-MM-DD (BC years like "-0500-01-01" allowed). direction: "next" (first after from_date) or "prev" (last before). ayanamsa: "Lahiri" (default) or "Sayan". grah: Optional grah filter for grah-specific event types. location: Optional Kumbh Mela location (Haridwar/Prayagraj/Ujjain/Nashik). Returns: Dict with event_type, direction, from_date, ayanamsa, valid_range, and `event` (null if the reference date is outside the data range).

输入模式

{
  "type": "object",
  "properties": {
    "event_type": {
      "title": "Event Type",
      "type": "string"
    },
    "from_date": {
      "title": "From Date",
      "type": "string"
    },
    "direction": {
      "default": "next",
      "title": "Direction",
      "type": "string"
    },
    "ayanamsa": {
      "default": "Lahiri",
      "title": "Ayanamsa",
      "type": "string"
    },
    "grah": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Grah"
    },
    "location": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Location"
    }
  },
  "required": [
    "event_type",
    "from_date"
  ],
  "title": "get_nearest_eventArguments"
}
🟢get_planetary_positions(time, ayanamsa, grah)

Return the rashi (zodiac sign) and retrograde status of the 9 grahas at any instant in years -5000..+5000, plus the paksha (lunar fortnight). Served from precomputed lookup tables — O(log n), instant even for "where was Shani on this day in 3102 BCE?". Example questions: "which planets are retrograde right now?", "what sign was Guru in when I was born?", "sky snapshot for 500 CE". Args: time: ISO 8601 UTC datetime (e.g. "2026-03-22T12:00:00Z"). Negative years allowed (e.g. "-3101-02-18T00:00:00Z"). Defaults to now. ayanamsa: "Lahiri" (Vedic sidereal, default) or "Sayan" (tropical). grah: Optional single planet (Surya, Chandra, Mangala, Budha, Guru, Shukra, Shani, Rahu, Ketu) — returns just that one. Returns: Dict with time, ayanamsa, paksha (Shukla/Krishna), and grahas mapping each planet to its rashi name and retrograde status (or the single grah's status when `grah` is given).

输入模式

{
  "type": "object",
  "properties": {
    "time": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Time"
    },
    "ayanamsa": {
      "default": "Lahiri",
      "title": "Ayanamsa",
      "type": "string"
    },
    "grah": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Grah"
    }
  },
  "title": "get_planetary_positionsArguments"
}
🟢find_matching_dates(start_date, end_date, tithi, paksha, nakshatra, ...)

Search up to 10,000 years (-5000..+5000) for every date whose sunrise panchang matches the given constraints — instant, from precomputed tables. This answers questions no LLM can: dating inscriptions and historical events, Hindu→Gregorian conversion, recurrence questions. Example questions: - "An inscription says Kartika Shukla 5, Thursday, in the 1200s CE — which dates fit?" → masa=Kartika, paksha=Shukla, tithi=5, vaar=Thursday, range 1200..1300. - "Convert Vikram Samvat 1680 Kartik Shukla 5 to a Gregorian date" → same constraints over the matching Gregorian years (VS ≈ year+57); check vikram_samvat in the results. - "When does my janma-tithi (Shravana Krishna Ashtami) fall in 2027?" - "Which years this century does Diwali (Kartika Amavasya) fall on a Sunday?" - "Full moon in Chitra nakshatra in the 5th century BCE" → tithi=Purnima, nakshatra=Chitra, range -0500..-0400. Give at least one of tithi/nakshatra/masa. All names fuzzy-match ("Ekadashi", "ekadasi", or the number 11 all work). Args: start_date, end_date: YYYY-MM-DD; negative years allowed ("-0500-01-01"). Wide ranges are fine — results are capped. tithi: Name or number 1..30 (1..15 Shukla, 16..30 Krishna; Purnima=15, Amavasya=30). A bare name like "Ekadashi" matches both pakshas unless paksha is given. paksha: "Shukla" (waxing) or "Krishna" (waning). nakshatra: Name or number 1..27 (Ashwini=1 .. Revati=27). This is the MOON's nakshatra at sunrise. masa: Amavasyant Hindu month name or number 1..12 (Chaitra=1 .. Phalguna=12). vaar: Weekday — English ("Thursday") or Vedic ("Guruvara"). tz_offset_hours: Local offset for civil-day assignment (default 5.5 = India). max_results: Cap (≤200); response flags truncation. Returns matched dates each with its full sunrise panchang (tithi, nakshatra, masa with adhik flag, vikram samvat, weekday). Ayanamsa is Lahiri. Dates are proleptic Gregorian, astronomical year numbering. For an app-exact panchang of any matched date, certify it with the HinduCalendar MCP server's get_panchang.

输入模式

{
  "type": "object",
  "properties": {
    "start_date": {
      "title": "Start Date",
      "type": "string"
    },
    "end_date": {
      "title": "End Date",
      "type": "string"
    },
    "tithi": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Tithi"
    },
    "paksha": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Paksha"
    },
    "nakshatra": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Nakshatra"
    },
    "masa": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Masa"
    },
    "vaar": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Vaar"
    },
    "tz_offset_hours": {
      "default": 5.5,
      "title": "Tz Offset Hours",
      "type": "number"
    },
    "max_results": {
      "default": 50,
      "title": "Max Results",
      "type": "integer"
    }
  },
  "required": [
    "start_date",
    "end_date"
  ],
  "title": "find_matching_datesArguments"
}
🟢find_copresence(grahas, start_date, end_date, rashi, ayanamsa, ...)

Find every window when the given planets occupy the same rashi (sign) simultaneously — conjunction-class questions over ±5000 years, instant. Example questions: "when are Guru and Shani next together in Kumbha?" (the ~60-year social-cycle conjunction), "when were Guru, Shani and Mangala last in one sign?", "were all planets really in one rashi at the Kali Yuga epoch (Feb 3102 BCE)?", "great conjunctions in the 1st millennium". Resolution is the rashi (30°) — for exact-degree conjunctions treat these windows as candidates. Including Chandra gives many short (~2 day) windows; omit it for long-period questions. Args: grahas: Two or more of: Surya, Chandra, Mangala, Budha, Guru, Shukra, Shani, Rahu, Ketu. start_date, end_date: YYYY-MM-DD, negative years allowed. rashi: Optional sign filter — Vedic (Mesh..Meen) or western (Aries..Pisces) name, or 1..12. Omit = any shared sign. ayanamsa: "Lahiri" (default) or "Sayan". max_results: Cap (≤100); response flags truncation.

输入模式

{
  "type": "object",
  "properties": {
    "grahas": {
      "items": {
        "type": "string"
      },
      "title": "Grahas",
      "type": "array"
    },
    "start_date": {
      "title": "Start Date",
      "type": "string"
    },
    "end_date": {
      "title": "End Date",
      "type": "string"
    },
    "rashi": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Rashi"
    },
    "ayanamsa": {
      "default": "Lahiri",
      "title": "Ayanamsa",
      "type": "string"
    },
    "max_results": {
      "default": 50,
      "title": "Max Results",
      "type": "integer"
    }
  },
  "required": [
    "grahas",
    "start_date",
    "end_date"
  ],
  "title": "find_copresenceArguments"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本5 个工具
已验证未记录版本5 个工具