文章

【RiverNote】深入了解 Gemini CLI 與 MCP 架構

【RiverNote】深入了解 Gemini CLI 與 MCP 架構

在使用 Gemini CLI 進行開發維運時,理解 MCP (Model Context Protocol)工具執行權限管理 是確保開發效率與系統安全的關鍵。

1. 什麼是 MCP (Model Context Protocol)?

MCP 是一種標準化的開放協議,旨在解決 AI 工具整合的碎片化問題,提供 AI 與外部資料源間的統一介面。

  • 機制:MCP 允許 AI 代理(如 Gemini CLI)透過標準協議連接至 GitHub、MySQL、雲端 API 等外部資料源,無需針對每個服務撰寫專用的整合程式。
  • 技術優勢
    • 隨插即用:擴展性高,能快速導入新的技術棧支援。
    • 安全隔離:透過標準化協定進行權限控管,減少敏感資訊(如 API Key)散落風險。

2. 工具執行權限管理 (Safety & Approval)

Gemini CLI 對於具備系統變更能力的工具(如 replacewrite_filerun_shell_command)採取嚴格的確認機制,以防止誤操作。

確認視窗選項說明:

  • Allow Once (允許一次):授權當次工具呼叫執行。適用於首次測試指令或高風險設定。
  • Allow for this session (此階段允許):在當前 CLI 進程中,執行相同工具將不再觸發確認,提升大型重構效率。
  • Modify with external editor (使用外部編輯器):暫停執行流程,調用系統設定的編輯器(如 Vim)開啟內容,允許使用者手動審核並調整 AI 建議的程式碼,最終由使用者確認後執行。
  • No, suggest changes (esc):拒絕當次變更,系統會將拒絕訊息回傳,觸發 AI 的反思機制,進而根據你的回饋修正邏輯。

策略管理

系統的安全政策儲存於 ~/.gemini/policies/ 中。若需管理或重置許可規則,可直接編輯該目錄下的 .toml 設定檔。


結語:透過這套架構,我們不僅是使用者與工具的關係,更是一對具備安全意識的系統維運夥伴。保持對工具的審查權,是每一位工科人的基本功。

本文章以 CC BY 4.0 授權