# Torah Library (remote · torah.kolsgo.xyz)

Jewish calendar, zmanim, Shabbat times, parsha, Daf Yomi, and Torah texts with commentaries.

- Trust score: 68/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-29

## Components

- remote · `torah.kolsgo.xyz`: 68/100 (this document), [markdown](https://verifymcp.io/servers/xyz-kolsgo-torah-torah-library/torah.md), [page](https://verifymcp.io/servers/xyz-kolsgo-torah-torah-library/torah)

## Channel facts

- Endpoint: `https://torah.kolsgo.xyz/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.1.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-29.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 75/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 6229 tokens (~127/item across 49 items; 49 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 17/100
  - Stability observed for 5 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 85/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 55% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 49 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 50 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Torah Library MCP server?

Torah Library is a hosted endpoint at https://torah.kolsgo.xyz/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http xyz-kolsgo-torah-torah-library 'https://torah.kolsgo.xyz/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "xyz-kolsgo-torah-torah-library": {
      "url": "https://torah.kolsgo.xyz/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "xyz-kolsgo-torah-torah-library": {
      "type": "http",
      "url": "https://torah.kolsgo.xyz/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.xyz-kolsgo-torah-torah-library]
url = "https://torah.kolsgo.xyz/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "xyz-kolsgo-torah-torah-library": {
      "type": "remote",
      "url": "https://torah.kolsgo.xyz/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add xyz-kolsgo-torah-torah-library --url 'https://torah.kolsgo.xyz/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  xyz-kolsgo-torah-torah-library:
    url: "https://torah.kolsgo.xyz/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "xyz-kolsgo-torah-torah-library": {
      "Transport": "http",
      "Url": "https://torah.kolsgo.xyz/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add xyz-kolsgo-torah-torah-library -t streamable-http -u 'https://torah.kolsgo.xyz/mcp'
```

### Other

```json
{
  "mcpServers": {
    "xyz-kolsgo-torah-torah-library": {
      "type": "http",
      "url": "https://torah.kolsgo.xyz/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-29 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-28 (score 67, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-27 (score 67, +1)

No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-25 (score 66, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-24 (score 66)

First indexed and scored.

## MCP tools (49)

### `convert_date` (~218 tokens)

Convert dates (Gregorian ↔ Hebrew)

Convert between Gregorian and Hebrew (Jewish) calendar dates.
\- Gregorian → Hebrew: pass gregorian_date (YYYY-MM-DD). Add end_date to convert a whole range (max ~180 days).
\- Hebrew → Gregorian: pass hebrew_year, hebrew_month, hebrew_day.
Set after_sunset=true when the Gregorian time is after sunset (the Hebrew date advances at nightfall).
Returns the Hebrew date in English and Hebrew letters plus any holidays/events on that day.

Input parameters:

- `after_sunset` (boolean): Treat the Gregorian date as after sunset (Hebrew date = next day).
- `end_date` (string): Optional end of a Gregorian range to convert every day in it.
- `gregorian_date` (string): Gregorian date YYYY-MM-DD. Defaults to today (US Eastern) if nothing else is given.
- `hebrew_day` (integer): Day of the Hebrew month.
- `hebrew_month` (string): Hebrew month name.
- `hebrew_year` (integer): Hebrew year, e.g. 5787.

### `get_jewish_calendar` (~660 tokens)

Jewish calendar events

List Jewish calendar events for a date range: holidays (major, minor, modern Israeli), Rosh Chodesh, fast days, special Shabbatot, weekly parsha, Omer count, molad, Yizkor, Yom Kippur Katan, daily-learning cycles (Daf Yomi, Mishna Yomi, Nach Yomi, Tanakh Yomi, Yerushalmi, Rambam, Chofetz Chaim), and — when a location is given — candle-lighting, havdalah and fast start/end times.
Pick either start+end, or year (+ optional month). Max range ~1 year. Defaults include holidays, Rosh Chodesh, fasts, special Shabbatot and parsha.

Input parameters:

- `candle_minutes` (integer): Minutes before sunset for candle lighting (default 18; Jerusalem 40).
- `end` (string): Range end YYYY-MM-DD.
- `havdalah_minutes` (integer): Havdalah N minutes after sunset instead of at nightfall (e.g. 42, 50, 72).
- `hebrew_date_every_day` (boolean): Add the Hebrew date for every day in range.
- `hebrew_names` (boolean): Return event titles in Hebrew.
- `hebrew_year_mode` (boolean): Interpret year as a Hebrew year (e.g. 5787) and return the whole Hebrew year.
- `include_times` (boolean): Include candle lighting / havdalah / fast times (needs a location).
- `israel` (boolean): Use the Israel holiday/parsha schedule instead of the Diaspora one.
- `latitude` (number): Latitude in decimal degrees (use with longitude + timezone instead of location).
- `learning` (array): Daily learning cycles to include.
- `location` (string): Where the user is. A US ZIP code ("11691"), a city name ("Jerusalem", "London", "Lakewood, NJ"), or a numeric place id returned by find_location. Omit to use the server default.
- `longitude` (number): Longitude in decimal degrees.
- `major_holidays` (boolean)
- `minor_fasts` (boolean)
- `minor_holidays` (boolean)
- `modern_holidays` (boolean): Yom HaAtzmaut, Yom HaShoah, etc.
- `molad` (boolean): Molad announcements.
- `month` (integer): Gregorian month 1-12 (with year).
- `omer` (boolean): Daily Sefirat HaOmer count.
- `parsha` (boolean): Weekly Torah portion on Shabbat.
- `rosh_chodesh` (boolean)
- `special_shabbatot` (boolean): Shabbat Shekalim, Zachor, HaGadol, etc.
- `start` (string): Range start YYYY-MM-DD.
- `timezone` (string): IANA timezone, required with latitude/longitude, e.g. "America/New_York".
- `year` (integer): Gregorian year (or Hebrew year if hebrew_year_mode=true). Used when start/end not given.
- `yizkor` (boolean)
- `yom_kippur_katan` (boolean)

### `get_shabbat_times` (~251 tokens)

Shabbat & Yom Tov times

Candle-lighting and havdalah times for the coming (or a specified) Shabbat and any Yom Tov that week, plus the parsha and holiday Torah readings, for a location.

Input parameters:

- `candle_minutes` (integer): Minutes before sunset for candle lighting (default 18; 40 for Jerusalem).
- `date` (string): Any date in the week you want (defaults to this week).
- `havdalah_minutes` (integer): Havdalah N minutes after sunset; default is nightfall (tzeit, 8.5°).
- `include_readings` (boolean): Include aliyah-by-aliyah Torah reading details.
- `latitude` (number): Latitude in decimal degrees (use with longitude + timezone instead of location).
- `location` (string): Where the user is. A US ZIP code ("11691"), a city name ("Jerusalem", "London", "Lakewood, NJ"), or a numeric place id returned by find_location. Omit to use the server default.
- `longitude` (number): Longitude in decimal degrees.
- `timezone` (string): IANA timezone, required with latitude/longitude, e.g. "America/New_York".

### `get_zmanim` (~268 tokens)

Halachic times (zmanim)

Halachic times of day for a location and date (or date range, max ~7 days recommended): alot hashachar, misheyakir, sunrise (netz), latest Shema and Tefilla (GRA and Magen Avraham), chatzot, mincha gedola/ketana, plag hamincha, sunset (shkia), bein hashmashot, tzeit hakochavim (several opinions), and midnight.

Input parameters:

- `date` (string): Date YYYY-MM-DD (default today).
- `end_date` (string): Optional end date for a range.
- `include_seconds` (boolean): Return times with seconds precision.
- `latitude` (number): Latitude in decimal degrees (use with longitude + timezone instead of location).
- `location` (string): Where the user is. A US ZIP code ("11691"), a city name ("Jerusalem", "London", "Lakewood, NJ"), or a numeric place id returned by find_location. Omit to use the server default.
- `longitude` (number): Longitude in decimal degrees.
- `timezone` (string): IANA timezone, required with latitude/longitude, e.g. "America/New_York".
- `use_elevation` (boolean): Adjust sunrise/sunset for elevation.

### `get_torah_reading` (~147 tokens)

Torah reading schedule (leyning)

Torah and Haftarah readings for a date or date range: parsha or holiday name, each aliyah with verse ranges and counts, maftir, haftarah, and special readings. Supports Israel vs Diaspora and the triennial cycle.

Input parameters:

- `date` (string): Date YYYY-MM-DD (defaults to the coming Shabbat).
- `end_date` (string): End date for a range (max ~1 year).
- `include_weekday` (boolean): Include Monday/Thursday and Rosh Chodesh/holiday weekday readings.
- `israel` (boolean)
- `triennial` (boolean): Return triennial-cycle aliyot.

### `get_yahrzeit_dates` (~82 tokens)

Yahrzeit, Hebrew birthday & anniversary dates

Compute upcoming Gregorian dates for yahrzeits, Hebrew birthdays or Hebrew anniversaries from the original Gregorian date. Handles after-sunset, Adar in leap years, and Cheshvan/Kislev edge cases. Up to 10 entries at once.

Input parameters:

- `entries` (array, required)
- `years` (integer): How many years ahead to list.

### `find_location` (~69 tokens)

Find a location

Search for a city/place by name and get place ids, country and region. Use the returned id as the "location" argument of other tools when a city name is ambiguous.

Input parameters:

- `query` (string, required): City or place name, e.g. "Jerusalem", "Monsey", "Paris".

### `get_text` (~377 tokens)

Get a Jewish text

Fetch any text from the Jewish library by reference, in Hebrew/Aramaic and/or translation, aligned segment by segment.
Covers Tanakh, Mishnah, Talmud Bavli & Yerushalmi, Midrash, Rambam, Shulchan Arukh, commentaries (e.g. "Rashi on Genesis 1:1"), Siddur, Zohar, Chasidut, Musar, responsa and more.
Reference examples: "Genesis 1:1-5", "Bereishit 1", "Berakhot 2a", "Berakhot 2a:3-7", "Mishnah Avot 1", "Mishneh Torah, Sabbath 1:1", "Shulchan Arukh, Orach Chayim 1", "Psalms 23", "Ramban on Exodus 20:2".
Returns segments as {n, he, en}; includes next/previous section refs for paging. If a reference fails, try resolve_name.

Input parameters:

- `footnotes` (boolean): Keep translator footnotes inline.
- `language` (string): "both" = original + translation; "all" = every available version.
- `max_segments` (integer): Max segments to return.
- `ref` (string, required): Text reference, e.g. "Genesis 1:1-10" or "Berakhot 2a".
- `translation_language` (string): Translation language family instead of English, e.g. "french", "spanish", "german", "russian", "italian".
- `version_title` (string): Exact version title to use (see get_text_versions).
- `vowels` (string): Hebrew vowels/cantillation: "full" keeps nikud, "none" strips it.

### `get_texts_bulk` (~108 tokens)

Get several short texts at once

Fetch many short references in one call (e.g. a list of verses or commentary lines). Returns Hebrew and English for each. Up to 30 references.

Input parameters:

- `refs` (array, required): List of references, e.g. ["Genesis 1:1", "Exodus 20:2", "Rashi on Genesis 1:1:1"].
- `vowels` (string): Hebrew vowels/cantillation: "full" keeps nikud, "none" strips it.

### `resolve_name` (~100 tokens)

Resolve / autocomplete a name or reference

Autocomplete and identify a book title, reference, author, topic or person from partial, misspelled, transliterated or Hebrew input ("bava metzia", "bereishis", "ברכות ב", "Rambam"). Tells you whether the input is a valid reference and gives canonical names.

Input parameters:

- `limit` (integer)
- `name` (string, required)
- `type` (string): Restrict to one kind of result.

### `parse_reference` (~43 tokens)

Parse / validate a reference

Validate and normalize a text reference: canonical English and Hebrew forms, the book it belongs to, its structure, and previous/next sections.

Input parameters:

- `ref` (string, required)

### `find_references_in_text` (~111 tokens)

Detect source citations in text

Scan free text (a dvar Torah, article, shiur notes) and detect every citation of a Jewish source in it (e.g. "Genesis 1:1", "Berakhot 2a", "Rambam Hilchot Shabbat 1:1"). Returns the matched spans and their canonical references.

Input parameters:

- `language` (string)
- `text` (string, required): Body text to scan.
- `title` (string): Optional title of the piece (also scanned).

### `get_task_status` (~40 tokens)

Check a background task

Check the status/result of a background task (e.g. a long reference-detection job) by task_id.

Input parameters:

- `task_id` (string, required)

### `search_library` (~225 tokens)

Full-text search of the library

Full-text search across the entire Jewish library (texts), or across user-made source sheets. Hebrew or English queries.
\- exact=true matches the exact word forms; default matching is lemmatized (finds grammatical variants).
\- filters narrow by category/book path, e.g. ["Tanakh"], ["Talmud/Bavli"], ["Mishnah/Seder Moed"], ["Halakhah/Shulchan Arukh"], ["Tanakh/Torah/Genesis"].
\- sort "relevance" or "chronological" (by composition date).
Returns matching references with highlighted snippets, total hit count and a breakdown of hits by category (use it to refine filters). Paginate with offset.

Input parameters:

- `exact` (boolean)
- `filters` (array): Category/book paths to restrict to.
- `offset` (integer)
- `query` (string, required)
- `search_in` (string)
- `size` (integer)
- `slop` (integer): Allowed word distance for multi-word phrases (default 10 for texts).
- `sort` (string)

### `get_commentaries` (~278 tokens)

Commentaries & connected sources for a passage

Get commentaries and other sources connected to a passage.
\- With commentator (e.g. "Rashi", "Ramban", "Ibn Ezra", "Sforno", "Tosafot", "Or HaChaim", "Onkelos", "Kli Yakar"): returns that commentator's full text on the passage.
\- Without commentator: lists all connected sources in a category ("Commentary" by default; also Targum, Midrash, Talmud, Halakhah, Chasidut, Kabbalah, Musar, Jewish Thought, Liturgy, Responsa, Quoting Commentary, …) grouped by work, optionally with text.
Works for Tanakh, Talmud, Mishnah, Rambam, Shulchan Arukh, etc.

Input parameters:

- `category` (string)
- `commentator` (string): Commentator/work name to fetch in full.
- `include_text` (boolean): Include the text of connected sources (first `limit`).
- `language` (string)
- `limit` (integer)
- `ref` (string, required): Passage, e.g. "Genesis 1:1" or "Berakhot 2a".
- `vowels` (string): Hebrew vowels/cantillation: "full" keeps nikud, "none" strips it.

### `get_related_content` (~69 tokens)

Everything related to a passage

Overview of everything connected to a passage: counts of linked sources by category and book, related topics, source sheets that use it, manuscript images, and related web articles. Use it to explore before drilling in with get_commentaries.

Input parameters:

- `include` (array)
- `ref` (string, required)

### `get_text_versions` (~92 tokens)

List editions/translations of a book

List every available edition and translation of a book (language, version title, license, source). Use a version_title with get_text to read a specific translation.

Input parameters:

- `book` (string, required): Book title, e.g. "Genesis", "Berakhot", "Mishneh Torah, Sabbath".
- `language` (string): Filter by language code, e.g. "en", "he", "fr".

### `list_translations` (~69 tokens)

Translation languages & translated books

Without a language: list every language code that has translations in the library. With a language code (e.g. "fr", "es", "de", "ru", "yi", "lad"): list every book translated into that language with its version titles.

Input parameters:

- `language` (string)

### `get_manuscripts` (~51 tokens)

Manuscript & early print images

Images of manuscripts and early printed editions (e.g. Vilna Shas, Venice 1523, Munich manuscript) for a passage, with image and thumbnail URLs.

Input parameters:

- `ref` (string, required)

### `get_random_text` (~80 tokens)

Random text

Get a random passage, optionally limited to specific books or categories (e.g. categories ["Tanakh"], titles ["Psalms", "Proverbs"]).

Input parameters:

- `categories` (array)
- `titles` (array)
- `vowels` (string): Hebrew vowels/cantillation: "full" keeps nikud, "none" strips it.

### `get_passage_context` (~49 tokens)

Find the full passage a segment belongs to

Given one or more segment references (e.g. "Berakhot 2a:1"), return the full logical passage/sugya each belongs to.

Input parameters:

- `refs` (array, required)

### `get_text_image` (~57 tokens)

Shareable image of a verse

Generate a shareable image (PNG) of a short passage, sized for a social platform.

Input parameters:

- `language` (string)
- `platform` (string)
- `ref` (string, required): Short passage, ideally one verse/segment.

### `browse_library` (~130 tokens)

Browse the library catalog

Browse the library's table of contents by category. With no path: top-level categories (Tanakh, Mishnah, Talmud, Midrash, Halakhah, Kabbalah, Liturgy, Jewish Thought, Tosefta, Chasidut, Musar, Responsa, Second Temple, Reference). With a path like "Talmud/Bavli/Seder Moed" or "Halakhah/Shulchan Arukh": that category's description, subcategories and books.

Input parameters:

- `category_path` (string): Slash-separated path, e.g. "Tanakh/Torah".

### `list_book_titles` (~100 tokens)

Search book titles

Search the list of all books in the library by (part of) an English or Hebrew title, optionally within a category path. Returns canonical titles with their category.

Input parameters:

- `category_path` (string): Limit to a category, e.g. "Talmud/Bavli".
- `contains` (string): Substring to match, e.g. "Rashi", "Mishneh Torah", "תהלים".
- `limit` (integer)

### `get_book_info` (~131 tokens)

Book details & structure

Metadata for a book: author(s), era, composition date and place, description, categories, alternative titles, section structure (e.g. Chapter/Verse, Daf/Line), chapter lengths, and alternate structures (e.g. parshiyot for Torah books). Optionally text availability counts.

Input parameters:

- `include_availability` (boolean): Include counts of available Hebrew/English text.
- `include_structure` (boolean): Include chapter lengths (shape).
- `title` (string, required): Book title, e.g. "Genesis", "Berakhot", "Mishneh Torah, Sabbath", "Kuzari".

### `get_book_raw_index` (~48 tokens)

Full raw book schema

Full, unabridged index record for a book (complete schema tree, match templates, alternate structures). Use get_book_info for a friendly summary.

Input parameters:

- `title` (string, required)

### `get_author_works` (~75 tokens)

Works by an author

List the books written by an author. Pass the author slug (e.g. "rashi", "rambam", "ramban", "ibn-ezra", "rabbi-yosef-karo") — find slugs with resolve_name type AuthorTopic.

Input parameters:

- `author_slug` (string, required)

### `get_library_statistics` (~122 tokens)

Library statistics

Statistics:
\- kind "word_count": number of words in a specific version of a book (needs title, version_title, language he/en).
\- kind "links_between_categories": how many links connect two categories (e.g. Tanakh ↔ Talmud).
\- kind "text_availability": raw availability counts for a book.

Input parameters:

- `category_a` (string)
- `category_b` (string)
- `kind` (string, required)
- `language` (string)
- `title` (string)
- `version_title` (string)

### `get_term` (~59 tokens)

Look up a term

Look up a named term (parsha names, section names, holidays, etc.) with its Hebrew and English titles and alternate spellings, e.g. "Noach", "Bereshit", "Perek".

Input parameters:

- `name` (string, required)

### `dictionary_lookup` (~178 tokens)

Hebrew/Aramaic dictionary

Look up a Hebrew or Aramaic word in classic dictionaries (Jastrow, BDB, Klein, and others). Handles prefixes/inflected forms. Pass context_ref to disambiguate using the passage where the word appears.

Input parameters:

- `always_split` (boolean)
- `consonants_only` (boolean): Match on consonants, ignoring vowels.
- `context_ref` (string): Passage the word appears in, e.g. "Berakhot 2a:1".
- `dictionary` (string): Only return entries from this dictionary, e.g. "Jastrow Dictionary", "Klein Dictionary", "BDB Dictionary".
- `max_entries` (integer)
- `never_split` (boolean): Don't try splitting prefixes off the word.
- `word` (string, required): Hebrew/Aramaic word (with or without vowels).

### `dictionary_autocomplete` (~61 tokens)

Dictionary word completion

Autocomplete a partial Hebrew/Aramaic word against a dictionary ("Jastrow Dictionary", "Klein Dictionary", "BDB Augmented Strong").

Input parameters:

- `dictionary` (string)
- `limit` (integer)
- `prefix` (string, required)

### `get_learning_schedules` (~147 tokens)

Daily learning schedules

Today's (or any date's) study schedule items with exact references: Parashat HaShavua, Haftarah, Daf Yomi, 929, Daily Mishnah, Daily Rambam (1 and 3 chapters), Daf a Week, Halakhah Yomit, Arukh HaShulchan Yomi, Tanakh Yomi, Chok LeYisrael, Tanya Yomi, Yerushalmi Yomi, and more.

Input parameters:

- `custom` (string): Haftarah custom.
- `date` (string): YYYY-MM-DD (default today).
- `israel` (boolean)
- `timezone` (string): IANA timezone used for 'today'.

### `get_parasha` (~70 tokens)

Parasha details

Details for a weekly Torah portion by name (e.g. "Noach", "Lech Lecha", "Ki Tisa"): full reference, aliyot, haftarah, and the next date it will be read.

Input parameters:

- `parasha` (string, required): Parasha name in English transliteration.

### `get_topic` (~144 tokens)

Topic page (sources by theme)

Get a curated topic — a person (e.g. "moses", "rambam", "rabbi-akiva"), concept ("teshuvah", "kindness"), holiday ("passover"), mitzvah or object — with its description and its top sources, ordered by importance. Use resolve_name (type "Topic") or search_topics to find slugs.

Input parameters:

- `include_related_topics` (boolean)
- `include_source_text` (boolean): Also fetch the text of the top sources (first 10).
- `max_sources` (integer)
- `slug` (string, required): Topic slug, e.g. "shabbat", "prayer", "abraham".

### `search_topics` (~43 tokens)

Search/list topics

List topics, optionally filtered by a word in the title. Without a filter returns the most prominent topics.

Input parameters:

- `contains` (string)
- `limit` (integer)

### `get_topic_graph` (~80 tokens)

Topic relationship graph

Get the network of topics connected to a topic (e.g. students/teachers of a sage, parts of a concept). Optionally restrict to one link type such as "is-a", "has-student", "has-teacher", "related-to", "part-of".

Input parameters:

- `link_type` (string)
- `slug` (string, required)

### `recommend_topics` (~41 tokens)

Topics for passages

Recommend topics relevant to one or more passages (e.g. for tagging a source sheet or finding themes in a set of verses).

Input parameters:

- `refs` (array, required)

### `get_random_source_by_topic` (~30 tokens)

Random source on a random topic

Get a random source together with the topic it illustrates — handy for a daily inspiration or quiz.

### `get_seasonal_topic` (~73 tokens)

Topic for this week's parsha / upcoming holiday

Get the curated topic for the current parsha (kind "parasha") or the current/upcoming holiday (kind "holiday"), with description and key sources.

Input parameters:

- `date` (string): For holiday: date to check (default today).
- `israel` (boolean)
- `kind` (string, required)

### `get_source_sheet` (~64 tokens)

Get a source sheet

Get a user-made source sheet by id: title, author, tags, and each source (reference + text) and commentary block in order. Pass several ids to fetch up to 10 sheets.

Input parameters:

- `ids` (array, required)
- `max_sources` (integer)

### `list_source_sheets` (~100 tokens)

Find source sheets

List public source sheets:
\- by passage (ref): sheets that use a given text;
\- by user (user_id): a user's sheets, sortable by "views" or "date", with paging;
\- latest: newest public sheets (no ref/user_id).

Input parameters:

- `limit` (integer)
- `offset` (integer)
- `ref` (string)
- `sort_by` (string)
- `user_id` (integer)

### `get_sheet_tags` (~73 tokens)

Source sheet tags

Source-sheet tags: "trending" (this week's trending tags), "all" (every tag, sorted by count or alphabetically), or a specific user's tags.

Input parameters:

- `kind` (string)
- `limit` (integer)
- `sort_by` (string)
- `user_id` (integer)

### `check_sheet_modified` (~56 tokens)

Has a sheet changed?

Check whether a source sheet has been modified since a timestamp (ISO date/time).

Input parameters:

- `id` (required)
- `since` (string, required): ISO timestamp, e.g. 2026-01-01T00:00:00

### `get_collections` (~73 tokens)

Source sheet collections

Browse collections of source sheets: pass slug for one collection (with its sheets), user_id for a user's collections, or neither to list public collections (filterable by name).

Input parameters:

- `contains` (string)
- `limit` (integer)
- `slug` (string)
- `user_id` (integer)

### `get_user_profile` (~41 tokens)

Public user profile

Public profile of a library user/author of source sheets, by profile slug (e.g. "dovid-birk").

Input parameters:

- `slug` (string, required)

### `todays_learning` (~142 tokens)

Today in Jewish time & learning

One-call daily briefing: today's Hebrew date, holidays/events, the weekly parsha, and every daily learning schedule (Daf Yomi, Rambam, Mishnah, 929, Halakhah Yomit, Tanya, etc.) with exact references. Optionally include the opening lines of each study item.

Input parameters:

- `date` (string)
- `include_opening_text` (boolean): Include the first lines of each study item.
- `israel` (boolean)
- `only` (array): Only these schedules, e.g. ["Daf Yomi", "Daily Rambam", "Parashat Hashavua"].
- `timezone` (string)

### `parsha_study_pack` (~166 tokens)

Parsha study pack

Everything to study the weekly Torah portion: the reading (for a date, or by parsha name), aliyot and haftarah, the text of a chosen aliyah (Hebrew + English), a commentator's notes on its opening verses, and the parsha's topic and themes. Great for preparing a dvar Torah.

Input parameters:

- `aliyah` (integer): Which aliyah's text to include.
- `commentator` (string)
- `date` (string): Any date — uses that week's Shabbat reading. Default: this week.
- `israel` (boolean)
- `parasha` (string): Or a parsha name, e.g. "Vayera".
- `verses_of_commentary` (integer)
- `vowels` (string)

### `holiday_sources` (~113 tokens)

Holiday guide with sources

For the next (or a named) Jewish holiday: its dates, a description, the Torah/Haftarah readings, and key classical sources with text. Examples: "Sukkot", "Chanukah", "Purim", "Pesach", "Shavuot", "Tisha B'Av", "Rosh Hashana".

Input parameters:

- `holiday` (string): Holiday name; default is the next major/minor holiday from today.
- `israel` (boolean)
- `max_sources` (integer)

### `shabbat_briefing` (~202 tokens)

Shabbat briefing

A ready-to-read Friday summary for a location: candle-lighting and havdalah times, the parsha with aliyot and haftarah, the opening verse of the parsha in Hebrew and English, and any holiday that week.

Input parameters:

- `candle_minutes` (integer)
- `date` (string): Any date in the week (default this week).
- `havdalah_minutes` (integer)
- `latitude` (number): Latitude in decimal degrees (use with longitude + timezone instead of location).
- `location` (string): Where the user is. A US ZIP code ("11691"), a city name ("Jerusalem", "London", "Lakewood, NJ"), or a numeric place id returned by find_location. Omit to use the server default.
- `longitude` (number): Longitude in decimal degrees.
- `timezone` (string): IANA timezone, required with latitude/longitude, e.g. "America/New_York".

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/xyz-kolsgo-torah-torah-library/torah#diagnostics

## Score history

- 2026-09-29: 68
- 2026-09-28: 67
- 2026-09-27: 67
- 2026-09-26: 66
- 2026-09-25: 66
- 2026-09-24: 66

## Common questions

### What is the Torah Library MCP server?

Torah Library is an MCP server listed in the public MCP registry as xyz.kolsgo.torah/torah-library. Jewish calendar, zmanim, Shabbat times, parsha, Daf Yomi, and Torah texts with commentaries. This page covers its hosted endpoint (https://torah.kolsgo.xyz/mcp).

### Is the Torah Library MCP server safe to use?

Torah Library scores 68 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Torah Library MCP server expose?

Torah Library exposes 49 tools: convert_date, get_jewish_calendar, get_shabbat_times, get_zmanim, get_torah_reading, and 44 more. Their descriptions and schemas cost roughly 6,006 tokens of context every time the server is loaded.

### Does the Torah Library MCP server require authentication?

No. We connected to Torah Library without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Torah Library MCP server still maintained?

Torah Library is still listed as active in the MCP registry. We last reached this channel on 29 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://torah.kolsgo.xyz/mcp
- Website: https://torah.kolsgo.xyz/docs
- Changelog RSS feed: https://verifymcp.io/servers/xyz-kolsgo-torah-torah-library/torah.xml
- Changelog JSON feed: https://verifymcp.io/servers/xyz-kolsgo-torah-torah-library/torah.json
- HTML version of this page: https://verifymcp.io/servers/xyz-kolsgo-torah-torah-library/torah
