CBETA MCP — Partner Access Guide
Retrieval over the CBETA-derived collected works of four modern Chinese Buddhist masters/scholars, served over the Model Context Protocol (MCP):
| key | master | corpus |
|---|---|---|
yinshun | 印順法師 (1906–2005) | 印順法師佛學著作集(CBETA Y) |
taixu | 太虛大師 (1890–1947) | 太虛大師全書(CBETA TX) |
yanpei | 演培法師 (1917–1996) | 演培法師全集(CBETA YP) |
lucheng | 呂澂 (1896–1989) | 呂澂佛學著作集(CBETA LC) |
Third-party reference corpus — not Master Sheng Yen. Each result is tagged with its master (
attribution) so you can compare across them and cite the right one.
1. Endpoint & auth
| Base URL | issued on onboarding (<YOUR_ENDPOINT>) |
| Transports | GET/POST /sse (SSE) · POST /mcp (streamable-HTTP) |
| Protocol | MCP 2024-11-05 |
| Auth | Authorization: Bearer <YOUR_API_KEY> (or X-API-Key: <YOUR_API_KEY>) |
Your API key is issued to you privately; every request must carry it (no/invalid key →
401). Connect any MCP-compatible client (Claude Desktop / Code, MCP Inspector) by
pointing it at the /sse URL with the Authorization header — same shape as the
DDC guide §3.
2. Tools
| Tool | Purpose |
|---|---|
retrieve ⭐ | Fan one query across the requested masters; returns section-grounded Passage objects (matched snippet + section-budget context). |
list_books | Work catalog per master: book_id (master:work), book_title, juan count. No args. |
get_book_outline | A work's juans (table of contents) by book_id. |
get_chapter | Fetch one whole juan's body by chapter_code (master:work:juan). |
retrieve
| arg | type | default | description |
|---|---|---|---|
query | string | — | 檢索詞(繁體佳);一個 query 對應一個概念/面向。 |
authors | list of yinshun/taixu/yanpei/lucheng, or "all" | "all" | Which masters to search. Use "all" to compare across them. |
k_per_author | int (1–20) | 3 | Hits per master. Total ≤ `k_per_author × |
min_score | number | 0.30 | Rerank-score floor (per master); 0.0 disables. |
// retrieve
{ "query": "緣起性空", "authors": ["yinshun", "taixu"], "k_per_author": 3 }
Returns a list of Passage objects, each:
{
"section_id": "yinshun:Y0011:2#004",
"source": "cbeta",
"attribution": "印順法師",
"title": "…section label (navigation, not a citation)…",
"snippet": "…the matched span…",
"context": "…the matched span's section, sized to a grounding budget — the basis…",
"citation": "《成佛之道》,卷 2,(印順法師)",
"source_url": "https://cbetaonline.dila.edu.tw/zh/Y0011_002",
"book_id": "yinshun:Y0011",
"mid_id": "yinshun:Y0011:2",
"score": 0.97
}
Ground answers in context; cite section_id + attribution (the master); link with
source_url (the CBETA Online reader). mid_id is the juan code — pass it to
get_chapter for the whole juan. title is a navigation label, never a citation.
Browse: list_books → get_book_outline → get_chapter
// list_books → [{ "book_id": "yinshun:Y0011", "book_title": "成佛之道", "juan_count": 5 }, …]
// get_book_outline
{ "book_id": "yinshun:Y0011" }
// → juans: [{ "chapter_code": "yinshun:Y0011:1", "title": "…", "order": 1 }, …]
// get_chapter
{ "chapter_code": "yinshun:Y0011:2" }
3. Notes & support
- Encoding: Traditional Chinese (繁體中文), UTF-8.
- Attribution: every
Passagecarries the master inattribution— never merge or mis-attribute across masters. - Access: keys are issued per service; tell your onboarding contact which corpora and expected load you need. See the Partner Overview for the full MCP family.