Sefaria Jewish Library MCP Server
Provides access to Jewish texts from the Sefaria library, enabling retrieval of specific texts by reference and their associated commentaries.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Sefaria Jewish Library MCP Serverget the commentaries for Genesis 1:1"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Sefaria Jewish Library MCP Server
An MCP (Model Context Protocol) server that provides access to Jewish texts from the Sefaria library. This server enables Large Language Models to retrieve and reference Jewish texts through a standardized interface.
Features
Retrieve Jewish texts by reference
Retrieve commentaries on a given text
Related MCP server: Sefaria Jewish Library MCP Server
Installation
Requires Python 3.10 or higher.
Installing via Smithery
To install Sefaria Jewish Library for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-sefaria-server --client claudeClone the repository
git clone https://github.com/sivan22/mcp-sefaria-server.git
cd mcp-sefaria-serverRunning the Server
The server can be run directly:
uv --directory path/to/directory run sefaria_jewish_libraryOr through an MCP client that supports the Model Context Protocol. for claude desktop app and cline you should use the following config:
{
"mcpServers": {
"sefaria_jewish_library": {
"command": "uv",
"args": [
"--directory",
"C:/dev/mcp-sefaria-server",
"run",
"sefaria_jewish_library"
],
"env": {
"PYTHONIOENCODING": "utf-8"
}
}
}
}Available tools
The server provides the following tools through the MCP interface:
get_text
Retrieves a specific Jewish text by its reference.
Example:
reference: "Genesis 1:1"
reference: "שמות פרק ב פסוק ג"
reference: "משנה ברכות פרק א משנה א"get_commentaries
Retrieves a list of commentaries for a given text.
Example:
reference: "Genesis 1:1"
reference: "שמות פרק ב פסוק ג"
reference: "משנה ברכות פרק א משנה א"Development
This project uses:
MCP SDK for server implementation
Sefaria API for accessing Jewish texts
Requirements
Python >= 3.10
MCP SDK >= 1.1.1
Sefaria API
License
MIT License
Available Tools
2 toolsget_commentariesC
get a list of references of commentaries for a jewish text
| Name | Required | Description | Default |
|---|---|---|---|
| reference | Yes | the reference of the jewish text, e.g. 'שולחן ערוך אורח חיים סימן א' or 'Genesis 1:1' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions retrieving a list but doesn't specify if this is a read-only operation, how results are formatted, if there are rate limits, or any other behavioral traits. This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without any unnecessary words. It is appropriately sized and front-loaded, making it easy to understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the returned list contains (e.g., format, structure), any limitations, or how it differs from the sibling tool. For a tool with no structured support, more context is needed to be fully helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the single parameter 'reference' with examples. The description adds no additional meaning beyond what the schema provides, such as clarifying the scope or format of commentaries, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('get a list of references') and resource ('commentaries for a jewish text'), making the purpose understandable. However, it doesn't explicitly differentiate from the sibling tool 'get_text', which might also retrieve text-related information, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get_text', nor does it mention any prerequisites or exclusions. It only states what the tool does, leaving usage context implied at best.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_textC
get a jewish text from the jewish library
| Name | Required | Description | Default |
|---|---|---|---|
| reference | Yes | The reference of the jewish text, e.g. 'שולחן ערוך אורח חיים סימן א' or 'Genesis 1:1' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states the tool 'gets' a text, implying a read operation, but doesn't disclose behavioral traits like authentication needs, rate limits, error handling, or what 'get' entails (e.g., returns full text, metadata, or formatting). The description is minimal and lacks context beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence: 'get a jewish text from the jewish library'. It's appropriately sized and front-loaded with the core action. There's no wasted verbiage, though it could be more structured with additional context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a simple input schema, the description is incomplete. It lacks details on what the tool returns (e.g., text content, format), error conditions, or behavioral context. For a tool with minimal structured data, the description should provide more completeness to guide effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'reference' fully documented in the schema. The description doesn't add any parameter semantics beyond what the schema provides (e.g., no examples or usage tips). Baseline is 3 since the schema does the heavy lifting, but the description doesn't compensate or enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'get a jewish text from the jewish library' specifies the verb 'get' and resource 'jewish text' with source context. It doesn't explicitly differentiate from the sibling 'get_commentaries', but the resource type distinction is implied. The description avoids tautology by not just restating the tool name.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention the sibling tool 'get_commentaries' or any other context for selection. Usage is implied only by the tool's name and purpose, with no explicit when/when-not instructions or prerequisites stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
- First observed
get_commentaries - First observed
get_text
TDQS
The two tools have clearly distinct purposes: get_commentaries retrieves commentary references for a text, while get_text retrieves the text itself. There is no overlap or ambiguity between these operations, making it easy for an agent to select the correct tool based on the need.
Both tools follow a consistent verb_noun naming pattern (get_commentaries and get_text), using the same verb 'get' and descriptive nouns. This uniformity makes the tool set predictable and easy to understand at a glance.
With only 2 tools, the server feels under-scoped for a library domain that typically involves more operations like search, update, or categorization. While the tools cover basic retrieval, the count is too low to support comprehensive interactions with a Jewish library, limiting agent capabilities.
The tool set is severely incomplete for a library server, lacking essential operations such as search, filtering, creation, or management of texts and commentaries. Agents will face dead ends when trying to perform common library tasks beyond simple retrieval, leading to potential failures.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Access Sefaria's library of Jewish texts, commentaries, and learning schedules via MCP
Sefaria MCP — the free digital library of Jewish texts.
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
Academic literature search, retrieval, and private library management on top of OpenAlex.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides powerful search capabilities for Jewish texts and literature. This server enables Large Language Models to search and reference Jewish texts through a standardized interface.23MIT
- AlicenseBqualityDmaintenanceProvides access to Jewish texts from the Sefaria library. This server enables Large Language Models to retrieve and reference Jewish texts through a standardized interface.434MIT

Sefaria MCP Serverofficial
AlicenseNot gradedqualityBmaintenanceEnables LLMs to access and search Jewish texts from the Sefaria library through 15 MCP tools, including text retrieval, search, and manuscript access.23MIT- AlicenseNot gradedqualityCmaintenanceEnables AI agents to access and query the Sefaria digital library of Jewish texts through natural language or direct tool calls.14MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/OpenTorah-ai/mcp-sefaria-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server