想象一下,你正在学习一篇古老的犹太文本,比如《创世纪》的第一章。你想知道传统注释是怎么解释这段话的,还想看看今天应该学习哪一页塔木德。通常你需要翻阅好几本不同的书籍,或者在多个网站之间来回切换。如果能让AI助手直接把这些资料都找来,甚至帮你总结要点,那该多方便。

现在有一个工具可以实现这个想法。mcp-sefaria-server是一个MCP服务器,它连接了Sefaria.org这个拥有海量犹太文献的数字图书馆。配置好之后,你可以直接在AI助手里提问,比如“帮我获取《出埃及记》第2章第3节的文本和主要注释”,AI就会自动从Sefaria的数据库中把内容取回来。

项目基本信息

信息项详情
项目名称mcp-sefaria-server
GitHub地址https://github.com/Sivan22/mcp-sefaria-server
项目描述Fetch and read Jewish texts through the API of Sefaria.org
作者Sivan22
开源协议MIT License
开源状态公开状态
LanguagesPython 97.3%, Dockerfile 2.7%
支持平台Windows / macOS / Linux
最后更新2026-04-09

一、项目介绍

mcp-sefaria-server是一个基于Python的MCP服务器,它把Sefaria.org的犹太文献API封装成了AI可以直接调用的工具。Sefaria是一个在线的犹太文献库,收录了《塔纳赫》(希伯来圣经)、《塔木德》、《密释纳》、《佐哈尔》等数千年的犹太经典,而且很多文本都有希伯来语原文和多种语言的翻译。

这个服务器提供了四个核心工具,覆盖了从查阅文本到学习规划的各种需求:

get_text(获取文本):根据引用地址获取特定的犹太文本。你可以用英文、希伯来语或者拉丁化的引用格式。比如“Genesis 1:1”、“שמות פרק ב פסוק ג”(《出埃及记》第2章第3节),或者“משנה ברכות פרק א משנה א”(《密释纳》的某一条)。它会返回完整的文本内容。

get_commentaries(获取注释):针对某一段文本,列出历史上重要的注释。这对研究很有帮助,因为犹太传统非常重视历代学者对经文的解读。你需要提供文本的引用地址,它会返回相关的注释列表。

search_texts(搜索文本):在整个Sefaria文库中搜索关键词。你可以指定搜索范围(比如只搜索《塔木德》),还可以设置模糊匹配程度(slop参数)和返回结果数量。比如搜“moshiach”(弥赛亚),它会找出所有相关的段落。

get_daily_learnings(获取每日学习内容):这是很实用的功能。它会调用Sefaria的日历API,返回当天的学习计划。内容包括每周妥拉段落(Parashat Hashavua)及其细分阅读单位(Aliyot)、Haftarah朗读选段、每日塔木德页(Daf Yomi)、每日密释纳、每日迈蒙尼德,以及其他学习循环的当日内容。你还可以指定日期、地点(是散居地的安排还是以色列的安排)以及不同的传统习俗(custom)。

总的来说,这个项目的定位非常清晰:让AI模型能够方便地访问和检索犹太文献。它不是用来替代专家研究的,而是作为一个快速的查阅助手。

二、核心优势

与权威数字图书馆的直接对接

Sefaria.org是目前最权威的犹太文献数字平台,文本质量高,版本清晰,而且免费开放。这个MCP服务器直接对接Sefaria的官方API,数据的准确性和可靠性有保障。你不需要自己从PDF里OCR,或者担心文本来源不明。

多种引用格式的智能识别

犹太文本的引用方式对不熟悉的人来说可能有点复杂。这个工具很贴心,它同时接受英文、希伯来语、以及拉丁化的引用格式。你可以用“Brachot 2a”这种通用的塔木德引用,也可以用完整的希伯来语“משנה ברכות פרק א משנה א”。AI会自动识别并转换成API能理解的格式。

学习规划的一站式获取

get_daily_learnings工具集中了多个学习循环的当日内容。传统的犹太学习体系很丰富:每天一页塔木德、每天一章密释纳、每天一段迈蒙尼德等等。通常你需要查不同的日历或者应用。现在只需要一个请求,AI就能把所有这些当天的学习任务列出来。

专为AI交互设计的工具接口

四个工具的设计都很符合语言模型的使用习惯。输出是结构化的文本,不是原始的JSON(除非你查看详细日志)。AI可以直接阅读和理解返回的内容,不需要再做额外的解析。这让AI能够基于文本内容进行总结、翻译、对比等高级任务。

Python生态的易安装性

项目用Python编写,依赖管理使用uv(一个快速的Python包管理器)。对于熟悉Python生态的开发者来说,安装和修改都很方便。项目还提供了Docker镜像和Smithery一键安装选项,照顾到了不同技术背景的用户。

