# app.listentosadhu/corpus

Read-only semantic search over Vedic scripture verses, commentaries, and recorded lectures.

- **Type:** MCP server
- **Trust:** 60/100 (B), scored on the content rubric
- **Verification:** community-indexed — nobody has claimed this listing
- **Version:** 1.0.1
- **Author:** app.listentosadhu
- **License:** Unknown
- **Endpoints:** streamable-http https://mcp.listentosadhu.app/mcp
- **Source:** https://listentosadhu.app
- **Endpoint health:** reachable (last checked 2026-09-29T01:54:17.768Z, 5 samples) — uptime is not a security property and is not part of the trust score
- **Compatible clients:** claude-code, cursor, copilot, chatgpt, gemini (basis: transport)

## Trust

60/100 (B), scored on the content rubric
- Publisher verified: no
- Install scripts: nothing suspicious found
- Prompt-injection scan: clean
- Obfuscation scan: clean
- Evidence age: 27 days

## Security scan

- **Status:** clean
- **Scanned:** 2026-09-09T05:17:45.604Z
- **Version scanned:** live
- **CVEs:** no coverage — this entry has no package coordinates to query OSV against, so "no known CVEs" is NOT asserted for it.

## Tools

21 declared. Observed from a live `tools/list` probe.
- `author_list` — List all authors.
- `author_resolve` — Find a author by name (fuzzy).
- `document_get` — Get a document (commentary/prose_chapter/letter) by id.
- `document_list` — List documents at a reference / in a book. A verse's purport = document_list(source, tokens, kind:"commentary").
- `excerpt_prepare` — Generate (or fetch, if cached) the audio clip for a lecture passage and return its playable URL. This is the excerpt player's Play action — it is called for you
- `excerpt_render` — Let the user HEAR a lecture passage inline. Call this when the user wants to LISTEN to a specific moment in a track — e.g. from a search(types:["track"]) hit, p
- `location_list` — List all locations.
- `location_resolve` — Find a location by name (fuzzy).
- `media_render` — Show/play an existing corpus VIDEO clip inline. Call this when the user wants to WATCH a clip found via search(types:["media"]) — pass the hit's media_id. Rende
- `search` — Semantic + lexical search over the corpus. Returns verses, documents, track passages and titles matching a natural-language query, each with the id needed to fe
- `source_get` — Get one book by id or code ("source_…" or "BG"/"БГ").
- `source_list` — List all books (Caitanya-caritāmṛta is three sources).
- `source_resolve` — Find a book by name (fuzzy): "gita", "бхагаватам", "CC Madhya".
- `track_get` — Get a track (lecture/conversation): metadata, cited references, transcript/pdf availability.
- `track_list` — List tracks, filterable by reference (source[+tokens] = tracks citing it), author/location/kind/date/lang. No filter ⇒ recent tracks (date desc).
- `transcript_window` — Read a track's transcript around a time window (from a search track hit or track_list). Widen with pad_ms.
- `verse_get` — Fetch a verse's raw fields for your own reasoning (NOT for display — to show a verse to the user, use verse_render). Returns original script + transliteration a
- `verse_list` — List the verses of a book / chapter. Skips .0 chapter summaries; collapses merged verses into one item with a covers span.
- `verse_render` — Show a verse to the user. THE DEFAULT way to display/read a scripture verse: renders an inline card with the original script (centered), transliteration in the 
- `verse_synonyms` — Fetch the word-by-word ("Synonyms") as a raw {word, meaning} array for one verse translation (data — verse_render already shows the word-by-word inside the card
- `verse_translation` — Fetch the text of ONE translation of a verse (data, not a card — to display a verse use verse_render). Defaults to the canonical (kind=canonical); pass a `kind`

## Install

**Verdict: review** — Installable, but 2 things to check first: No CVE coverage: this entry has no npm/PyPI coordinates to query OSV against, so "no known vulnerabilities" is not a claim that can be made about it.
**Cautions** (coverage gaps and advisories — never blocking)
- No CVE coverage: this entry has no npm/PyPI coordinates to query OSV against, so "no known vulnerabilities" is not a claim that can be made about it.
- No publisher has proved control of this listing; it is indexed, not vouched for.
**Config** (claude-code):
```json
"{\n  \"mcpServers\": {\n    \"corpus\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.listentosadhu.app/mcp\"\n    }\n  }\n}"
```

## Blast radius

Contained to moderate — no credential declaration found, from the publisher, the upstream registry, or the README. Known so far: runs on someone else's infrastructure; read-only tool surface.
- Floor 9, ceiling 27 (tier: unknown)
- `unknown` means the floor and ceiling land in different bands — not measured enough to name one. It does not mean low.
- This is impact, not likelihood. A high radius is not a defect: a filesystem server is supposed to write files. It is never part of the trust score.

## Machine-readable views of this entry

- Signed JSON: https://forgeregistry.com/api/v1/packages/app.listentosadhu%2Fcorpus
- Install plan: https://forgeregistry.com/api/v1/packages/app.listentosadhu%2Fcorpus/install-plan
- Alternatives: https://forgeregistry.com/api/v1/alternatives/app.listentosadhu%2Fcorpus
- HTML page: https://forgeregistry.com/registry/app.listentosadhu%2Fcorpus
- MCP: POST https://forgeregistry.com/api/mcp → `forge_get_package` / `forge_install_plan`

## About this document

Generated by Forge (https://forgeregistry.com) — a compact rendering of the same record served, signed, at the JSON URL above. Trust and scan facts are the registry's own measurements; anything Forge did not measure is named as unmeasured rather than omitted.
