# FHL Bible Tool 完整回歸測試報告
**測試日期**: 2025年12月30日
**測試工具版本**: FHL Bible Tool MCP Server
**測試環境**: VS Code + Claude Opus 4.5
---
## 📊 測試摘要
| 類別 | 通過 | 失敗 | 總計 | 通過率 |
| ---------- | ------ | ----- | ------ | --------- |
| 列表類工具 | 3 | 4 | 7 | 42.9% |
| 查詢類工具 | 8 | 4 | 12 | 66.7% |
| 搜尋類工具 | 5 | 0 | 5 | 100% |
| **總計** | **16** | **8** | **24** | **66.7%** |
---
## 📋 詳細測試結果
### 一、列表類工具 (7 個)
#### 1. ✅ list_bible_versions_tool
**狀態**: 通過
**測試參數**: use_simplified=false
**測試結果**:
- 成功回傳 86 個聖經版本
- 包含版本代碼、名稱、Strong's Number 支援狀態、新舊約支援等資訊
- 回傳版本涵蓋中文、英文、台語、客語、原住民語等多種語言
**回傳範例**:
json
{
"total_count": 86,
"versions": [
{"code": "unv", "name": "FHL和合本", "has_strongs": true, "testament": "both"},
{"code": "kjv", "name": "KJV", "has_strongs": true, "testament": "both"},
...
]
}
---
#### 2. ✅ list_commentaries_tool
**狀態**: 通過
**測試參數**: use_simplified=false
**測試結果**:
- 成功回傳 7 個註釋書資源
- 包含 CBOL 加插註釋、parsing 註釋、信望愛站註釋、串珠、蔡茂堂/盧俊義/康來昌牧師講道
**回傳範例**:
json
{
"total_count": 7,
"commentaries": [
{"id": 1, "name": "CBOL加插註釋"},
{"id": 2, "name": "parsing 註釋"},
{"id": 3, "name": "信望愛站註釋"},
{"id": 4, "name": "串珠"},
{"id": 8, "name": "蔡茂堂牧師講道"},
{"id": 9, "name": "盧俊義牧師講道"},
{"id": 10, "name": "康來昌牧師講道"}
]
}
---
#### 3. ✅ list_audio_versions_tool
**狀態**: 通過
**測試參數**: 無
**測試結果**:
- 成功回傳 19 個有聲聖經版本
- 涵蓋和合本、台語、客語、廣東話、希伯來文、希臘文等
**回傳範例**:
json
{
"total_count": 19,
"versions": [
{"code": "unv", "id": 0, "name": "和合本"},
{"code": "taiwanese", "id": 1, "name": "台語"},
{"code": "hakka", "id": 2, "name": "客家話"},
{"code": "hebrew", "id": 7, "name": "希伯來文"},
{"code": "greek", "id": 9, "name": "希臘文"},
...
]
}
---
#### 4. ❌ list_apocrypha_books_tool
**狀態**: 失敗
**錯誤訊息**:
handle_list_apocrypha_books() missing 2 required positional arguments: 'api_client' and 'arguments'
**問題分析**: 工具內部實作缺少必要的參數傳遞,可能是 MCP Server 實作錯誤
---
#### 5. ❌ list_apostolic_fathers_books_tool
**狀態**: 失敗
**錯誤訊息**:
handle_list_apostolic_fathers_books() missing 2 required positional arguments: 'api_client' and 'arguments'
**問題分析**: 與 list_apocrypha_books_tool 相同問題
---
#### 6. ❌ list_fhl_article_columns_tool
**狀態**: 失敗
**錯誤訊息**:
handle_list_article_columns() missing 2 required positional arguments: 'endpoints' and 'arguments'
**問題分析**: 工具內部實作缺少必要的參數傳遞
---
#### 7. ❌ get_book_list_tool
**狀態**: 失敗
**測試參數**: `testament="OT"`, use_simplified=false
**錯誤訊息**:
get_book_list() got an unexpected keyword argument 'use_simplified'
**問題分析**: 工具定義的參數與實際實作不符,`use_simplified` 參數無效
---
### 二、查詢類工具 (12 個)
#### 8. ✅ get_bible_verse_tool
**狀態**: 通過
**測試參數**: `book="約"`, `chapter=3`, `verse="16"`, `version="unv"`, include_strong=false/true
**測試結果**:
- 成功查詢約翰福音 3:16
- 支援 Strong's Number 標註 (include_strong=true)
- 回傳經文包含中英文書卷名、章節、經文內容
**回傳範例 (無 Strong's)**:
json
{
"version": "unv",
"version_name": "FHL和合本",
"record_count": 1,
"verses": [{
"book": "約",
"book_eng": "John",
"chapter": 3,
"verse": 16,
"text": "「 神愛世人,甚至將他的獨生子賜給他們,叫一切信他的,不致滅亡,反得永生。"
}]
}
**回傳範例 (含 Strong's)**:
json
{
"text": "「<WG1063> 神<WG2316>愛<WG25><WTG5656>{<WG3779>}世人<WG2889>,甚至<WG5620>將他的獨生<WG3439>子<WG5207>賜給<WG1325><WTG5656>他們..."
}
---
#### 9. ✅ get_bible_chapter_tool
**狀態**: 通過
**測試參數**: `book="創"`, `chapter=1`, version="unv"
**測試結果**:
- 成功查詢創世記第 1 章全部 31 節經文
- 包含導航資訊 (上一節/下一節)
**回傳範例**:
json
{
"version": "unv",
"record_count": 31,
"verses": [
{"book": "創", "chapter": 1, "verse": 1, "text": "起初, 神創造天地。"},
{"book": "創", "chapter": 1, "verse": 2, "text": "地是空虛混沌,淵面黑暗; 神的靈運行在水面上。"},
...
]
}
---
#### 10. ✅ query_verse_citation_tool
**狀態**: 通過
**測試參數**: `citation="羅 8:28"`, version="unv"
**測試結果**:
- 成功解析經文引用字串 "羅 8:28"
- 正確回傳羅馬書 8:28 經文
**回傳範例**:
json
{
"verses": [{
"book": "羅",
"book_eng": "Rom",
"chapter": 8,
"verse": 28,
"text": "我們曉得萬事都互相效力,叫愛 神的人得益處,就是按他旨意被召的人。"
}]
}
---
#### 11. ✅ get_commentary_tool
**狀態**: 通過
**測試參數**: `book="約"`, `chapter=3`, verse=16
**測試結果**:
- 成功回傳約翰福音 3:16 的詳細註釋
- 包含經文背景、字詞解釋、神學意涵等豐富內容
**回傳範例**:
json
{
"book": "約",
"chapter": 3,
"verse": 16,
"commentary_count": 1,
"commentaries": [{
"commentary_name": "信望愛站註釋",
"title": "約翰福音 3章1節 到 3章21節",
"content": "... (詳細註釋內容) ..."
}]
}
---
#### 12. ✅ get_word_analysis_tool
**狀態**: 通過
**測試參數**: `book="約"`, `chapter=1`, verse=1
**測試結果**:
- 成功回傳約翰福音 1:1 的希臘文原文分析
- 包含每個字詞的 Strong's Number、詞性、型態、字根、中文解釋
**回傳範例**:
json
{
"testament": "NT",
"original_text": "Ἐν ἀρχῇ ἦν ὁ λόγος, καὶ ὁ λόγος ἦν πρὸς τὸν θεόν, καὶ θεὸς ἦν ὁ λόγος.",
"translation": "太初有道,且道與上帝同在,道就是上帝。",
"word_count": 17,
"words": [
{"position": 1, "word": "Ἐν", "strongs_number": "01722", "part_of_speech": "介系詞", "gloss": "後接間接受格,意思是「在...之內、藉著」"},
{"position": 2, "word": "ἀρχῇ", "strongs_number": "00746", "part_of_speech": "名詞", "morphology": "間接受格 單數 陰性", "gloss": "起初"},
{"position": 5, "word": "λόγος", "strongs_number": "03056", "part_of_speech": "名詞", "gloss": "道、話語"},
...
]
}
---
#### 13. ✅ lookup_strongs_tool
**狀態**: 通過
**測試參數**:
- 新約測試: number="G3056"
- 舊約測試: number="H430"
**測試結果**:
- 成功查詢 G3056 (λόγος, 道/話語) 和 H430 (אֱלֹהִים, 神)
- 回傳完整的中英文定義、相關字詞列表
**回傳範例 (G3056)**:
json
{
"strongs_number": "03056",
"original_word": "λόγος",
"chinese_definition": "3056 logos... 1) 話語 1a) 口頭的...",
"english_definition": "3056 logos... 1) of speech...",
"testament": "NT",
"related_words": [
{"word": "λέγω", "number": "02036", "occurrences": 2354, "gloss": "說,講;名叫..."},
...
]
}
---
#### 14. ✅ get_topic_study_tool
**狀態**: 通過
**測試參數**: `keyword="愛"`, source="all"
**測試結果**:
- 成功回傳 23 筆關於「愛」的主題查經資料
- 包含 Torrey 和 Naves 主題索引的中文翻譯
- 涵蓋「基督的愛」、「上帝的愛」、「對人的愛」等多個主題
**回傳範例**:
json
{
"keyword": "愛",
"total_count": 23,
"results": [
{"id": "T0001038", "source": "Naves (中文)", "topic": "仁愛/寬厚", "content": "..."},
{"id": "T0000348", "source": "Torrey (中文)", "topic": "基督的愛", "content": "..."},
...
]
}
**注意**: 英文關鍵字搜尋 (如 "faith") 回傳 0 筆結果,建議使用中文關鍵字
---
#### 15. ✅ search_available_versions_tool
**狀態**: 通過
**測試參數**: has_strongs=true
**測試結果**:
- 成功篩選出支援 Strong's Number 的版本
- 回傳 3 個版本: FHL和合本、KJV、和合本2010
**回傳範例**:
json
{
"total_count": 3,
"filters": {"has_strongs": true},
"versions": [
{"code": "unv", "name": "FHL和合本", "has_strongs": true},
{"code": "kjv", "name": "KJV", "has_strongs": true},
{"code": "rcuv", "name": "和合本2010", "has_strongs": true}
]
}
---
#### 16. ❌ get_book_info_tool
**狀態**: 失敗
**測試參數**: book="創世記"
**錯誤訊息**:
get_book_info() got an unexpected keyword argument 'use_simplified'
**問題分析**: 工具定義的 use_simplified 參數與實際實作不符
---
#### 17. ❌ get_audio_bible_tool
**狀態**: 失敗
**測試參數**: `book="約"`, `chapter=3`, version="unv"
**錯誤訊息**:
get_audio_bible() got an unexpected keyword argument 'version'
**問題分析**: 工具定義的 version 參數與實際實作不符
---
#### 18. ❌ get_bible_footnote_tool
**狀態**: 失敗
**測試參數**: `book_id=43`, footnote_id=1
**錯誤訊息**:
handle_get_bible_footnote() got an unexpected keyword argument 'book_id'
**問題分析**: 工具參數定義與實際實作嚴重不符
---
#### 19. ❌ get_apocrypha_verse_tool
**狀態**: 失敗
**測試參數**: `book="多俾亞傳"`, `chapter=1`, verse="1"
**錯誤訊息**:
handle_get_apocrypha_verse() got an unexpected keyword argument 'book'
**問題分析**: 工具參數定義與實際實作不符
---
#### 20. ❌ get_apostolic_fathers_verse_tool
**狀態**: 失敗
**測試參數**: `book="革利免一書"`, `chapter=1`, verse="1"
**錯誤訊息**:
handle_get_apostolic_fathers_verse() got an unexpected keyword argument 'book'
**問題分析**: 工具參數定義與實際實作不符
---
### 三、搜尋類工具 (5 個)
#### 21. ✅ search_bible_tool
**狀態**: 通過
**測試參數**:
- 關鍵字搜尋: `query="愛"`, `search_type="keyword"`, scope="nt"
- 希臘文編號搜尋: `query="3056"`, `search_type="greek_number"`, scope="nt"
- 希伯來文編號搜尋: `query="430"`, `search_type="hebrew_number"`, scope="ot"
**測試結果**:
- 關鍵字搜尋成功回傳 10 筆包含「愛」的新約經文
- 希臘文編號搜尋成功回傳含 λόγος (G3056) 的經文
- 希伯來文編號搜尋成功回傳含 אֱלֹהִים (H430) 的經文
**回傳範例 (關鍵字搜尋)**:
json
{
"total_count": 10,
"query": "愛",
"search_type": "keyword",
"scope": "nt",
"results": [
{"book": "太", "chapter": 3, "verse": 17, "text": "從天上有聲音說:「這是我的愛子,我所喜悅的。」"},
{"book": "太", "chapter": 5, "verse": 43, "text": "「你們聽見有話說:『當愛你的鄰舍,恨你的仇敵。』"},
...
]
}
---
#### 22. ✅ search_bible_advanced_tool
**狀態**: 通過
**測試參數**: `query="信心"`, `range_start=45`, range_end=66
**測試結果**:
- 成功限定範圍搜尋 (羅馬書到啟示錄)
- 回傳包含「信心」的 10 筆經文
**回傳範例**:
json
{
"total_count": 10,
"query": "信心",
"range": {"start": 45, "end": 66},
"results": [
{"book": "羅", "chapter": 1, "verse": 12, "text": "這樣,我在你們中間,因你與我彼此的信心,就可以同得安慰。"},
{"book": "羅", "chapter": 4, "verse": 19, "text": "他將近百歲的時候,雖然想到自己的身體如同已死...他的信心還是不軟弱;"},
...
]
}
---
#### 23. ✅ search_strongs_occurrences_tool
**狀態**: 通過
**測試參數**:
- 新約測試: `number="G26"`, limit=10
- 舊約測試: `number="H430"`, limit=5
**測試結果**:
- 成功回傳 G26 (ἀγάπη, 愛) 在聖經中的出現位置
- 成功回傳 H430 (אֱלֹהִים, 神) 在舊約中的出現位置
- 同時回傳該 Strong's Number 的完整定義和相關字詞
**回傳範例 (G26)**:
json
{
"strongs_info": {
"strongs_number": "00026",
"original_word": "ἀγάπη",
"chinese_definition": "1) 重視,喜歡,愛上...",
"related_words": [
{"word": "ἀγαπάω", "number": "00025", "occurrences": 143, "gloss": "愛;表明或證明一個人的愛..."},
{"word": "ἀγάπη, ης, ἡ", "number": "00026", "occurrences": 116, "gloss": "愛;早期教會信徒一同分享的愛餐"}
]
},
"occurrences": {
"total_count": 10,
"results": [
{"book": "太", "chapter": 24, "verse": 12, "text": "只因不法的事增多,許多人的愛心才漸漸冷淡了。"},
{"book": "約", "chapter": 13, "verse": 35, "text": "你們若有彼此相愛的心,眾人因此就認出你們是我的門徒了。"},
...
]
}
}
---
#### 24. ❌ search_fhl_articles_tool
**狀態**: 失敗
**測試參數**: `content="信心"`, limit=5
**錯誤訊息**:
handle_search_articles() got an unexpected keyword argument 'title'
**問題分析**: 工具參數定義與實際實作不符
---
## 🔍