三、适用场景

学术研究与教学

神学院的学生或者犹太研究学者可以用它来快速查阅原始文献。比如你想研究“Rashi对《创世纪》第一章的注释”,就可以用get_commentaries获取拉什的注释文本,然后让AI帮你翻译和总结。教师可以在课堂上实时演示如何查阅文本,提高教学效率。

个人每日学习助手

对于遵循每日学习传统的用户,get_daily_learnings是一个很实用的功能。你可以让AI每天早上告诉你“今天要学哪一页塔木德,哪一章密释纳”,甚至可以进一步要求AI“总结今天塔木德页的主要内容”。这相当于一个个性化的学习伴侣。

犹太文本的自动化处理

如果你需要批量处理大量的犹太文本,可以用search_texts先找出相关的段落,然后用get_text获取完整内容,再通过AI进行分类、标注或翻译。例如,分析“爱邻如己”这个概念在多少个不同的文本中出现,以及各个文本的解释角度有何不同。

跨文本的关联研究

结合get_text和get_commentaries,可以研究经文和注释之间的引用关系。比如获取《出埃及记》中“十诫”的段落,然后再看看中世纪注释家是怎么解读的,最后用AI生成一个对比表格。传统上这需要翻阅多卷注释书,现在几分钟就能完成初步的收集工作。

语言学习与原文阅读

如果你在学习希伯来语或阿拉米语,可以用这个工具来阅读原文。Sefaria通常提供原文和翻译并列显示。你可以让AI“逐词解析《创世纪》1:1的希伯来语文本”,帮助理解语法和词汇。相比静态的教科书,这种方式更灵活,文本内容也更丰富。

四、安装教程

前置准备

在使用之前,你需要确保系统安装了Python 3.10或更高版本。你可以通过在终端输入python --version来检查。如果没有安装,可以去Python官网下载。

你需要一个支持MCP协议的AI客户端。本教程以Claude Desktop为例进行说明。

安装uv包管理器(推荐)

这个项目推荐使用uv来运行Python应用,因为它比传统的pip更快且隔离性更好。安装uv的方法很简单。

对于macOS和Linux,在终端中运行:

curl -LsSf https://astral.sh/uv/install.sh | sh

对于Windows,在PowerShell中运行:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

安装完成后,运行uv --version验证是否成功。

克隆项目到本地

选择一个目录存放项目代码,然后运行:

git clone https://github.com/Sivan22/mcp-sefaria-server.git
cd mcp-sefaria-server

配置Claude Desktop

首先找到Claude Desktop的配置文件位置:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

用文本编辑器打开这个文件。如果文件不存在,可以手动创建一个。然后将以下配置添加进去。注意要把absolute/path/to/mcp-sefaria-server替换成你实际克隆项目的绝对路径。

{
  "mcpServers": {
    "sefaria_jewish_library": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/yourusername/Documents/mcp-sefaria-server",
        "run",
        "sefaria_jewish_library"
      ],
      "env": {
        "PYTHONIOENCODING": "utf-8"
      }
    }
  }
}

通过Smithery一键安装(更简单)

如果你不想手动配置,可以通过Smithery自动安装。在终端中运行:

npx -y @smithery/cli install mcp-sefaria-server --client claude

这个命令会自动完成克隆、依赖安装和配置注入。

验证安装

保存配置文件后,完全退出并重启Claude Desktop。然后在聊天界面中输入:

“Get the text of Genesis 1:1 using the Sefaria MCP server”

如果配置成功,Claude应该会调用工具并返回《创世纪》第一章第一节的文本。

五、使用示例

配置完成后,你可以用以下方式与AI互动。注意不需要手动指定工具名称,用自然语言描述即可。

示例一:获取特定文本

“Use the Sefaria MCP server to get the text of Mishnah Berakhot 1:1 in both Hebrew and English.”

AI会调用get_text工具,返回《密释纳》第一 tractate 第一段的内容。如果你只指定英文,它也会返回,但Sefaria通常提供双语选项,你可以要求AI同时输出两种语言。

示例二:查找注释

“I'm studying Exodus 3:14 where God says 'I AM THAT I AM'. What do the classic commentaries say about this verse? Get them from Sefaria.”

AI会用get_commentaries工具列出Rashi、Ibn Ezra等中世纪注释家的解读。然后你可以进一步问“Summarize Rashi's interpretation in plain English”,AI会基于返回的注释内容进行总结。

示例三:搜索关键词

“Search the Talmud for the term 'moshiach' (messiah) and give me the first 3 results with their references and a short quote.”

AI会调用search_texts,使用filters参数限定在“Talmud”和“Bavli”范围内。返回的结果会包含每个匹配段落的引用地址和一段上下文。

示例四:获取今日学习内容

