MCP 連接器
透過 Claude 目錄連接
在 Claude 目錄中開啟 Nibomo,連接後登入你的 Nibomo 帳號,並授權存取。Nibomo 列在社群連接器(Community connectors)中。
若要在 Claude Code 使用,請使用同一個 Claude 訂閱帳號,並在連接後執行 /mcp 確認。若使用 API 金鑰或第三方供應商登入,系統不會自動載入 claude.ai 上的連接器。
你也可以直接設定 Claude Code。執行以下指令,然後在 Claude Code 中開啟 /mcp,並在瀏覽器中完成授權:
claude mcp add --transport http nibomo https://mcp.nibomo.com/mcp
概覽
Nibomo 提供遠端 MCP(Model Context Protocol)伺服器。MCP 用戶端和 AI 助理可讀取你待複習的閃卡,一次問一題陪你複習,或幫你製作、編輯閃卡和牌組。
AI 助理可以透過這個 MCP 伺服器連線,適合 Claude 或 Cursor 等 MCP 用戶端。命令列助理也可以使用 Agent API 探索網址。兩種方式都使用同一套介面,並依使用者身分限制可存取的資料。本頁介紹的是 MCP 伺服器。
使用以下網址連線:
https://mcp.nibomo.com/mcp
傳輸方式為 Streamable HTTP。伺服器提供八項工具,可探索工作區、讀寫閃卡和牌組、查閱參考指南、複習閃卡及查看帳號用量。
在用戶端新增連接器
在多數用戶端,你可以將遠端 MCP 伺服器加為自訂連接器:
- 開啟用戶端的連接器或 MCP 伺服器設定。
- 新增自訂連接器,貼上伺服器網址
https://mcp.nibomo.com/mcp。 - 若使用互動式用戶端,請依提示在瀏覽器中授權。伺服器使用 OAuth 2.1 和動態用戶端註冊,因此無須貼上用戶端密鑰,也無須先註冊應用程式。
- 若在無介面或命令列環境下使用,請用 Agent API 金鑰設定
Authorization: Bearer fca_…標頭,以代替瀏覽器授權。
完成授權後,先呼叫一次 list_workspaces 選擇工作區,再用 sql_query 讀取資料,或用 sql_execute 寫入閃卡和牌組。複習時,依序呼叫 next_review_card、reveal_answer 和 submit_review。
工具
伺服器提供八項工具。讀取和寫入刻意分開,因此同一項工具不會混合安全和破壞性操作。
get_usage_limits:唯讀。傳回帳號方案、限制和當月 AI 用量,不讀取或修改閃卡。sql_query:唯讀。使用SHOW TABLES、DESCRIBE、SHOW COLUMNS或SELECT讀取閃卡和牌組。sql_execute:以不可分割的批次對閃卡和牌組執行寫入(INSERT、UPDATE、DELETE)。list_workspaces:唯讀。列出你可存取的工作區,包括各工作區的workspaceId、名稱、有效閃卡數量、最近活動,以及目前是否為你選定的預設工作區。你可以將傳回的workspaceId用於 SQL 和複習工具的選用workspaceId參數。get_guide:唯讀。依主題傳回參考指南,支援sql_dialect、card_authoring、bulk_authoring或review_flow,不讀取工作區資料。next_review_card:唯讀。依照應用程式的待複習順序傳回下一張閃卡,只包含正面。可使用選用參數tags或deckId縮小待複習範圍。reveal_answer:唯讀。學習者試著回答正面的問題後,傳回該閃卡的背面。submit_review:記錄一次Again、Hard、Good或Easy評分,並更新該閃卡的 FSRS 複習排程。
這個 SQL 介面只支援特定語法。本文件僅說明該介面支援的語法,不能作為 PostgreSQL 相容性參考。陳述式只能存取 workspace、cards、decks 和 review_events 資源。每個陳述式的範圍限於你自己的工作區,讀取和寫入各以每個陳述式 100 列為上限。
複習
複習工具讓 AI 助理一次問學習者一個問題,記錄每次評分,並據此更新該張閃卡的 FSRS 複習排程:
next_review_card傳回cardId和frontText。沒有待複習的閃卡時,會傳回card: null。- 學習者回答後,
reveal_answer會傳回該閃卡的backText。 submit_review接受cardId、由用戶端產生且格式為 UUID 的reviewId、rating,以及學習者的 IANA 時區reviewedTimeZone。伺服器會記錄複習時間並傳回新的複習排程。
若不確定提交是否成功,請用相同的 reviewId 重試。系統不會重複記錄同一次複習。提交時也可能收到以下回應:
409 REVIEW_EVENT_CONFLICT:該次複習已記錄,錯誤詳細資料包含閃卡目前的排程。409 REVIEW_ID_CARD_MISMATCH:該reviewId已用於另一張閃卡的複習紀錄,因此此次未儲存。請使用新的reviewId再次提交。409 REVIEW_STALE:閃卡記錄的複習時間等於或晚於目前的伺服器時間。請複習另一張閃卡。
只能透過 submit_review 記錄複習。SQL 無法寫入 review_events 或 FSRS 排程狀態。若要查看完整的複習及評分規則,請呼叫 get_guide 並指定 review_flow 主題。
閃卡格式
所有閃卡遵循同一套規則,工具會依據這些規則運作:
front_text只放問題或複習提示,不放答案。back_text放答案,也可以附上具體例子。
AI 助理透過 sql_execute 製作閃卡時會遵循這套規則,因此完成後就能用間隔重複的方式複習這些閃卡。
驗證
兩種方式都使用同一套介面,並依使用者身分限制可存取的資料。
OAuth 2.1(互動式連接器用戶端)
伺服器採用帶有 PKCE 的授權碼流程和動態用戶端註冊。將 MCP 網址加為自訂連接器,再到瀏覽器完成授權,無須事先提供共用的用戶端密鑰。服務探索採用標準方式:
- 受保護資源的中繼資料:
https://mcp.nibomo.com/.well-known/oauth-protected-resource - 授權伺服器的中繼資料:
https://auth.flashcards-open-source-app.com/.well-known/oauth-authorization-server
API 金鑰(無介面及命令列環境)
依照 API 參考文件,使用電子郵件一次性驗證碼登入並取得長期有效、以 fca_ 開頭的 Agent API 金鑰,再將它當作 Bearer 權杖傳送:
Authorization: Bearer fca_ABCDEFGH_0123456789ABCDEFGHJKMNPQRS
REST Agent API 也接受同一把金鑰,使用時無須開啟瀏覽器或執行 OAuth 授權往返流程。
https://api.nibomo.com/v1/ 的探索回應是這兩種方式的正式機器可讀說明,/v1/agent 也提供相同內容。
安全與存取範圍
剖析器會把 SQL 工具限制在特定語法範圍內。工具無法任意存取資料庫,因此可以放心核准使用:
- 只允許指定的陳述式:
sql_query只接受SHOW TABLES、DESCRIBE、SHOW COLUMNS和SELECT。sql_execute只接受INSERT、UPDATE和DELETE。其他陳述式會在剖析時遭拒。 - 資源限制:陳述式只能存取
workspace、cards、decks和review_events。 - 以工作區為範圍:每個 SQL 陳述式和每次複習都限於你有權存取的單一工作區,即你傳入的
workspaceId或目前選定的預設工作區。無法跨租戶存取。 - 嚴格檢查參數:所有工具都會拒絕未知參數。若將
workspaceId拼錯,系統會回傳錯誤,避免在預設工作區執行。 - 用量上限:每個陳述式最多
100列,每批最多50個陳述式,回應上限約為12k個詞元。每批變更會以不可分割的方式套用。 - 讀寫分離:
get_usage_limits、sql_query、list_workspaces、get_guide、next_review_card和reveal_answer都是唯讀工具(readOnlyHint),不會修復資料、重新計算排程或變更閃卡狀態。只有sql_execute和submit_review可以寫入(destructiveHint)。sql_execute寫入閃卡和牌組,submit_review記錄複習結果並更新該閃卡的排程。
應用程式、後端和基礎設施均為開源,你可以自行架設,並使用相同的連接器連到自己的部署環境。