Vedaword

Sanskrit scripture search: Mahabharata, Upanishads, Gita; cited verses, honest no-answer.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
97%
이름 품질
95%
오염 위험
100%
권한 일치
90%
프로토콜 준수
100%

발견 사항 (1)

  • LOWTool 'browse_work' suggests web access but openWorldHint=falsebrowse_work에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,119토큰 (도구 정의)
~2.6 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.44%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "library": {
      "url": "https://mcp.vedaword.com"
    }
  }
}

원격 엔드포인트

https://mcp.vedaword.comstreamable-http

할 수 있는 일

도구 목록

도구 (8)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_texts(query, language, works, parts, limit, ...)

Search the Vedaword library of Sanskrit scripture by meaning as well as by wording, so a paraphrased question works and a Sanskrit term reaches passages written in another script. This is the first thing to call for any factual question about what the scriptures say. Start here when you have words: a question, a phrase, a term. When you already have a verse and want its parallels, use find_similar_verses instead; to read a known verse whole, use get_verse; to read a chapter or a book in order, use browse_work. Returns passages with an exact citation, a URL and the version hash of the text quoted. Read `confidence` before using the results. "none" means the library has no answer and the result list is empty — report that to the user instead of reaching for something related. "low" means the passages are leads, not answers. `matched_by` says how each was found: a passage found only by "vector" shares no words with the query.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "description": "A question, a phrase, a Sanskrit term, or a citation such as \"BG 2.47\". Any language, and Sanskrit in Devanāgarī or IAST. Quote the string to require the exact wording."
    },
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    },
    "works": {
      "description": "Restrict to these works by slug — see list_works. Omit to search all.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "parts": {
      "description": "Which part of a verse to search: `verse` is the Sanskrit source text, `translation` the literary translation, `word_by_word` the gloss table, `commentary` Vedaword's own exposition, `bhashya` an ācārya's original commentary. Omit to search all.",
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "verse",
          "translation",
          "word_by_word",
          "commentary",
          "bhashya"
        ]
      }
    },
    "limit": {
      "description": "Passages to return. Default 8.",
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    },
    "full_text": {
      "description": "Return each passage whole instead of an excerpt. Use when you intend to quote; excerpts are for deciding what to quote.",
      "type": "boolean"
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_verse(verse, language, context)

Fetch one verse whole: the Sanskrit in Devanāgarī and IAST, the word-by-word breakdown with the meaning each word carries in this passage, the literary translation, the commentary, and optionally the surrounding verses. Call it after search_texts when you are going to quote, and whenever the user names a verse. The word-by-word table is what lets you explain or re-translate a line honestly instead of trusting a finished translation. Accepts citations as people write them, not only internal ids. To read a chapter or a whole book in order, use browse_work. To read on around one verse, call this again with `context` 5 and then with the `unit_id` of the last neighbour marked "after"; each reply carries the five verses on either side with their translations.

입력 스키마

{
  "type": "object",
  "properties": {
    "verse": {
      "type": "string",
      "minLength": 1,
      "description": "A citation — \"BG 2.47\", \"Бхагавад-гита 2.47\", \"Mahabharata 1.1.1\", \"Upanishads Mundaka 2.2.8\" — or a `unit_id` from an earlier result."
    },
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    },
    "context": {
      "description": "Verses to include either side, within the same chapter. Use 1–2 when the argument depends on what surrounds the verse. Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 5
    }
  },
  "required": [
    "verse"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢lookup_sanskrit_term(term, language, examples)

Look up a Sanskrit word: its spellings across scripts, the meanings it carries in this corpus, how many verses gloss it, and examples of where it occurs. Built from the word-by-word breakdowns of some 30 000 verses, so these are the meanings translators actually assigned to the word in these texts — not a lexicon's list of everything it could mean. Use it before translating a term yourself, and whenever the user asks what a word means.

입력 스키마

{
  "type": "object",
  "properties": {
    "term": {
      "type": "string",
      "minLength": 1,
      "description": "In IAST (śeṣa, diacritics optional) or Devanāgarī (शेष). A word written in another script is not in this dictionary — the headwords are Sanskrit — but search_texts will still find it in the prose."
    },
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    },
    "examples": {
      "description": "Verses to cite as examples. Default 5.",
      "type": "integer",
      "minimum": 0,
      "maximum": 20
    }
  },
  "required": [
    "term"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢find_similar_verses(verse, language, limit, exclude_same_work)

Given a verse, find other passages in the library that say something close to it — by meaning, not by shared words. Start here when you already have a verse; when you only have words, a question or a term, use search_texts. Use it to check whether a teaching appears elsewhere before presenting it as the tradition's position, to gather parallel places, or to see how different works treat one subject. Set `exclude_same_work` when you want an independent witness: the next verse of the same chapter is nearly always similar and proves nothing. An empty result is a real answer — it means the library says this in one place only.

입력 스키마

{
  "type": "object",
  "properties": {
    "verse": {
      "type": "string",
      "minLength": 1,
      "description": "A citation (\"BG 2.47\") or a `unit_id` from an earlier result."
    },
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    },
    "limit": {
      "description": "Passages to return. Default 8.",
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    },
    "exclude_same_work": {
      "description": "Skip passages from the same work, so what comes back corroborates rather than repeats. Default false.",
      "type": "boolean"
    }
  },
  "required": [
    "verse"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_vaishnava_calendar(latitude, longitude, timezone, place_name, days, ...)

Ekadashi fasts, festivals and the appearance and disappearance days of the acharyas in the Gaudiya Vaishnava calendar, computed for one place. Call it for any question about when an Ekadashi or a festival falls, or when to break a fast. The place is required and matters: the fast day is decided by the tithi at local sunrise, and the time to break the fast is minutes wide and different in every city. Ask the user where they are rather than guessing. Every observance links to a page with its story and the verses behind it.

입력 스키마

{
  "type": "object",
  "properties": {
    "latitude": {
      "type": "number",
      "minimum": -90,
      "maximum": 90,
      "description": "Latitude of the place, degrees."
    },
    "longitude": {
      "type": "number",
      "minimum": -180,
      "maximum": 180,
      "description": "Longitude of the place, degrees."
    },
    "timezone": {
      "type": "string",
      "description": "IANA timezone, e.g. \"Europe/Moscow\"."
    },
    "place_name": {
      "description": "The place's name, echoed back.",
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "days": {
      "description": "How many days ahead, from today at the place. Default 30.",
      "type": "integer",
      "minimum": 1,
      "maximum": 240
    },
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    }
  },
  "required": [
    "latitude",
    "longitude",
    "timezone"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_works(language, category, author, include_descriptions)

List the works with their sizes, shelf, author and available languages. Call it at the start of a conversation about scripture, or when you need work slugs for filtering. The list is short by default: no descriptions. Narrow it with `category` (a shelf: itihasa, purana, upanishad, vedanta, samhita, shastra, kavya, shruti, smriti; `shruti` is the upanishad shelf, `smriti` the itihasa and purana shelves) or with `author` (an id from list_authors). Set `include_descriptions` for a paragraph on each work. It also tells you what is not translated: several works exist only in Russian. Check `languages` before promising the user an English text.

입력 스키마

{
  "type": "object",
  "properties": {
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    },
    "category": {
      "description": "Only the works on this shelf.",
      "type": "string",
      "enum": [
        "itihasa",
        "purana",
        "upanishad",
        "vedanta",
        "samhita",
        "shastra",
        "kavya",
        "shruti",
        "smriti"
      ]
    },
    "author": {
      "description": "Only the works credited to this author id (see list_authors).",
      "type": "string",
      "minLength": 1
    },
    "include_descriptions": {
      "description": "Add a paragraph describing each work. Default false.",
      "type": "boolean"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_authors(language, era)

List the authors the tradition names, grouped by period, each with a short note and the books credited to them. Call it when the user asks who wrote something, or wants the works of one acharya; pass the author's `id` to list_works to see the books. Filter by `era`: shruti, classical, caitanya, successors, modern.

입력 스키마

{
  "type": "object",
  "properties": {
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    },
    "era": {
      "description": "Only the authors of this period.",
      "type": "string",
      "enum": [
        "shruti",
        "classical",
        "caitanya",
        "successors",
        "modern"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢browse_work(work, section, chapter, page, page_size, ...)

Walk a work's structure in order: a work gives its sections, a section its chapters, a chapter its verses (label and translation, in pages). Use it when the user wants to read a chapter or a book through, asks what comes after a verse, or what a book contains; search_texts cannot do that. Three steps, each named in the reply of the one before: `work` alone lists the sections; add `section` for its chapters; add `chapter` (the `index` from the listing) for its verses. Every reply carries `next`, the arguments of the call that continues. To quote a verse, call get_verse with its `unit_id`: it returns the citation and version hash.

입력 스키마

{
  "type": "object",
  "properties": {
    "work": {
      "type": "string",
      "minLength": 1,
      "description": "A work slug, as list_works gives it."
    },
    "section": {
      "description": "A section slug from the work's listing (a parva, a canto, an upaniṣad).",
      "type": "string",
      "minLength": 1
    },
    "chapter": {
      "description": "The chapter's `index` in the section's listing; it opens that chapter's verses.",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "page": {
      "description": "Which page of a section's chapters. Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 9007199254740991
    },
    "page_size": {
      "description": "Chapters per page. Default 50, at most 100.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "offset": {
      "description": "Where in the chapter to start, counting verses from 0. Default 0.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Verses per page. Default 20, at most 50.",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "language": {
      "type": "string",
      "enum": [
        "ru",
        "en",
        "es",
        "hi",
        "zh"
      ],
      "description": "Preferred language of the translations returned. Not a filter: works that exist only in Russian are returned in Russian, and each result says which language it is actually in. Default: en."
    }
  },
  "required": [
    "work"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 8개