犹太节日日历服务

一个提供以色列城市安息日时间和犹太节日信息的MCP服务器,基于Hebcal API。

  • by shaymc3
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 shaymc3/hebcal-mcp

使用说明

Hebcal MCP服务器

一个MCP服务器,使用Hebcal API提供对安息日和犹太节日的访问。

描述

此服务器允许您获取有关以下内容的最新准确信息:

  • 以色列各城市的安息日烛光和哈瓦达拉节
  • 下一个即将到来的犹太节日
  • 所有即将到来的假期和安息日

先决条件

使用uv安装依赖项:

uv add fastmcp requests

Claude Desktop中的安装和设置

步骤1:保存文件

将代码保存在名为的文件中 hebcal_server.py 在计算机上方便的位置。

步骤2:配置Claude桌面

打开Claude Desktop配置文件:

在macOS上:

~/Library/Application Support/Claude/claude_desktop_config.json

在Windows上:

%APPDATA%\Claude\claude_desktop_config.json

步骤3:添加服务器配置

将以下配置添加到配置文件中:

{
  "mcpServers": {
    "project": {
      "command": "uv",
      "args": [ 
        "--directory",
        "/path/to/hebcal-mcp.py",
        "run",
        "main.py"]
    }
  }
}

注: 替换 /path/to/hebcal-mcp.py 包含文件的完整路径。

例如:

  • macOS: "/Users/username/mcp-servers/hebcal-mcp"
  • 窗户: "C:\\Users\\username\\mcp-servers\\hebcal-mcp"

步骤4:重新启动

关闭并重新启动Claude Desktop以使更改生效。

可用工具

1. get_shabbat_times

返回特定以色列城市即将到来的安息日的烛光和Havdalah时间。

输入:

  • city (str):城市英文名称

支持城市:

  • 耶路撒冷
  • 特拉维夫
  • 海法
  • 贝尔谢巴
  • 阿什杜德
  • 复制

输出: 包含两个项目的列表:

["2025-11-14 Candle lighting: 16:24", "2025-11-15 Havdalah: 17:20"]

使用示例:

  • 阿什杜德的安息日是什么时候
  • “让我看看耶路撒冷的安息日”
  • “安息日在特拉维夫什么时候结束?”

示例响应:

Shabbat candle lighting in Ashdod is on Friday, November 14, 2025 at 16:24.
Havdalah (Shabbat end) will be on Saturday, November 15 at 17:20.

Shabbat Shalom!

2. get_all_shabbat_times

返回所有安息日蜡烛照明和Havdalah时间,直到年底。

输入: 无参数

输出: 所有即将到来的安息日时间列表:

[
  "2025-11-14 Candle lighting: 16:22",
  "2025-11-15 Havdalah: 17:34",
  "2025-11-21 Candle lighting: 16:20",
  ...
]

使用示例:

  • “显示所有即将到来的安息日时间”
  • “安息日到年底都是什么时候?”

示例响应:

Here are all the upcoming Shabbat times until the end of the year:

November 2025:
- Friday, November 14 at 16:22 → Saturday, November 15 at 17:34
- Friday, November 21 at 16:20 → Saturday, November 22 at 17:33
- Friday, November 28 at 16:19 → Saturday, November 29 at 17:32

December 2025:
- Friday, December 5 at 16:18 → Saturday, December 6 at 17:32
...

3. get_the_next_holiday

返回下一个即将到来的犹太节日。

输入: 无参数

输出: 一个包含一个假期的列表:

["2025-11-20 Sigd"]

使用示例:

  • “下一个假期是什么时候?”
  • “什么假期要来了?”
  • “下一个犹太节日是什么?”

示例响应:

The next holiday is Sigd on Thursday, November 20, 2025.

Sigd is a holiday celebrated by Ethiopian Jews, marking the yearning for Jerusalem 
and the Land of Israel, observed 50 days after Yom Kippur.

4. get_all_holiday_times

返回所有犹太节日,直到年底。

输入: 无参数

输出: 所有假期列表:

[
  "2025-11-20 Sigd",
  "2025-11-26 Ben-Gurion Day",
  "2025-12-14 Chanukah: 1 Candle",
  "2025-12-15 Chanukah: 2 Candles",
  ...
]

使用示例:

  • “给我一份即将到来的假期清单”
  • “年底之前的假期是什么?”
  • “让我看看所有的假期”

示例响应:

Here are all the upcoming holidays until the end of the year:

November 2025:
- November 20 - Sigd
- November 26 - Ben-Gurion Day

December 2025:
- December 14 - Chanukah: 1st Candle
- December 15 - Chanukah: 2nd Candle
- December 16 - Chanukah: 3rd Candle
- December 17 - Chanukah: 4th Candle
- December 18 - Chanukah: 5th Candle
- December 19 - Chanukah: 6th Candle
- December 20 - Chag HaBanot and Chanukah: 7th Candle
- December 21 - Chanukah: 8th Candle
- December 22 - Chanukah: 8th Day
- December 30 - Asara B'Tevet (Fast)

Happy Holidays! 🕎

自然语言交互示例

这个MCP服务器的美妙之处在于,你可以用自然语言提问,克劳德会以对话的方式理解和提供信息。

安息日查询

Q “阿什杜德什么时候点蜡烛?”
A. “阿什杜德的安息日烛光是在2025年11月14日星期五16:24……”

Q “本周特拉维夫安息日几点结束?”
A. “特拉维夫的Havdalah(安息日结束)将于11月15日星期六17:19举行……”

假日查询

Q “下一个犹太节日是什么?”
A. “下一个假期是2025年11月20日星期四的Sigd。Sigd是埃塞俄比亚犹太人庆祝的节日。.."

Q “光明节今年什么时候开始?”
A. “光明节始于2025年12月14日,第一支蜡烛点燃……”

多城市查询

Q “比较耶路撒冷和埃拉特的安息日”
A. 克劳德将调用该工具两次,并提供两个城市的比较

上下文问题

您还可以提出后续问题:

  • “下周怎么样?”(在询问安息日时间后)
  • “那之后的假期呢?”(在询问下一个假期后)
  • “海法几点?”(在讨论了另一个城市的安息日后)

克劳德维护上下文并理解您所指的内容!


故障排除

服务器未出现在Claude桌面中

  1. 验证文件路径是否正确且无拼写错误
  2. 检查一下 uv 已安装并可访问: uv --version
  3. 确保安装了依赖项: uv add fastmcp requests
  4. 尝试重新启动Claude Desktop

运行期错误

如果遇到错误,请检查:

  • JSON文件有效(无额外逗号)
  • 所有支架均已正确关闭
  • 路径中不包含没有引号的空格

手动测试服务器

您可以直接运行服务器进行测试:

uv run hebcal_server.py

数据源

信息来源于 Hebcal.com -希伯来日历信息的可靠来源。

许可证

此代码使用Hebcal的公共API。请查阅Hebcal的商业使用服务条款。


笔记:

  • 安息日时间按每个城市分别计算
  • 时间会根据希伯来语和民用日历自动更新
  • 信息包括假期、Rosh Chodesh和其他特殊日子