Ramayana Book MCP Server
Server Details
Valmiki Ramayana verses: lookup, search and verse-of-the-day in 4 languages
- Status
- Healthy
- Uptime
- 99.8% over 14 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2024-11-05
- URL
- Repository
- svenkatreddy/ramayana-mcp
- GitHub Stars
- 0
- Server Listing
- ramayana-mcp
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 5 tools
Each tool targets a distinct retrieval granularity or mode: chapter-level (get_sarga), verse-level (get_verse), browsing (list_kandas), lookup (search_verses), and a novelty endpoint (verse_of_the_day). There is no realistic way to confuse these, since the resource scope and argument shape differ clearly.
Four of five tools follow a clean verb_noun convention (get_sarga, get_verse, list_kandas, search_verses) with consistent snake_case. verse_of_the_day deviates into a noun phrase, a minor but noticeable break in the pattern.
Five tools is a tight, well-scoped surface for a read-only scripture corpus server. Every tool covers a distinct access pattern and none appears redundant or padded.
The surface covers browsing, chapter retrieval, single-verse retrieval, full-text search, and a daily-verse feature, which satisfies the core read-only lifecycle for this domain. Minor gaps exist: no way to fetch a contiguous verse range or a kanda-level summary, and search result pagination/limits are not exposed as a tool.
Available Tools
5 toolsget_sargaAInspect
Fetch every verse of one sarga (chapter), with Sanskrit and available translations
| Name | Required | Description | Default |
|---|---|---|---|
| kanda | Yes | Kanda name, e.g. ayodhya_kanda | |
| langs | No | Languages to include; defaults to all available | |
| chapter | Yes | Sarga (chapter) number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the behavioral burden. It usefully discloses return content (Sanskrit plus whatever translations exist, implying partial availability), but says nothing about response size for a full chapter, verse ordering, or behavior for an invalid kanda/chapter.
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 with no filler; the scope and returned content are stated up front.
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 read-only fetch with a fully documented three-parameter schema and no output schema, the description covers the essential what and roughly what comes back. It stops short of describing ordering or response size, which matters for a whole-chapter fetch.
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 kanda, chapter, and langs are already documented, including the 'defaults to all available' behavior for langs. The description only reinforces the language aspect via 'with Sanskrit and available translations'; it adds no format or naming detail beyond the schema.
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?
States a specific verb and resource with an explicit scope: fetch every verse of one sarga (chapter). The 'every verse' phrasing separates it from get_verse by implication, but no sibling is named outright.
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?
Usage is only implied: the bulk-per-chapter scope suggests this tool when a whole chapter is needed rather than a single verse. There is no explicit statement of when to prefer get_verse, search_verses, or list_kandas, and no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_verseBInspect
Fetch a single verse by kanda, chapter (sarga) and verse number, with Sanskrit and available translations
| Name | Required | Description | Default |
|---|---|---|---|
| kanda | Yes | Kanda name, e.g. bala_kanda | |
| verse | Yes | Verse number within the sarga | |
| chapter | Yes | Sarga (chapter) number |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. 'Fetch' and 'available translations' usefully signal a read operation whose translation fields may be absent, but nothing is said about invalid kanda/verse handling, missing-translation behavior, or response shape beyond the two content classes.
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?
One sentence, front-loaded with the verb and resource, with zero filler. Nothing could be removed without losing information.
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 no output schema, the description does the necessary work by naming the returned content (Sanskrit plus translations). Only edge-case behavior (invalid identifiers, translation coverage) is left unstated, which is a minor gap for a simple lookup tool.
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 every parameter is documented in the schema, including the sarga gloss. The description repeats the three key names and the chapter/sarga equivalence but adds no format or constraint detail beyond the schema, so baseline 3 applies.
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?
States a specific verb ('Fetch') and a precisely scoped resource ('a single verse by kanda, chapter (sarga) and verse number'), plus what comes back (Sanskrit and available translations). The word 'single' implicitly separates it from get_sarga, but no sibling is named explicitly.
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 explicit guidance on when to pick this over search_verses, get_sarga, or verse_of_the_day. The agent must infer that this is the direct-lookup path from the wording alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_kandasAInspect
List the seven kandas of the Ramayana with their Sanskrit names and chapter counts
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden, and it does disclose what comes back (Sanskrit names and chapter counts) for a fixed seven-item list, implying no pagination or side effects. It stops short of stating explicitly that this is a read-only, parameterless, static reference call.
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 sentence with no filler; the resource and the return content are both front-loaded. Nothing could be cut without losing information.
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 parameterless reference lookup with no output schema, the description says enough: what is listed, how many, and which attributes each entry carries. An agent can call it and know what to expect without further documentation.
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 tool takes zero parameters, so there is nothing for the description to disambiguate; baseline applies. The mention of 'Sanskrit names and chapter counts' describes output fields rather than inputs, which is harmless but not parameter semantics.
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?
States a specific verb (list) and resource (kandas of the Ramayana), plus scope (seven of them) and the content of each entry (Sanskrit name, chapter count). It is clearly distinguishable from the verse/sarga siblings, which target individual units rather than the top-level enumeration.
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 this is the top-level enumeration from which you'd descend into get_sarga or get_verse, but it never says so explicitly and names no alternatives or when-not-to-use conditions. Usage is inferable but not guided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_versesAInspect
Full-text search across Sanskrit and English/Hindi/Telugu translations; returns matching verse references with snippets
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default 10) | |
| query | Yes | Search text, e.g. a name, phrase or Sanskrit word |
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 usefully discloses that results are verse references with snippets and that search spans multiple language translations, but it does not describe matching behavior, ranking, pagination, or whether the operation is read-only, leaving notable gaps.
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 compact sentence with the purpose and return shape front-loaded. Every part earns its place: search scope, languages, and result format.
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 two-parameter read-oriented search tool with fully documented parameters, the description covers the core scope and return format. It does not explain ranking or matching nuances, but no output schema exists and the schema documents parameters well, so it is nearly complete for correct invocation.
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 defines both query and limit with examples, minimums, defaults, and maximums. The description adds no parameter-specific meaning beyond the schema, so the 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 states a specific verb and resource: 'Full-text search' across Sanskrit and English/Hindi/Telugu translations, returning matching verse references with snippets. It implicitly distinguishes itself from sibling retrieval tools like get_verse and get_sarga by being a text search rather than an identifier-based lookup, but it does not explicitly name or contrast those siblings.
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 usage through 'full-text search' and the supported languages, suggesting it is appropriate when searching for textual matches rather than fetching a known verse. However, it never says when to use this versus get_verse or get_sarga, and provides no exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verse_of_the_dayAInspect
A deterministic verse of the day: the same calendar date always yields the same verse, drawn uniformly from the whole corpus
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Date as YYYY-MM-DD; defaults to today (UTC) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the two non-obvious traits: determinism (same date -> same verse) and uniform sampling over the corpus, which tell an agent the result is stable and not curated/weighted. It stops short of describing the return payload (e.g., verse text vs. reference) or corpus size.
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 with no filler; the determinism guarantee, the primary behavioral fact, appears first.
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-optional-parameter read tool, the essential unknown (is the output reproducible?) is answered and the date parameter is fully covered by schema. The notable remaining gap is that no output schema exists and the description does not say what a 'verse' includes (text, reference, translation).
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 documents the YYYY-MM-DD format and the UTC 'today' default, so the description adds no syntax detail. At most 'same calendar date' reinforces the date-keying semantics, which is baseline-level contribution.
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?
Names a specific resource ('verse of the day') and a precise behavioral property (deterministic, date-seeded). That is enough to tell it apart from get_verse, search_verses, and the other siblings in practice, though it never explicitly contrasts itself with 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?
Usage is implied: an agent infers it is for 'give me the verse for today/this date' rather than lookup or search. There is no explicit when-to-use, when-not-to-use, or named alternative such as 'for arbitrary filtering use search_verses'.
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.
5 tool updates
- First observed
get_sarga - First observed
get_verse - First observed
list_kandas - First observed
search_verses - First observed
verse_of_the_day
Related MCP Connectors
Full Bhagavad Gita (Sanskrit + English) and Ganguli's Mahabharata: search verses and passages.
Bhagavad Gita MCP — Hindu scripture / Vedic text. Sanskrit verses (slokas) with English…
The Bhagavad Gita a few verses a day in Sanskrit with English, any verse, and the whole Gita.
Hindu devotional audio, katha, aartis, Gita, temple stories and festival guides in Hindi and English
Related MCP Servers
- AlicenseAqualityAmaintenanceMCP server for the full Pāli Tipiṭaka — ~444,000 segments at parity with SuttaCentral (Sutta + Vinaya + Abhidhamma). Hybrid search, full-sutta fetch with cross-references, segment-aligned translation comparison, and Pāli word lookup. Offered as Dhamma Dāna.1115 PyPI12MIT
- AlicenseAqualityCmaintenanceHosted Streamable HTTP MCP server for Vedic astrology: panchang, kundali (birth chart), matchmaking, dashas, doshas, muhurta and 16 tools computed by a precision astronomy engine.1760 npmMIT

bda-mcpofficial
AlicenseNot gradedqualityDmaintenanceAn MCP server providing Jyotish, Panchang, and Sanatan Dharma knowledge tools including panchang computation, festival calendars, muhurat windows, Jyotish concept explanations, and a source-grounded Sanatan encyclopedia with citations and provenance metadata.MIT- AlicenseAqualityCmaintenanceEnables read-only, deterministic MCP access to scholarly Sanskrit data such as sūtras, dhātus, śabdas, and stored rūpāṇi. Supports offline search, retrieval, form lookup, pagination, and provenance-aware evidence for downstream agents.11MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.