“What is the Daf Yomi page for today according to the diaspora schedule? Also tell me the weekly Torah portion.”

这个问题会触发get_daily_learnings。AI会返回当天的塔木德页码(例如“Berakhot 2a”)和当周的妥拉段落(例如“Vayechi”)。你可以继续问“Give me a summary of today's daf”,它就能基于获取到的内容进行概括。

示例五:指定日期的学习计划

“Show me the learning schedule for December 25, 2024, for people living in Israel. Include everything: Torah portion, Haftarah, Daf Yomi, and Mishnah Yomit.”

这里设置了diaspora: false,表示按照以色列的节日和阅读习惯。AI会返回一个结构化的列表,包含当日所有的学习项目。如果你想深入研究,还可以说“Now get the text of today's Mishnah Yomit section for me”。

六、常见问题

提示找不到“uv”命令

这说明uv还没有安装,或者没有添加到系统PATH中。请先按照上面的步骤安装uv。如果你不想使用uv,也可以使用传统的pip方式:先创建虚拟环境,激活后运行pip install -e .,然后用python -m sefaria_jewish_library来运行。但需要手动修改配置文件中的command和args。

文本引用格式不被识别

Sefaria API对引用格式有一定的要求。如果你遇到“reference not found”的错误,可以尝试几种变体。对于圣经经文,“Genesis 1:1”和“Bereshit 1:1”都有效。对于塔木德,通常使用“Tractate Page”的形式,比如“Berakhot 2a”。如果仍然失败,可以先在Sefaria.org网站上验证一下该引用是否存在。

search_texts返回的结果太少或不相关

调整slop参数。slop控制模糊匹配的程度,值越高匹配越宽松。默认值可能是0(精确匹配)。你可以要求AI“search with slop set to 2”。另外,filters参数可以缩小搜索范围,提高相关性。如果指定了“Talmud”但没找到结果,尝试“Bavli”或“Yerushalmi”。

get_daily_learnings返回的某些项目为空

这是正常的。比如在某些日期,可能没有特殊的Haftarah朗读,或者某些学习循环可能不覆盖非主流的日子。服务器会返回它能够获取到的信息,没有的项目就是空字段。检查你传递的custom参数是否正确,如果指定了一个不存在的习俗,可能会导致数据缺失。

中文环境下控制台输出乱码

在配置中已经设置了PYTHONIOENCODING: "utf-8",这应该能解决大多数编码问题。如果仍然在某个客户端出现乱码,可以尝试在环境变量中加入PYTHONUTF8=1。另外,确保你的终端或IDE使用UTF-8编码。

工具调用正确但AI看不懂返回的内容

有时AI模型可能不太理解返回的希伯来语或阿拉米语文本。你可以明确要求“Translate the Hebrew text into English”或者“Explain the Aramaic terms”。因为返回的文本是原始数据,AI需要额外的指令来处理它。你可以把这些指令合并到同一个查询中。

七、总结

mcp-sefaria-server是一个小而美的工具,它精准地解决了一个特定领域的痛点:如何让AI模型方便地访问犹太文献。它没有试图做面面俱到的功能,只是提供了四个专注的工具,但每个工具都深入到了实际的学习和研究场景中。

我觉得最值得赞赏的是get_daily_learnings这个工具。它不仅仅是一个文本检索接口,而是一个将传统学习体系现代化的尝试。让AI成为每日学习的一部分,这既有实用价值,也很有意义。

当然,这个项目也有一些可以改进的地方。比如目前只支持同步请求,对于很长的文本或者复杂的搜索,响应可能会稍慢。另外,没有提供获取文本间引用关系的功能,这对于研究来说是很重要的。不过考虑到项目的版本还在早期,这些功能未来可能会添加。

如果你是一名犹太研究的学生或学者,或者你对犹太文本感兴趣并希望能够通过AI来辅助学习,这个MCP服务器值得你尝试。即使你不懂希伯来语或阿拉米语,AI可以帮你翻译和解释,让数千年的智慧变得触手可及。

标签: 内容抓取

已有 145 条评论

    1. 格式是:  用户昵称( 用户昵称统一用英文名12字符以内随机生成,禁止英文之间带下_划线 ) 格式是: 用户昵称( 用户昵称统一用英文名12字符以内随机生成,禁止英文之间带下_划线 )

      评论的内容(有长评论和短评,错开随机,1000字符内)

    2. 访客 访客

      备注说明:

    3. 访客 访客

      1 评论的昵称要不同,评论的内容是真实对文章进行过越多,如果是音乐文章,就要有一个定听觉上评论!

    4. 访客 访客

      2 评论内容用英文 或 中文,都是自然随机生成不规则

    5. 访客 访客

      每一条前面不要有编号和任何符号出现