fojin — Buddhist Canon Tools
Buddhist canon tools: search, passages, cross-canon parallels, dictionaries — all URN-cited.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (1)
- LOWin lookup_dictionary
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"fojin-mcp": {
"url": "https://mcp.fojin.ai/mcp"
}
}
}Remote-Endpunkte
https://mcp.fojin.ai/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (8)
🟢search_corpus(query, limit, lang)
Semantic search across fojin's Buddhist corpus (10K+ texts, 30+ langs). Returns the most relevant passages, each with a `urn`, title, snippet and similarity score. `lang` optionally filters by language code (lzh=Classical Chinese, pi=Pali, sa=Sanskrit, bo=Tibetan, en=English).
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
},
"lang": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Lang"
}
},
"required": [
"query"
],
"title": "search_corpusArguments"
}🟢read_passage(text_id, juan_num)
Read the full content of one fascicle (卷) of a text, with its `urn`. Use the `text_id`/`juan_num` from a search_corpus hit. Returns the actual canonical text — quote from this, not from memory.
Eingabe-Schema
{
"type": "object",
"properties": {
"text_id": {
"title": "Text Id",
"type": "integer"
},
"juan_num": {
"title": "Juan Num",
"type": "integer"
}
},
"required": [
"text_id",
"juan_num"
],
"title": "read_passageArguments"
}🟢get_parallels(text_id, juan_num)
Cross-canon parallel passages aligned to a fascicle. fojin's alignment moat: given a Chinese fascicle, returns the aligned Pali/Tibetan/Sanskrit parallels so you can compare how a passage is rendered across traditions. A fascicle returns parallels for the *whole* juan — often hundreds. To narrow them to one passage, match the passage against `source_chunks[].text` and keep the parallels whose `aligns_source_chunk` equals that chunk_index. `urn` is filled for parallels that are fojin works; rows with `source="mitra-parallel"` are inline Skt/Tib sentences with no fojin work to cite, so they carry `original_preview` instead and stay `urn: null`.
Eingabe-Schema
{
"type": "object",
"properties": {
"text_id": {
"title": "Text Id",
"type": "integer"
},
"juan_num": {
"title": "Juan Num",
"type": "integer"
}
},
"required": [
"text_id",
"juan_num"
],
"title": "get_parallelsArguments"
}⚪lookup_dictionary(term, limit)
Look up a Buddhist term across fojin's dictionaries (748K+ entries).
Eingabe-Schema
{
"type": "object",
"properties": {
"term": {
"title": "Term",
"type": "string"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"required": [
"term"
],
"title": "lookup_dictionaryArguments"
}🟢lookup_entity(query, limit)
Search fojin's knowledge graph for entities — people, places, works, doctrinal terms — matching `query`.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"required": [
"query"
],
"title": "lookup_entityArguments"
}⚪resolve_urn(urn)
Resolve a fojin URN (e.g. fojin:cbeta/T0001.1) to a reader URL and confirm it exists in the corpus. Use to verify or dereference a citation.
Eingabe-Schema
{
"type": "object",
"properties": {
"urn": {
"title": "Urn",
"type": "string"
}
},
"required": [
"urn"
],
"title": "resolve_urnArguments"
}🟢verify_quote(quote, cite, juan)
Verify that a Buddhist-canon quote exists VERBATIM in the corpus. Call this before presenting any quoted scripture to a reader: LLMs routinely invent plausible-looking quotes. Returns `verbatim` (bool), where it was found (`matches`, each with a resolvable `urn`), or the closest near-miss window when it wasn't. `cite` optionally narrows the search — a CBETA id ("T0374") or fojin URN ("fojin:cbeta/T0374.13") — and `cite_matched` reports honestly whether the quote is where you claimed (a hit in a different fascicle does NOT confirm your citation). Quote must be ≥4 CJK chars after normalisation; Classical Chinese only. Short quotes are answered but say less: a four-character phrase recurs across the canon, so read `cite_matched` rather than `verbatim`, and check `matches_capped` before treating the list as complete. Each match carries an absolute `reader_url` — cite that, not a reconstructed third-party link.
Eingabe-Schema
{
"type": "object",
"properties": {
"quote": {
"title": "Quote",
"type": "string"
},
"cite": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Cite"
},
"juan": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Juan"
}
},
"required": [
"quote"
],
"title": "verify_quoteArguments"
}🟢commentaries(quote, limit)
What the historical commentators said about a passage of Buddhist scripture. Give a line of a sūtra and get back the classical commentaries that gloss it — each with the commentator's own words, the work it comes from, a quality tier, and a resolvable citation. This is the layer no other tool exposes for the Chinese canon: CBETA marks up almost none of it, and the alignment behind this was derived text by text. Two things to read carefully rather than skim. `total` is how many commentators the passage actually has — `truncated` says the list you got is a sample. And coverage is partial: roughly half of what a commentator wrote is not aligned, so an absent commentator means "not in the data", never "he said nothing". When nothing matches, `available_sutras` tells you which sūtras have data at all — do not read a miss as silence from the tradition.
Eingabe-Schema
{
"type": "object",
"properties": {
"quote": {
"title": "Quote",
"type": "string"
},
"limit": {
"default": 8,
"title": "Limit",
"type": "integer"
}
},
"required": [
"quote"
],
"title": "commentariesArguments"
}Empfohlene Prompts
search_corpussearch_corpusread_passageread_passagesearch_corpusread_passageCommunity
Nachweis