返回 MCP 目录
public公开dns本地运行

zmanim-mcp-server

一个基于python-zmanim库的MCP服务器,用于计算全球任意地点的犹太教祈祷时间(Zmanim),支持多种哈拉卡观点和输出格式。

article

README

🚀 Zmanim MCP Server

Zmanim MCP Server是一个全面的MCP服务器,用于计算犹太祈祷时间(zmanim)。它借助python - zmanim库,能够为全球任意地点计算各类犹太祈祷时间和天文时间。

🚀 快速开始

此MCP服务器提供了计算世界各地犹太祈祷时间和天文时间的工具。它利用python - zmanim库(KosherJava项目的Python移植版本),基于NOAA算法实现精确的天文计算。

✨ 主要特性

可用工具

  1. zmanim_get_sunrise_sunset - 获取日出和日落时间
  2. zmanim_get_shema_times - 获取晨祷经文(Shema)的最晚诵读时间(依据GR"A和MG"A观点)
  3. zmanim_get_tefila_times - 获取晨祷(Shacharis)的最晚时间(依据GR"A和MG"A观点)
  4. zmanim_get_mincha_times - 获取下午祈祷时间,包括大祈祷时间(Mincha Gedola)、小祈祷时间(Mincha Ketana)和祈祷间隔时间(Plag HaMincha)
  5. zmanim_get_shabbat_times - 获取安息日蜡烛点燃和哈夫达拉(Havdalah)时间
  6. zmanim_get_daily_times - 获取所有每日祈祷时间的综合信息

关键特性

  • ✅ 支持多种犹太律法观点(GR"A、MG"A)
  • ✅ 基于NOAA的精确天文计算
  • ✅ 支持任意经纬度的全球地点
  • ✅ 支持时区感知计算
  • ✅ 可选日期指定(默认今天)
  • ✅ 多种输出格式(Markdown和JSON)
  • ✅ 可自定义蜡烛点燃时间偏移量
  • ✅ 全面的错误处理

📦 安装指南

通过PyPI(推荐)

# 用于Claude Desktop或其他MCP客户端
uvx zmanim-mcp-server

Claude Desktop配置

添加到claude_desktop_config.json

{
  "mcpServers": {
    "zmanim": {
      "command": "uvx",
      "args": ["zmanim-mcp-server"]
    }
  }
}

💻 使用示例

基础用法

获取日出和日落时间

获取纽约市今天的日出和日落时间:
- 地点:纽约,纽约州
- 纬度:40.7128
- 经度:-74.0060
- 时区:America/New_York

获取晨祷经文(Shema)的最晚诵读时间

在耶路撒冷,我最晚什么时候可以诵读晨祷经文(Shema)?
- 地点:耶路撒冷
- 纬度:31.7683
- 经度:35.2137
- 时区:Asia/Jerusalem

获取安息日时间

获取芝加哥本周五的安息日蜡烛点燃和哈夫达拉(Havdalah)时间:
- 地点:芝加哥,伊利诺伊州
- 纬度:41.8781
- 经度:-87.6298
- 时区:America/Chicago
- 蜡烛点燃时间偏移量:18分钟(可自定义)

获取完整的每日祈祷时间表

给我伦敦今天的所有祈祷时间:
- 地点:伦敦
- 纬度:51.5074
- 经度:-0.1278
- 时区:Europe/London

📚 详细文档

犹太祈祷时间解释

早晨时间

  • Alos HaShachar(黎明):日出前72分钟的第一缕光线
  • Sunrise(Hanetz HaChama):太阳升起在地平线之上的时间
  • Sof Zman Krias Shema:晨祷经文(Shema)的最晚诵读时间
    • GR"A:日出后3小时
    • MG"A:从黎明(日出前72分钟)起3个临时小时(通常更早)
  • Sof Zman Tefila:晨祷(Shacharis)的最晚时间
    • GR"A:日出后4小时
    • MG"A:从黎明起4个临时小时(通常更早)

