关于 Zmanim MCP Server
Zmanim MCP Server 使用 python-zmanim 库和基于 NOAA 的计算,为全球地点计算犹太祷告及天文时刻。它适用于需要按地点和日期生成时间表的 MCP 客户端,并支持 GR"A 与 MG"A 意见。
主要功能
- 01计算日出和日落
- 02查询Shema及晨祷时限
- 03计算下午祷告时刻
- 04提供安息日烛光点燃和Havdalah时间
- 05支持GR"A与MG"A意见
- 06输出Markdown或JSON
适用场景
- 01查询指定日期和地点的祷告时刻
- 02查找Shema或晨祷的最晚时间
- 03安排安息日烛光点燃和Havdalah
- 04为应用获取结构化zmanim数据
MCP 相关
它向 MCP 客户端提供日出日落、祷告时限、下午时刻、安息日时间和每日 zmanim 的计算工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
6收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| date | any | 否 | 计算用的可选日期,格式为 YYYY-MM-DD(未提供时默认为今天) |
| latitude | number | 是 | 十进制度数表示的纬度坐标(例如,纽约为 40.7128) |
| location | string | 是 | 地点名称(例如,'Jerusalem'、'New York, NY'、'London') |
| longitude | number | 是 | 十进制度数表示的经度坐标(例如,纽约为 -74.0060) |
| time_zone | string | 是 | IANA 时区标识符(例如:'America/New_York'、'Asia/Jerusalem'、'Europe/London') |
| response_format | enum | 否 | 输出格式:'markdown' 表示便于人阅读,'json' 表示便于机器读取markdown | json |
详细介绍
Zmanim MCP 服务
用于计算犹太祷告时间(zmanim)的综合 MCP 服务。
这是一个综合的 Model Context Protocol(MCP)服务,使用 python-zmanim 库计算犹太祷告时间(zmanim)。
概述
此 MCP 服务提供工具,可为全球任意地点计算各种犹太祷告时间和天文时间。它使用 python-zmanim 库;该库是 KosherJava 项目的 Python 移植版本,基于 NOAA 算法实现精准的天文计算。
功能
可用工具
- zmanim_get_sunrise_sunset - 获取日出和日落时间
- zmanim_get_shema_times - 获取诵读晨间 Shema 的最晚时间(GR"A 和 MG"A 的观点)
- zmanim_get_tefila_times - 获取晨间祷告/Shacharis 的最晚时间(GR"A 和 MG"A 的观点)
- zmanim_get_mincha_times - 获取午后祷告时间,包括 Mincha Gedola、Mincha Ketana 和 Plag HaMincha
- zmanim_get_shabbat_times - 获取安息日蜡烛点燃和 Havdalah 时间
- zmanim_get_daily_times - 获取完整的每日 zmanim 时间表
主要功能
- ✅ 支持多种 halachic 观点(GR"A、MG"A)
- ✅ 基于 NOAA 的精准天文计算
- ✅ 支持提供纬度/经度的全球任意地点
- ✅ 考虑时区的计算
- ✅ 可选指定日期(默认为今天)
- ✅ 多种输出格式(Markdown 和 JSON)
- ✅ 可自定义蜡烛点燃时间偏移量
- ✅ 完善的错误处理
安装
通过 PyPI(推荐)
# For use with Claude Desktop or other MCP clients
uvx zmanim-mcp-server
Claude Desktop 配置
将以下内容添加到 claude_desktop_config.json:
{
"mcpServers": {
"zmanim": {
"command": "uvx",
"args": ["zmanim-mcp-server"]
}
}
}
使用示例
获取日出和日落时间
Get sunrise and sunset times for New York City today:
- Location: New York, NY
- Latitude: 40.7128
- Longitude: -74.0060
- Time Zone: America/New_York
获取 Shema 的最晚诵读时间
What time is the latest I can say Shema in Jerusalem?
- Location: Jerusalem
- Latitude: 31.7683
- Longitude: 35.2137
- Time Zone: Asia/Jerusalem
获取安息日时间
Get Shabbat candle lighting and Havdalah times for Chicago this Friday:
- Location: Chicago, IL
- Latitude: 41.8781
- Longitude: -87.6298
- Time Zone: America/Chicago
- Candle lighting offset: 18 minutes (can be customized)
获取完整的每日时间表
Give me all the prayer times for London today:
- Location: London
- Latitude: 51.5074
- Longitude: -0.1278
- Time Zone: Europe/London
Zmanim 说明
早间时间
- Alos HaShachar(黎明):初现曙光,即日出前 72 分钟
- Sunrise(Hanetz HaChama,日出):太阳升至地平线以上的时刻
- Sof Zman Krias Shema:诵读晨间 Shema 的最晚时间
- GR"A:日出后 3 小时
- MG"A:从黎明起算 3 个时令小时(通常更早)
- Sof Zman Tefila:晨间祷告(Shacharis)的最晚时间
- GR"A:日出后 4 小时
- MG"A:从黎明起算 4 个时令小时(通常更早)
午后时间
- Chatzos:太阳正午,即日出与日落之间的中点
- Mincha Gedola:午后祷告最早开始时间(正午后 30 分钟)
- Mincha Ketana:Mincha 的首选最早开始时间(日落前 2.5 小时)
- Plag HaMincha:日落前 1.25 小时(根据某些观点,这是最晚时间)
晚间时间
- Sunset(Shkiah,日落):太阳落至地平线以下的时刻
- Tzeis HaKochavim:入夜、群星显现之时(日落后 72 分钟)
安息日与节日
- 蜡烛点燃:通常在日落前 18–40 分钟(因社群而异)
- Havdalah:安息日结束之时,通常为 Tzeis(日落后 72 分钟)
哈拉卡意见
该服务支持根据不同的哈拉卡权威进行计算:
- GR"A(维尔纳高昂):将一天定义为从日出到日落
- MG"A(马根·亚夫拉罕):将一天定义为从黎明(即日出前 72 分钟)到入夜
响应格式
Markdown 格式(默认)
以易于阅读的格式呈现,包含清晰的标题和规整的分区,非常适合显示。
JSON 格式
机器可读的结构化数据,包含 ISO 8601 时间戳,适合程序使用。
输入参数
所有工具均接受以下参数:
- location(必填):地点名称(例如,“New York, NY”)
- 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 时区数据库处理时区
- 可在计算中纳入海拔因素
依赖项
- fastmcp:独立的 FastMCP 框架
- 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 客户端中未显示服务
- 检查配置中的路径是否正确
- 确保已安装 Python 和所有依赖项
- 确认配置文件语法为有效的 JSON
- 修改配置后,重启 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 or later (LGPLv2+) 许可,并移植自 KosherJava 项目。
致谢
- 基于 pinnymz 编写的 python-zmanim 库
- 原始 Java 库:KosherJava,由 Eliyahu Hershfeld 编写
- NOAA 天文计算
支持
如遇到以下问题:
- 此 MCP 服务:请提交 issue,并附上配置详情和问题描述
- Zmanim 计算:请参阅 python-zmanim 仓库
- 哈拉卡问题:请咨询当地的拉比或 posek
后续改进
可考虑添加以下功能:
- 希伯来历日期计算
- 禁食日时间
- Molad 计算
- 节日判定
- 自定义意见配置
- 多日范围查询
- 导出为日历格式(iCal)
注意:此服务仅供参考。对于实际的哈拉卡决策,请咨询合格的拉比。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。