Orthotomeo vs Fojin — Buddhist Canon Tools
A side-by-side look at the Orthotomeo and Fojin — Buddhist Canon Tools MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Orthotomeo for spirituality & esoterica work over a hosted endpoint; choose Fojin — Buddhist Canon Tools for spirituality & esoterica as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Orthotomeo when
- You need dedicated capabilities in the Spirituality & Esoterica domain.
- You prefer a remote HTTP/SSE transport.
- You want tools like
attestation, cite, concord_lemma.
Choose Fojin — Buddhist Canon Tools when
- You need dedicated capabilities in the Spirituality & Esoterica domain.
- You prefer a local stdio subprocess transport.
- You want tools like
search_corpus, read_passage, get_parallels.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Spirituality & Esoterica | Spirituality & Esoterica |
| Quality signal | 55/100 · Good | 64/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Remote HTTP/SSE | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | None listed | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 0 | 352 |
| Directory activity | 2 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 12 | 8 |
| Full listing | View Orthotomeo | View Fojin — Buddhist Canon Tools |
Tools & capabilities
Orthotomeo tools 12
attestationReturns the WHNT-style Type/Editions manuscript-tradition columns as neutral text-critical data (e.g. Mark 16:9-20 = Type KO) - which editions carry a word, with no argument for or against a variant.citeRenders Citations (from any of the above tools) as quoted, fully-attributed Markdown bullets - the only sanctioned bridge from a query result to pastable study-document text.concord_lemmaComplete-or-fail concordance: every words row in corpus whose lemma, dStrong, or (with by="surface") exact inflected surface form matches query. Route lemma/Strong's-number/surface-word lookups here, never by writing SQL or guessing occurrences from memory. This deployment caps one concordance result at 2000 occurrences and refuses anything broader, reporting the exact match count in the error. Call count first when a query might be broad - count is never capped.concord_phraseComplete-or-fail multi-word concordance: every occurrence, within one verse, of tokens (lemma strings) appearing in order within window intervening words of each other (window=0 = strictly adjacent). This is the tool for a phrase query like εἰς ἄφεσιν. This deployment caps one concordance result at 2000 occurrences and refuses anything broader, reporting the exact match count in the error. Call count first when a query might be broad - count is never capped.countOccurrence tally (total + per-book breakdown) for the identical query concord_lemma would match. count.Total always equals len(concord_lemma(...)) - use this to sanity-check a concordance result, or when only the number matters.get_passageReturns get_verse's result for every canonical verse in a contiguous, single-book range, in order - verse boundaries preserved, never concatenated into one blob.get_verseReturns verbatim verse text with provenance for one canonical reference, one Citation per requested edition (KJV, ASV, WEB, BSB, Brenton).interlinearReturns a row-aligned reading view for every word in a verse (or one word, if word is given): original text, transliteration, gloss (via lexicon_lookup), grammar, and manuscript attestation stacked per word - the composed display shape for a study reading view, built on parse and lexicon_lookup rather than any new query. This is the most complete per-word view; use parse or attestation when you want only one of those facets.lemmatizeReturns the ordered lemma list for a verse (words with no lemma are omitted, not fabricated).lexicon_lookupResolves a disambiguated Strong's number (dStrong) to its lexicon entry: lemma, transliteration, gloss, and - for a Greek entry only - a fuller definition (Abbott-Smith 1922, Public Domain). A Hebrew entry's definition field is always omitted: it is abridged BDB via Online Bible, which requires permission not yet obtained, so only its gloss is ever returned. Not to be confused with the get_verse/get_passage tools, which resolve a Ref to translated verse text, not a dStrong to a dictionary entry.parseReturns dStrong + expanded morphology (via the T6 morph_codes table) for every word in a verse, or one word if word is given. LXX corpora (Swete, OSS-LXX-lemma) are always Flagged - neither carries morphology.resolve_refReports, for every per-verse content edition (KJV, ASV, WEB, BSB, Brenton, TAGNT, TAHOT, Swete, OSS-LXX-lemma), whether a canonical reference has a counterpart there and where. Cross-edition divergence (a T4b merge/renumber/divide, or a reference simply missing from an edition) is reported as Caveats - never a silent shift.
Fojin — Buddhist Canon Tools tools 8
search_corpusSemantic 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).read_passageRead 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.get_parallelsCross-canon parallel passages aligned to a fascicle. fojin's alignment moat: given a Chinese fascicle, returns the aligned Pali/Tibetan/Sanskrit parallels (each with its own `urn`) so you can compare how a passage is rendered across traditions.lookup_dictionaryLook up a Buddhist term across fojin's dictionaries (748K+ entries).lookup_entitySearch fojin's knowledge graph for entities — people, places, works, doctrinal terms — matching `query`.resolve_urnResolve 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.verify_quoteVerify 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.commentariesWhat 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.
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
Orthotomeo
{
"mcpServers": {
"orthotomeo": {
"url": "https://orthotomeo.app/mcp"
}
}
}
Fojin — Buddhist Canon Tools
{
"mcpServers": {
"fojin-buddhist-canon-tools": {
"command": "uvx",
"args": [
"fojin-mcp"
]
}
}
}
Frequently asked questions
Orthotomeo is categorized under Spirituality & Esoterica and uses a remote HTTP/SSE transport. Fojin — Buddhist Canon Tools belongs to Spirituality & Esoterica and uses a local stdio subprocess. Pick Orthotomeo for spirituality & esoterica work and Fojin — Buddhist Canon Tools for spirituality & esoterica.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Orthotomeo has no declared pricing — check the project's own site. Fojin — Buddhist Canon Tools has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add orthotomeo and fojin-buddhist-canon-tools as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Orthotomeo has a quality signal of 55/100 (Good) with 2 views, 0 installs and 0 GitHub stars. Fojin — Buddhist Canon Tools has 64/100 (Good) with 1 views, 0 installs and 352 GitHub stars.