連接 @seameet/mcp CLI
第 18 章:連接 @seameet/mcp CLI
@seameet/mcp CLI 是一個無介面的 Model Context Protocol 伺服器,允許其他工具 (Claude Desktop、IDE、代理) 讀取與寫入您的 SeaMeet 帳戶。由於它無介面,您透過裝置授權流程 (RFC 8628) 批准它 — CLI 顯示一個短碼,您造訪一個 URL,確認代碼,完成。
本章涵蓋網頁應用程式一側:/link 頁面、批准操作,以及防護措施。
流程,端到端
- 執行 CLI (例如
npx @seameet/mcp或一個會啟動它的用戶端)。 - CLI 列印一個短碼和一個 URL — 通常是
app.seameet.ai/link和形如ABCD-EFGH的代碼。 - 在瀏覽器中打開該 URL。
- 在
/link頁面上輸入代碼 (或者 CLI 可能已透過 query string 預填)。 - 點擊 Approve。
- CLI 以您的名義收到一個讀寫 API 金鑰,並可以開始行動。
就是這樣。整個流程通常在 30 秒內完成。
「以您的名義」意味著什麼
/link 發出的 API 金鑰是一個真實的、按使用者的、scope 在您的 SeaMeet 帳戶上的權杖。CLI 用它做的一切都會作為您的操作出現在您的資料庫中。具體來說:
- 讀取 — CLI 可以列出您的錄音、取得轉錄與摘要、跨存檔查詢 Meeting Memory。
- 寫入 — CLI 可以建立錄音 (透過上傳)、更新標題與描述、建立共享,總體上可以做您正常會話能做的事。
由於權杖綁定到您的帳戶,撤銷您的會話 (在所有裝置上登出) 不會撤銷 CLI 的權杖 — 權杖是獨立的憑證。見下方「撤銷 CLI 批准」。
需要登入
/link 頁面要求真實、已登入且已驗證的帳戶。這意味著:
- 已登出。 頁面將您重新導向到
/signin,並帶有一個攜帶代碼的returnTo參數,這樣登入後流程會帶著完好的代碼回到/link。 - 匿名訪客會話。 與已登出相同 — 訪客會話不能批准 CLI,因為 CLI 需要一個真實身分來綁定。您會被送到
/signin,以便把會話提升為真實帳戶。 - 已登入且已驗證。 批准操作已啟用。
這是一道刻意的防線。沒有它,CLI 可能會「代表」一個沒有任何人有意打開過的一次性匿名會話行動。
明確的點擊批准
/link 頁面從不自動授權。即使代碼透過 ?code=<value> 預填,您也必須明確點擊 Approve。這是防禦性的設計:載入即自動批准會是一個釣魚向量 — 惡意頁面可以在您的瀏覽器中打開 /link?code=<攻擊者的代碼>,在您注意到之前為攻擊者鑄造一個權杖。
在點擊 Approve 之前,務必核對頁面顯示的代碼與您的 CLI 顯示的代碼一致。如果不匹配,關閉頁面。
批准操作
點擊 Approve,然後:
- 網頁應用程式向 SeaMeet 的伺服器驗證代碼。
- 伺服器檢查代碼有效、未過期,並綁定到真實 (非匿名) 帳戶。
- 如果有效,它鑄造一個 API 金鑰,將其與代碼關聯,並返回成功。
- 一直在輪詢權杖端點的 CLI 收到金鑰並列印成功訊息。
- 網頁應用程式的
/link頁面顯示「Approved」— 分頁可以關閉了。
如果代碼過期了 (RFC 8628 代碼是短期的 — 通常 15 分鐘),CLI 必須產生新的並重新開始。
撤銷 CLI 批准
兩種方式:
- 從 CLI 一側。 刪除 CLI 本機儲存中的權杖 (或執行 CLI 的
logout命令,如果有)。權杖在伺服器端仍然有效,直到您也在那裡撤銷它。 - 從帳戶一側。 帳戶 → Connected apps → 透過最近使用時間找到該 CLI 批准 → Revoke。這會立即在伺服器端使權杖失效。
對於謹慎的人:在伺服器端撤銷。CLI 側的刪除只是阻止目前 CLI 程序使用權杖;它不能防止權杖的副本在別處被使用。
多個 CLI 批准
您可以多次批准 CLI (例如在每台使用的機器上批准一次)。每次批准都會鑄造一個獨立的 API 金鑰。帳戶 → Connected apps 會列出它們,並帶每個金鑰的中繼資料 (最近使用、首次批准)。
撤銷一個 CLI 批准不會影響其他的。
權杖安全
- 權杖儲存在 CLI 的本機設定目錄中,預設未加密。
- 如果您的機器被入侵,權杖也被入侵。 在伺服器端撤銷並重新批准。
- 預設情況下權杖不過期 (長期有效)。如果您想要短期權杖,按您的輪換計畫要求撤銷並重新批准。
- 權杖透過 HTTPS 傳輸 (HSTS 保護 — 參見第 17 章)。
權益傳遞
CLI 以您的身分行動 — 因此它擁有您的權益層級。如果您是免費方案,CLI 在讀取轉錄時受免費方案顯示上限約束。Sync Pro?CLI 擁有完整讀取權限。
建立錄音等寫操作會像正常會話一樣計入您的配額。
常見問題
「代碼過期了。」 代碼是短期的 (通常 15 分鐘)。重新啟動 CLI 取得新的。
「代碼批准了,但 CLI 沒有察覺。」 CLI 每隔幾秒輪詢一次權杖端點。給它 10-15 秒。如果仍然沒有,重新啟動 CLI — 它的輪詢迴圈可能崩潰了。
「我登入後丟了代碼。」 /link 頁面把代碼放在 returnTo 中 — 登入後您會帶著完好的代碼回來。如果確實丟了,重新啟動 CLI 取得新代碼。
「Approve 返回 'not_entitled' 錯誤。」 帳戶的權益不包含 CLI 批准 — 目前 CLI 批准需要 Sync Pro。升級後重試。
「我批准了,但我的 CLI 仍 然說 'authorization required'。」 檢查 CLI 的設定目錄中是否存有權杖 (路徑因 CLI 版本而異)。如果為空,CLI 錯過了權杖 — 重新啟動並重新批准。
快速參考
| 任務 | 方法 |
|---|---|
| 批准 CLI 代碼 | app.seameet.ai/link → 輸入/核對代碼 → Approve |
| 撤銷 CLI 權杖 (伺服器側) | 帳戶 → Connected apps → Revoke |
| 撤銷 CLI 權杖 (用戶端側) | CLI 的 logout 命令,或刪除 CLI 設定檔 |
| 查看所有批准 | 帳戶 → Connected apps |
| 在多台機器上批准 | 每台機器批准一次 — 每台鑄造一個獨立權杖 |
最後更新:2026-08-28
發佈日期: