Skip to main content

林協霆醫師

openevidence-mcp:將 OpenEvidence 包裝為 MCP 伺服器並整合 PubMed/Crossref 驗證

Table of Contents

# Introduction(引言)

OpenEvidence 為近年備受關注的醫學文獻 AI 問答平台,能在臨床問題上整合即時文獻並提供出處連結。然而 OpenEvidence 並未開放官方 MCP 介面,使其結果難以直接接入現代 AI Coding 助手如 Claude Code、Codex 與 Gemini CLI 的對話流。對於日常需要在醫學書寫與研究中即時查證文獻的醫師而言,這形成顯著的工作流斷層:使用者必須在瀏覽器與 IDE 之間切換,並手動處理引用格式。

本專案提出一個非官方但可重現的 MCP 伺服器實作,將 OpenEvidence 的問答能力以工具呼叫的方式暴露給 LLM 客戶端,並在輸出端整合 BibTeX 匯出與 Crossref 驗證,使每一筆引用都能被自動追溯與重新核實。

# Methods(方法)

伺服器以 Python 標準函式庫為主撰寫,避免複雜外部相依以簡化部署。驗證採用 cookies.json 機制:使用者於瀏覽器登入 OpenEvidence 後匯出 Cookie,伺服器讀取後以同一 session 呼叫後端 API。MCP 工具介面提供至少一個查詢函式,回傳 OpenEvidence 的答案與引用列表;引用會進一步被傳入 Crossref API 比對 DOI 與標題的一致性,標記出可能的幻覺或錯誤匹配。

伺服器另外附帶針對 Claude、Codex、Gemini 的安裝協助腳本,自動將設定寫入各客戶端的 mcp.json 或對應設定檔,降低非工程背景使用者的配置門檻。輸出可選 BibTeX 格式,方便直接導入 Zotero 或學術寫作管線。

# Results(結果)

藉由將 OpenEvidence 包裝為 MCP 工具,使用者可在 LLM 對話中直接以自然語言查詢臨床文獻,並在同一回應中取得可被 Crossref 驗證的 BibTeX 條目。此設計縮短了從「問題」到「可重現引用」的距離,並能搭配多客戶端使用,避免工作流被綁定於單一供應商。引文驗證模組進一步降低 LLM 幻覺帶來的風險。

# Discussion(討論)

本專案展示了 MCP 作為「私域整合層」的價值:當官方未提供標準介面時,使用者仍能以最小成本將自己日常使用的工具納入 AI 對話流。限制方面,由於採用 Cookie 驗證,使用者需自行管理失效與更新;同時非官方 API 可能在後端變動時失靈。未來方向包括:以 Crossref 結合 PubMed 雙重驗證、加入引用評分機制,並探討於本地 LLM 上重現相同管線的可行性。

# 連結