下午时间

  • Chatzos:太阳正午,日出和日落的中点
  • Mincha Gedola:下午祈祷的最早时间(中午后30分钟)
  • Mincha Ketana:下午祈祷的首选最早时间(日落前2.5小时)
  • Plag HaMincha:日落前1.25小时(某些观点认为的最晚时间)

晚上时间

  • Sunset(Shkiah):太阳落下地平线以下的时间
  • Tzeis HaKochavim:夜幕降临,星星出现的时间(日落后72分钟)

安息日和节日

  • Candle Lighting:通常在日落前18 - 40分钟(因社区而异)
  • Havdalah:安息日结束的时间,通常在夜幕降临(日落后72分钟)

犹太律法观点

服务器支持根据不同犹太律法权威进行计算:

  • GR"A(维尔纳加昂):从日出到日落计算一天
  • MG"A(马根·亚伯拉罕):从黎明(日出前72分钟)到夜幕降临计算一天

响应格式

Markdown格式(默认)

具有清晰标题和有序章节的人类可读格式,非常适合展示。

JSON格式

包含ISO 8601时间戳的机器可读结构化数据,适用于编程使用。

输入参数

所有工具接受以下参数:

  • location(必需):地点名称(例如,"纽约,纽约州")
  • latitude(必需):十进制纬度(-90到90)
  • longitude(必需):十进制经度(-180到180)
  • time_zone(必需):IANA时区标识符(例如,"America/New_York")
  • date(可选):YYYY - MM - DD格式的日期(默认今天)
  • response_format(可选):"markdown"或"json"(默认markdown)

对于安息日时间,还有一个额外参数:

  • candle_lighting_offset(可选):日落前的分钟数(1 - 60,默认18)

🔧 技术细节

计算方式

  • 使用NOAA(美国国家海洋和大气管理局)算法
  • 考虑大气折射
  • 使用IANA时区数据库进行时区感知计算
  • 计算中可纳入海拔信息

依赖项

  • mcp:模型上下文协议SDK
  • zmanim:KosherJava zmanim库的Python移植版本
  • pydantic:输入验证和数据建模

📚 常见地点示例

| 属性 | 详情 | |------|------| | 地点 | 纬度 | 经度 | 时区 | | 耶路撒冷 | 31.7683 | 35.2137 | Asia/Jerusalem | | 纽约 | 40.7128 | -74.0060 | America/New_York | | 洛杉矶 | 34.0522 | -118.2437 | America/Los_Angeles | | 伦敦 | 51.5074 | -0.1278 | Europe/London | | 巴黎 | 48.8566 | 2.3522 | Europe/Paris | | 悉尼 | -33.8688 | 151.2093 | Australia/Sydney | | 多伦多 | 43.6532 | -79.3832 | America/Toronto | | 迈阿密 | 25.7617 | -80.1918 | America/New_York |

📚 故障排除

服务器未在MCP客户端中显示

  1. 检查配置中的路径是否正确
  2. 确保Python和所有依赖项已安装
  3. 验证配置文件语法是否为有效的JSON
  4. 配置更改后重启MCP客户端

时间显示为"N/A"

这种情况通常发生在极地附近的地点,某些日子太阳不会升起或落下。计算会优雅地返回"N/A"。

时区错误

确保使用有效的IANA时区标识符。你可以在以下链接找到列表:https://en.wikipedia.org/wiki/List_of_tz_database_time_zones

📄 许可证

此MCP服务器使用python - zmanim库,该库根据GNU Lesser General Public License v2或更高版本(LGPLv2 +)许可,源自KosherJava项目。

📚 致谢

📚 支持

此MCP服务器相关问题

请详细说明配置和问题并提交问题报告。

犹太祈祷时间计算问题

请参考python - zmanim仓库

犹太律法问题

请咨询当地拉比或律法专家。

📚 未来增强功能

可考虑的潜在新增功能:

  • 希伯来日期计算
  • 斋戒日时间
  • 新月计算
  • 节日确定
  • 自定义观点配置
  • 多日范围查询
  • 导出到日历格式(iCal)

⚠️ 重要提示

此服务器仅用于信息参考。如需实际的犹太律法决策,请咨询合格的拉比。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端