hebcal
Server Details
Model Context Protocol extension for Hebrew calendar
- Status
- Healthy
- Uptime
- 99.9% over 40 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- hebcal/hebcal-mcp
- GitHub Stars
- 6
- Server Listing
- hebcal-mcp
TDQS
Scored across 7 tools
Each tool targets a clearly distinct function: date conversion (both directions), Daf Yomi, holiday listing, Shabbat times, Torah portion, and Yahrzeit. The two conversion tools are inverses but unambiguous from their names and descriptions.
All names use kebab-case, but the semantic pattern is mixed: two begin with the verb 'convert' while the rest are noun phrases (daf-yomi, shabbat-times, torah-portion, yahrzeit). The set is readable but lacks a single predictable convention.
Seven tools is well within the ideal 3–15 range for a calendar utility server. Each tool covers a distinct, commonly needed Jewish calendar operation, so no tool feels redundant or missing in count.
The surface covers core calendar calculations: Gregorian/Hebrew conversion, holidays, Shabbat times, Torah portion, Daf Yomi, and Yahrzeit. Minor gaps exist for daily zmanim, Omer counting, or a full month calendar, but agents can work around most needs.
Available Tools
7 toolsconvert-gregorian-to-hebrewAInspect
Converts a Gregorian (civil) date to a Hebrew date (Jewish calendar)
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Gregorian date (in yyyy-MM-dd format) to convert |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden of behavioral disclosure. It only restates the conversion direction and adds calendar terminology, but does not disclose the output date format, whether time-of-day is ignored, what happens for invalid dates, or any calendrical edge cases. This is a significant gap for a tool with no output schema.
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 sentence with no filler, and the core conversion relationship is front-loaded. It is appropriately compact for a simple one-parameter tool.
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?
The tool itself is low-complexity, but there is no output schema and the description does not specify what the returned Hebrew date looks like or how edge cases are handled. An agent could successfully invoke it but would be uncertain about interpreting the result without additional assumptions.
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%, and the schema already documents the date parameter and its yyyy-MM-dd format. The tool description adds no further parameter meaning beyond the schema, so the baseline score of 3 is appropriate.
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 uses a specific verb ('converts') and clearly names the input ('Gregorian (civil) date') and output ('Hebrew date (Jewish calendar)'). This directionality distinguishes it directly from the sibling convert-hebrew-to-gregorian without needing to open either schema.
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 clearly communicates the conversion direction, which tells the agent when this tool is appropriate relative to its reverse sibling. However, it does not explicitly name the alternative or provide when-not-to-use guidance, so it falls just short of fully explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert-hebrew-to-gregorianAInspect
Converts a Hebrew date to a Gregorian (civil) date
| Name | Required | Description | Default |
|---|---|---|---|
| day | Yes | Hebrew day of month | |
| year | Yes | Hebrew year | |
| month | Yes | Hebrew month name transliterated, like Elul or Tishrei |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses the primary conversion behavior, but it does not mention output format, validation of invalid Hebrew dates, or any calendar edge-case handling. The main behavior is present, so this is not severely deficient, but additional detail would help.
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?
A single, front-loaded sentence states the tool's purpose with zero waste. It is as concise as possible while still conveying the exact conversion direction.
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?
The tool is simple and required parameters are well documented, but there is no output schema and no description of the return value's format. An agent cannot tell whether the result is an ISO string, a date object, or another representation. This is a moderate completeness gap.
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 all three parameters adequately. The description adds no extra parameter nuance such as expected ranges, month normalization, or transliteration variants, which keeps it at the baseline.
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 uses a specific verb ('Converts') and names both source and target resources ('Hebrew date' to 'Gregorian (civil) date'). This clearly distinguishes it from the sibling convert-gregorian-to-hebrew without ambiguity.
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 direction of conversion makes the intended use context clear: use this tool when you have a Hebrew date and need a Gregorian result. It does not explicitly name the sibling alternative or state exclusions, but the counterpart is obvious from the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
daf-yomiBInspect
Calculates the Daf Yomi (Babylonian Talmud) learning for a specified date
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Gregorian date in yyyy-MM-dd format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full behavioral disclosure burden. It clarifies the Babylonian Talmud variant but does not mention what the return value looks like, edge cases, date validity constraints, or whether the operation is purely read-only.
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 one short, front-loaded sentence that directly communicates the tool's core function. There is no filler or redundant wording.
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?
For a one-parameter calculation tool, the description is minimally adequate, but it does not specify the output format or clarify what 'learning' means in concrete terms. This gap matters because there is no output schema to fill it.
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?
The input schema fully describes the single 'date' parameter with format yyyy-MM-dd, so schema coverage is 100%. The description adds no additional parameter meaning, which matches the baseline for well-documented schemas.
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 states a specific verb and resource: it calculates Daf Yomi (Babylonian Talmud) learning for a date. It is clear and unique among the sibling tools, though it does not explicitly name or differentiate against them.
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 date-driven scope implies when to use the tool, and the Daf Yomi resource is conceptually distinct from the sibling tools. However, there is no explicit when-to-use, when-not-to-use, or alternative routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jewish-holidays-yearAInspect
Calculates a list of all Jewish holidays during a Gregorian (civil) year
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Gregorian year |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states that it 'calculates a list' – the output format, what holidays are included/excluded, and whether it returns Hebrew dates or other details are not mentioned. This is minimal beyond the bare operation.
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 front-loaded sentence with no filler or redundancy. Every word earns its place, and the core action and scope are immediately clear.
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?
The tool is conceptually simple with one fully documented parameter, but there is no output schema and the description does not describe what the list contains (e.g., holiday names, dates, or format). An agent can call it correctly but may misjudge the shape of the response, so completeness is adequate but not robust.
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 coverage is 100%, and the schema already defines 'year' as a 'Gregorian year'. The description adds only slight clarification with '(civil)', which is marginal. The schema does the heavy lifting, so a baseline of 3 is appropriate.
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 uses a specific verb ('Calculates') and a precise resource ('a list of all Jewish holidays during a Gregorian (civil) year'). This clearly distinguishes it from sibling tools that convert dates, compute times, or return a single item like yahrzeit or daf-yomi.
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 intended use is implied: call this when you need all Jewish holidays for a civil year. However, it does not explicitly state when not to use it or name alternatives such as shabbat-times or convert-gregorian-to-hebrew, leaving some routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
shabbat-timesAInspect
Generates Shabbat and holiday candle-lighting and Havdalah times for a given location and date range
| Name | Required | Description | Default |
|---|---|---|---|
| tzid | Yes | Olson timezone ID (e.g. "America/Chicago", "Europe/Moscow") | |
| endDate | Yes | End date in yyyy-MM-dd format | |
| latitude | Yes | Latitude as decimal, valid range -90 to +90 (e.g. 41.85003) | |
| longitude | Yes | Longitude as decimal, valid range -180 to +180 (e.g. -87.65005) | |
| startDate | Yes | Start date in yyyy-MM-dd format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full behavioral burden. It states the core output but does not disclose behavior around timezone handling, invalid coordinates, holiday edge cases, or response format. This is not a contradiction, but it is a significant gap.
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?
A single front-loaded sentence conveys the tool's purpose without filler. Every phrase earns its place, and the description is appropriately sized for the tool's complexity.
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?
With five required parameters and no output schema or annotations, the description gives enough to attempt invocation but not enough to predict return values or error edge cases. It is adequate but not fully complete.
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 each parameter already documented with format, bounds, or examples. The description adds only the conceptual mapping of location to latitude/longitude and date range to start/end dates, so the baseline 3 is appropriate.
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 names a specific verb ('Generates') and a well-defined resource: Shabbat and holiday candle-lighting and Havdalah times for a location and date range. This clearly distinguishes it from the sibling conversion, holiday-listing, and Torah-reading tools.
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 implies when to use the tool: when candle-lighting or Havdalah times are needed for a location and date range. However, it does not explicitly state exclusions or mention alternatives, leaving some routing judgment to the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
torah-portionBInspect
Calculates the weekly Torah portion (also called parashat haShavua) for a specified date
| Name | Required | Description | Default |
|---|---|---|---|
| il | Yes | True if in Israel, false for Diaspora | |
| date | Yes | Gregorian date in yyyy-MM-dd format |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It only states that the tool 'calculates' the portion, without disclosing relevant behavior such as the impact of the Israel/Diaspora flag, handling of dates outside the Torah-reading cycle, or the output format.
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 sentence that front-loads the action and object, with no redundant wording or filler. It is appropriately concise for a simple calculation tool.
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?
The tool is simple, the schema covers both required parameters, and the output is inferable from the description. However, with no output schema and no annotation coverage, the description could have added more context about what the returned portion looks like and how the il flag changes the result.
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%, and both parameters already have clear descriptions: date format and the boolean meaning of il. The tool description adds no additional parameter-level meaning, which matches the baseline of 3.
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 uses a specific verb ('Calculates') and names a clear resource ('weekly Torah portion') with a clarifying Hebrew synonym. It is unambiguous about the primary function, but it does not differentiate it from sibling date-based tools such as daf-yomi or jewish-holidays-year.
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?
There is no guidance on when to use this tool versus related calendar tools. Given that the sibling list includes several date-dependent Jewish calendar tools, the description leaves the selection decision entirely to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yahrzeitBInspect
Calculates the Yahrzeit, the anniversary of the day of death of a loved one, according to the Hebrew calendar for a specified date
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Gregorian date of death (in yyyy-MM-dd format) | |
| afterSunset | Yes | after sunset |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral burden, and it only states that the tool calculates. It does not explain how 'afterSunset' affects the result, what the returned value looks like, or how edge cases are handled.
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?
A single front-loaded sentence defines the term and states the calculation target with no filler. It is appropriately sized for a tool whose schema handles parameter details.
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?
The tool requires two parameters, one of which has a confusing description, has no annotations, and has no output schema. A complete definition would explain the afterSunset semantics and at least hint at the return value (Hebrew date vs. Gregorian date).
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?
The schema already documents 'date' clearly and provides 100% parameter coverage, so the baseline is 3. The description adds no additional meaning; notably, it does not clarify the ambiguous 'after sunset' boolean, which is a required input.
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 states a specific verb and resource: it calculates the Yahrzeit from a Gregorian date of death, which clearly distinguishes it from the conversion and schedule tools in the sibling list. However, it never names a sibling or explicitly contrasts itself, so it stays at 'clear but no explicit differentiation'.
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 definition implies the tool is for computing the Hebrew-calendar anniversary of a death date, and the siblings make it easy to infer this is not for general date conversion or holiday lookup. It provides no explicit 'use when' guidance, no exclusions, and no mention of alternatives.
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.
7 tool updates
- Changed
convert-gregorian-to-hebrew2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
convert-hebrew-to-gregorian6 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false - removed
Input schema / properties / day / maximumRemoved value: -30 - removed
Input schema / properties / day / minimumRemoved value: -1 - removed
Input schema / properties / year / maximumRemoved value: -9999 - removed
Input schema / properties / year / minimumRemoved value: -1
- Changed
daf-yomi2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
jewish-holidays-year4 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false - removed
Input schema / properties / year / maximumRemoved value: -9999 - removed
Input schema / properties / year / minimumRemoved value: -1
- Changed
shabbat-times6 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false - removed
Input schema / properties / latitude / maximumRemoved value: -90 - removed
Input schema / properties / latitude / minimumRemoved value: --90 - removed
Input schema / properties / longitude / maximumRemoved value: -180 - removed
Input schema / properties / longitude / minimumRemoved value: --180
- Changed
torah-portion2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
yahrzeit2 fields changed- removed
Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
7 tool updates
- First observed
convert-gregorian-to-hebrew - First observed
convert-hebrew-to-gregorian - First observed
daf-yomi - First observed
jewish-holidays-year - First observed
shabbat-times - First observed
torah-portion - First observed
yahrzeit
Related MCP Connectors
Whether Hebrew year is embolismic
Model Context Protocol server for Studex tools, notifications, and profile integrations
Model Context Protocol server for todo.vu task management and time tracking.
A Model Context Protocol server for Wix AI tools
Related MCP Servers
- AlicenseAqualityCmaintenanceA Model Context Protocol plugin for Chinese Tung Shing (黄历/通勝/通胜) almanac calculations112 npm37MIT
- FlicenseAqualityCmaintenanceEnables retrieval of upcoming events from Moodle LMS via the Model Context Protocol.2435-
- AlicenseNot gradedqualityAmaintenanceProvides AI agents with calendar access and syncing capabilities through the Model Context Protocol.1,356AGPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables internationalization tasks such as language detection, hardcoded string extraction, translation JSON analysis, plural rule generation, and locale-aware formatting through the Model Context Protocol.28 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.