bible-mcp について
bible-mcpは、キリスト教の学術研究向けの読み取り専用MCPサーバーです。聖書、原語データ、参考書、歴史文献を含む検索可能なコーパスを備え、キーワード検索と意味検索で関連テキストや概念を調べられます。
主な機能
- 01聖書本文の検索と比較
- 02原語の対訳表示と語句研究
- 03意味検索と類似箇所の検索
- 04聖書の相互参照と引用
- 05人物、場所、概念の探索
活用シーン
- 01聖書の複数訳を比較して研究
- 02ギリシャ語やヘブライ語の語句を調査
- 03聖書と歴史文献にまたがるテーマを追跡
MCP 対応
コーパス検索、閲覧、比較、研究ツールに加え、コーパス調査や研究ブリーフ用のプロンプトを公開します。ホスト型エンドポイント、ローカルのstdio、自前のホスト環境で利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://bible-mcp-server.fly.dev/mcpclaude mcp add --transport http nirajagarwal-bible https://bible-mcp-server.fly.dev/mcp{"mcpServers":{"nirajagarwal-bible":{"type":"http","url":"https://bible-mcp-server.fly.dev/mcp"}}}Cursor で開く{"servers":{"nirajagarwal-bible":{"type":"http","url":"https://bible-mcp-server.fly.dev/mcp"}}}VS Code で開く{"mcpServers":{"nirajagarwal-bible":{"type":"http","url":"https://bible-mcp-server.fly.dev/mcp"}}}{"mcpServers":{"nirajagarwal-bible":{"serverUrl":"https://bible-mcp-server.fly.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
16| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| version | string | いいえ | |
| reference | string | はい |
詳細
bible-mcp
キリスト教の学術研究向けMCPサーバーです。非営利で、公共のリソースとなることを目指しています。ソースとライセンスの全体像については corpus-survey.md を、今後の方針については ROADMAP.md をご覧ください。
含まれるもの(v0.14)
| データ | ソース | ライセンス |
|---|---|---|
| Berean Standard Bible(66書) | berean.bible | パブリックドメイン |
| World English Bible, Ecumenical(外典を含む83書) | ebible.org | パブリックドメイン |
| 七十人訳聖書(Brenton訳、1851年) — 旧約聖書+外典。スザンナ/ベルと竜/エレミヤの手紙はそれぞれ独立した書として収録。詩篇は標準的な英語/KJVの番号に対応付け(七十人訳独自の番号は詩篇の大部分で異なる — WEBと節ごとに照合済み)。エレミヤ書、ダニエル書(ギリシャ語)、出エジプト記、ヨブ記、エステル記(ギリシャ語)、バルク書では、Brentonの固有の七十人訳の章・節構成を維持。これらの書ではBSB/WEBと構成が異なり、番号だけの違いではない(配列や長さが異なる) | ebible.org | パブリックドメイン |
七十人訳聖書、ギリシャ語本文(Swete版、Cambridge 1887–1894) — 創世記からマラキ書までと外典、テオドティオン訳ダニエル書/スザンナ/ベル。上記の英語版Brenton本文と同じ詩篇の番号対応および固有構成に関する注意点があります。単語レベル(表層形のみ。見出し語/Strong番号/形態論情報なし)で、ヘブライ語/アラム語の旧約聖書およびギリシャ語の新約聖書とともに get_interlinear で利用 | Open Greek and Latin Project / First1KGreek、github.com/nathans/lxx-swete経由 | CC BY-SA 4.0 |
| 原語の単語613,690語:ギリシャ語の新約聖書+ヘブライ語/アラム語の旧約聖書。見出し語、Strong番号、形態論情報、訳語、意味領域を含む | MACULA (Clear-Bible/Biblica) | CC BY 4.0 |
Brown-Driver-Briggs Hebrew and English Lexicon(1906年、9,290項目)+Strong's Hebrew Dictionary(1890年、改訂版、8,674項目) — Strong番号に対応付けた、語源、語義区分、聖句引用を含む学術的な項目全文。BDB独自のアルファベット付き同綴異義語も収録(例:H2617a「慈愛」とH2617b「非難」—実際に異なる語で、綴りが同じ)。既存の簡潔な訳語とともに word_study に表示 | OpenScriptures HebrewLexicon | CC BY 4.0(マークアップ。元となるBDB/Strong本文はパブリックドメイン) |
| Abbott-Smith's Manual Greek Lexicon of the New Testament(1922年、517項目) — ギリシャ語の新約聖書の単語にも同様の処理を適用 | First1KGreek / Open Greek and Latin Project、github.com/biblicalhumanities/Abbott-Smith経由 | パブリックドメイン |
| 約345,000件の順位付けされた相互参照 | openbible.info | CC BY |
| 約4,800人の人物/場所/出来事/集団+53,000件の節リンク | Theographic Bible Metadata | CC BY-SA 4.0 |
| パブリックドメインの古典作品6冊:Augustineの『告白』、『キリストにならいて』、『天路歴程』、『神の臨在の修行』、Julianの『啓示』、Chestertonの『正統とは何か』 | Project Gutenberg | パブリックドメイン |
| 使徒教父の著作10編:『クレメンスの第一の手紙』と『第二の手紙』、『バルナバの手紙』、『ポリュカルポスのフィリピ人への手紙』、『ポリュカルポスの殉教』、『イグナティオスの手紙』(短い改訂版)、『イグナティオスの殉教』、『ディオグネトスへの手紙』、『ヘルマスの牧者』、『パピアスの断片』 | ANF (Roberts-Donaldson-Crombie), Project Gutenberg #77576 | パブリックドメイン |
Irenaeus:『異端反駁』全5巻+断片 — 806セクションを IREN-AH<book>.<chapter>.<section> として扱い、標準的な引用(AH 3.3.4)から直接解決可能。ティア1の聖書引用1,598件 | ANF vol. I (Roberts-Rambaut), Wikisource transcription | パブリックドメイン |
| Justin Martyr:『第一弁明』、『第二弁明』、『トリュフォンとの対話』、『ユスティノスの殉教』 — 423セクション、ティア1の引用約408件 | ANF vol. I, Wikisource transcription | パブリックドメイン |
| ティア1の引用グラフ:教父文献コレクション全体にわたり、翻訳者自身の脚注から抽出した聖書の引用(DESIGN.md §4を参照) | — | — |
| Versemap:31書にわたるMT/NAと英語の節の対応付け988件を実証的に導出(Joel 2–4、Malachi 3–4、Hosea、Isaiah 64、Kings/Chronicles/Nehemiahの継ぎ目、3 John、Acts 19、Rev 12など)。用語集との照合済み。詩篇の表題によるオフセットも含む | コーパスから導出 | — |
研究成果レイヤー(layer='output'):レイヤー0のコーパス調査+「陶器師と粘土」「生ける水」「荒野」に関するレイヤー2の研究概要 — 検索可能で、埋め込み済み。根拠となる参照先に戻る draws_on リンク付き | プロジェクト内で生成 | — |
| 約112,400件の埋め込み(節/ウィンドウ/段落)。すべてのレイヤーを対象としたセマンティック検索とハイブリッド検索用 | bge-small-en-v1.5、ローカルで生成 | — |
Easton's Bible Dictionary(1897年第3版、2,491項目) — 上記のパブリックドメイン古典作品と同様の、コーパス内の完全な文書:検索可能(search(version="EASTON"))、閲覧可能(read_work("EASTON", ...))、セマンティック検索用に埋め込み済み | Theographicの構造化JSONから再導出 | パブリックドメイン |
旧約聖書+新約聖書の概念グラフ:5,673件の概念ノード(神学的テーマ+語彙上のキーワード。Easton's Bible Dictionaryを基に作成)と、171,000件以上の型付き/関連付けられたエッジ(broader/narrower/causes/part_of/symbol_of/fulfills/associated)。両約聖書にわたり、概念同士、実体、節アンカーを接続します。型付きエッジ約440件は引用された根拠に照らして手作業で確認済み(フェーズ5/6)。残りは機械的に算出した associated の重複件数です。get_concept/concepts_in_passage/get_concept_relations で利用可能。DESIGN.md §5を参照 | コーパス+Easton's Bible Dictionaryから導出 | — |
すべてが 1 つの SQLite ファイル(db/bible.db、約 400MB)に格納されており、FTS5 による全文検索に対応しています。散文作品は WORK.chapter.paragraph の形式で指定します。設計の背景については DESIGN.md を参照してください。 |
ツール
get_passage(reference, version="BSB")— 指定した箇所の聖書本文です。例:John 3:16、John 3:16-18、Genesis 1。バージョン:BSB、WEB(外典にはversion="WEB"が必要です)。search(query, version="BSB", book="", limit=20)— 語幹処理とランキング(BM25)を用いた全文検索です。引用符で囲んだフレーズや AND/OR/NOT に対応しています。例:faith AND works NOT law。versionには任意の散文作品 ID も指定できます。注:語幹処理により関連する表記形が同一視されます(例:「desert」では「deserted」も検索されます)。正確なフレーズを引用符で囲むか、AND 条件を追加して絞り込んでください。semantic_search(query, top_k=12, kind="", hybrid=True)— コーパス全体(聖書+散文)を対象とした意味ベースの検索です。デフォルトではキーワード検索とハイブリッド統合(RRF)されます。共通の単語がなくても、テーマに関連する箇所を見つけられます。例:「神の自己無化」。kindは省略可能です:verse | window | paragraph。find_similar(reference, top_k=10)— 指定した聖句または散文の段落に埋め込みベクトルが近い箇所を、聖書、外典、古典から検索します。コーパスの各層を横断した並行箇所の検索に役立ちます。word_study(query, language="", limit=15)— Strong 番号(先頭のゼロは省略可能)、見出し語(母音記号の有無を問わず)、ヘブライ語/アラム語の翻字(例:miqweh、マクロンは省略可能)、または英語の訳語から、原語の単語を調べます。出現数、訳語の範囲、書巻別の分布、利用可能な場合は学術的な語彙項目(ヘブライ語は BDB/Strong's、ギリシャ語は Abbott-Smith。訳語より詳しく、約700文字に切り詰められます)、用例となる聖句を返します。文字付きの同綴異義語の異形(例:H4723 と H4723a。表記は同じでも異なる単語)はまとめて表示されます。languageは省略可能です:grc | hbo | arc。get_interlinear(reference)— 聖句または短い範囲について、表層形、見出し語、Strong 番号、訳語、形態情報を含む、原語の逐語情報を返します(旧約聖書はヘブライ語/アラム語、新約聖書はギリシャ語)。詩篇だけでなく、すべての書巻で節対応を修正済みです。旧約聖書の節については、利用可能な場合、七十人訳ギリシャ語の表層テキストも表示します(このソースには見出し語、Strong 番号、形態情報はありません)。get_cross_references(reference, limit=20)— 聖句の相互参照を返します(OpenBible.info、コミュニティの投票数順)。参照先の本文も含まれます。get_citations(reference, limit=20)— 教父文献コーパスで聖句が名前を挙げて引用されている箇所を返します。翻訳者自身の脚注から抽出したものです(ティア1)。get_cross_references(聖書→聖書)を補完するもので、こちらは教父文献→聖書を対象とします。網羅性は意図的に限定されています。結果が空でも、引用がないとは限りません。徹底的に調べるには、教父文献の作品を対象に全文searchを実行してください。get_entity(name, entity_type="")— 聖書に登場する人物、場所、出来事、または民族集団を名前で検索します(Theographic ナレッジグラフ)。詳細と登場箇所を返します。entity_typeは省略可能です:person | place | event | people_group。entities_in_passage(reference)— 聖句または章に関連付けられた人物、場所、出来事を返します。例:Genesis 14。get_concept(name, concept_type="")— 旧約聖書+新約聖書の概念グラフで、神学的概念または語彙上のキーワードを検索します(Easton's Bible Dictionary を基に作成)。定義、関連する聖句、概念を具体化する実体、関係数の概要を返します。concept_typeは省略可能です:theme | keyword。Strong 番号も指定できます。concepts_in_passage(reference)— 聖句または章に関連付けられた神学的概念とキーワードを返します。例:Genesis 15。entities_in_passageを補完します。get_concept_relations(name, verb="", limit=20)— 概念に関する型付きの関係を返します:broader/narrower/causes/part_of/symbol_of/fulfills/contrasts。引用された根拠に照らして手作業でレビューされています。デフォルトでは、規模がはるかに大きい機械的なassociatedの分類は除外されます。含めるにはverb="associated"を指定してください。read_work(work, chapter=1, start=1, end=5)— 散文作品を段落の範囲で読みます(CONFESSIONS、IMITATION、PILGRIM、PRESENCE、JULIAN、ORTHODOXY、1CLEMENT、BARNABAS、EASTON など。全リストはcorpus_info()を参照してください)。まずsearch(version=<WORK>)で箇所を検索してください。compare_versions(reference)— 聖句または短い範囲を、BSB と WEB で並べて表示します。corpus_info()— コーパスに含まれるドキュメント、レイヤー、ライセンス、件数を確認できます。
プロンプト
サーバーは、(信頼できる情報源である).claude/skills/から生成される合成パイプラインもMCPプロンプトとして公開します。corpus_survey(theme) — レイヤー0の生資料読解の手法、corpus_composer(theme) — レイヤー2の調査ブリーフ作成です。bible-mcpをインストールしたMCPクライアントは、データに同梱されたこの手法を利用できます。
セットアップ
pip install -r requirements.txt # core: just `mcp`
pip install fastembed numpy # optional semantic tier (semantic_search, find_similar)
python3 scripts/build_db.py # rebuild db from data/sources (optional; db ships built)
python3 scripts/embed.py # regenerate embeddings (optional; ships built; resumable)
最初のセマンティック検索では、埋め込みモデル(約65MB)を一度だけダウンロードします。 fastembed/numpyがインストールされていなくても、セマンティック検索以外のツールは通常どおり動作します。アーキテクチャの決定事項(モデルの選択、チャンク化、ハイブリッド検索)については、DESIGN.mdを参照してください。
Claude Desktop / Cowork — MCP設定に追加します:
{
"mcpServers": {
"bible-mcp": {
"command": "python3",
"args": ["/path/to/bible-mcp/server.py"]
}
}
}
構成
data/sources/ raw acquired sources (immutable; re-derive, never edit)
data/versemap.tsv derived MT/NA <-> English verse alignments
data/additions-*.json prepared incremental ingestions (applied via scripts/ingest_additions.py)
scripts/ schema.sql, lib_refs.py, build_db.py, build_versemap.py, align_splits.py, ingest_additions.py
db/bible.db the built corpus (SQLite + FTS5)
outputs/ synthesis-pipeline artifacts (Layer 0 surveys, Layer 2 briefs, reports)
.claude/skills/ corpus-survey + corpus-composer (pipeline skills; source for MCP prompts)
server.py MCP server (FastMCP, read-only on the db)
公開版
これは非営利の公開リソースです。ライセンスは階層化されており、ソースにはそれぞれ独自のライセンスがあります(すべてPD / CC BY / CC BY-SA)。コードはPolyForm Noncommercial 1.0.0、編集物および派生データ(versemap、引用グラフ、埋め込み、出力レイヤー)はCC BY-NC 4.0です。詳細はLICENSE.mdをご覧ください。帰属表示はNOTICE.mdに記載されています。
利用方法は3通りあります。
- リモート(インストール不要) — ホストされているエンドポイントを、任意のMCPクライアントにカスタムコネクターとして追加します(Claudeの場合:設定 → コネクター → カスタムコネクターを追加):
https://bible-mcp-server.fly.dev/mcp - ローカル(stdio) — リポジトリをクローンし、最新のGitHub
Releaseから
db/bible.dbをダウンロードして(またはdata/sources/から再構築して)、上記の設定を追加します。 - セルフホスト —
DockerfileにはStreamable-HTTPサーバーが含まれています。DEPLOY.mdを参照してください。
設計上の注意点
- 標準的なアドレス指定:すべての箇所でOSIS形式の参照(
Gen.1.1)を使用し、すべてのテーブルでこれをキーにしています。 - 出典情報:すべての文書行に、出典、ライセンス、ライセンス階層(A=自由利用可、B=継承、C=非営利、D=非公開)が記録されています。当プロジェクトは非営利のため、Cを利用できます。
- BSBで「欠けている」16節(Matt 17:21、John 5:4、Acts 8:37など)は、標準的な批判本文における省略であり、バグではありません。
- 節の対応付け:
versemap(全書)とpsalm_offsets(詩篇の表題)によって、MACULAのMT/NAの番号を英語に対応させています。どちらもコーパス自体が持つ2つの証本から実証的に導き出し、用語テキストの重複によって検証しています。テーブルスキーマはTVTMS互換のため、後からSTEPBibleデータを用いて他の伝承(LXX、Vulgate)にも拡張できます。 - Ignatiusには、短い方の中期校訂版のみが含まれています。ANFの長い方の校訂版は後代の増補であり、検索結果に各章が重複して表示されるためです。
- 研究成果レイヤーは生成されたものであり、明確にタグ付けされています(
layer='output')。一次資料と混同されることはありません。draws_onリンクにより、各成果物の根拠となる参照箇所をたどれます。 - ROADMAP.mdに記載された次の作業:Irenaeus(出典の取得)、第2層の引用シングリング(確認済みの脚注インデックス漏れ3件をテストケースとして追加)、TVTMSの本格実装。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。