← 部落格

用 Claude Code 十分鐘加上即時 WebSocket

· Hibira

把 Claude Code 接上 Hibira MCP 伺服器,讓它建立應用程式、填好 .env、接上 pusher-js,並確認第一則事件真的送到。

幫應用程式加上即時功能,大多是接線的工作:建立金鑰、放進正確的 env 檔、設定用戶端函式庫、授權私人頻道,最後確認事件真的送到。只要能連上服務,這正是 AI 程式代理最擅長的工作。Hibira MCP 伺服器就是讓它連得上的那一步。

這篇用 Claude Code 示範。Cursor、VS Code、Claude 和 ChatGPT 的用法相同,MCP 伺服器頁面有各自的設定方式。

代理能做什麼

透過 Model Context Protocol,Hibira 提供九個工具。代理可以讀取你的方案和應用程式、建立與修改應用程式、查看用量、發布測試事件、監看除錯主控台,以及取得你使用的框架的整合指南(已填入應用程式的 ID 和 key)。它不能刪除應用程式或更換 secret,也永遠看不到既有應用程式的 secret。

步驟 1:加入伺服器

你需要一個 Hibira 帳戶,免費方案就夠了。在專案資料夾中執行:

claude mcp add --transport http hibira https://hibira.io/mcp

Claude Code 第一次使用這個伺服器時,會在瀏覽器開啟 Hibira 的頁面。登入後選擇唯讀或讀取與寫入,再按核准。如果沒有自動開啟,請在 Claude Code 中執行 /mcp,選擇對 hibira 伺服器進行驗證。建立新的應用程式需要寫入權限。

步驟 2:說出你要什麼

把技術棧和執行環境講清楚。以搭配 Vite 前端的 Laravel 應用程式為例:

幫這個 Laravel 應用程式加上 Hibira 即時功能。建立一個叫 "shop-dev" 的應用程式,允許 http://localhost:5173,把金鑰寫進 .env,設定 Laravel Echo,並在私人的 orders 頻道廣播 OrderShipped。

接下來由代理自己規劃,但通常會是這樣:

  1. get_account:查看方案和 WebSocket 主機。
  2. create_app:用指定的名稱和允許的來源建立應用程式。secret 只會回傳一次,工具也會提醒代理直接寫進被 git 忽略的 .env。
  3. get_integration_guide:取得 laravel 的指南,內容包括 Echo 設定、.env 的鍵值和私人頻道的步驟,已填入你的值。
  4. 修改 .env、config/broadcasting.php、resources/js/echo.js 和 routes/channels.php,並新增一個廣播事件。

像審查任何變更一樣檢查這些差異。這些修改都是一般的 Laravel 程式,之後你的程式不會依賴代理。

步驟 3:確認事件真的送到

這就是除錯主控台派上用場的時候。你可以問:

在瀏覽器打開應用程式,然後送一則測試 OrderShipped 事件到 private-orders.1,告訴我訂閱者有沒有收到。

代理會呼叫 send_test_event,像你的伺服器一樣發布事件,再呼叫 watch_debug_events,監看應用程式的除錯主控台最多 30 秒,回報連線、訂閱和訊息。如果根本沒有人訂閱,它也看得出來,這通常表示驗證端點或允許的來源有問題。

免費方案的除錯主控台會顯示連線、訂閱和發布的訊息;付費方案還會顯示用戶端事件、webhook 和錯誤。

日常的問題

接上之後,這個伺服器不只在設定時有用:

  • 「我的應用程式離每日訊息上限還有多遠?」會用到 get_usage。
  • 「為什麼 staging.example.com 上的瀏覽器被拒絕?」會用 get_app 讀取允許的來源,你同意的話再用 update_app 修正。
  • 「幫 shop-dev 開啟用戶端事件,讓輸入中提示能運作」只需要一次 update_app。

安全使用

  • 能用唯讀就用唯讀。 設定期間給讀取與寫入,日常問答就用唯讀。
  • 沒有瀏覽器的代理改用權杖。 CI 工作和遠端代理可以用個人存取權杖代替登入。在「AI 代理」頁面建立權杖,限定單一應用程式並設定到期日:
claude mcp add --transport http hibira https://hibira.io/mcp \
  --header "Authorization: Bearer hkb_pat_..."
  • 隨時可以撤銷。 「AI 代理」頁面列出所有已連線的代理和權杖,撤銷後立即生效。
  • 測試事件是真的訊息。 它和其他發布一樣計入方案的每日上限,而且每個帳戶每秒只能送幾則。

試試看

註冊免費方案、加入伺服器,然後請你的代理幫你接上你使用的框架。如果卡住了,整合指南有同樣設定的手動版本。