安裝
npm install && npm run build && npm start適合誰
需要讓模型透過 Docker Hub API 做映像內容發現,並在帶上個人存取權杖後管理儲存庫的人。適合本機已安裝 Docker、具備 Node.js 22+,並且能接受「權杖可選、但一旦用 HTTP 帶上 HUB_PAT_TOKEN,能碰到該入口的人就能以該身分建立和修改儲存庫」這一前提的操作者。不適合只想看網頁目錄、或計畫把 HTTP 連接埠暴露到網路卻未讀過原始碼安全說明的人。官方頁面: https://github.com/docker/hub-mcp
3 分鐘完成第一次嘗試
只走一條官方路徑:在儲存庫根目錄建置後,用預設 stdio 啟動。第一次不要改成 http。
前置條件:已安裝 Docker,以及 Node.js 22+。個人存取權杖是可選的;第一次嘗試不要把權杖綁到 HTTP 傳輸。
安裝與啟動位置:打開官方儲存庫根目錄,執行:
npm install
npm run build
npm start
原始碼預設傳輸是 stdio,也允許 npm start -- [--transport=http|stdio] [--port=3000] [--host=127.0.0.1]。第一次保持預設即可。
低風險動作:讓 MCP 用戶端連上 stdio 行程後,只做內容發現方向的呼叫。摘錄只寫了 intelligent content discovery 與 repository management,沒有給出具體工具名或參數,因此不要編造查詢命令;以用戶端列出的工具為準,優先選名稱像發現/查詢、而不是建立或修改的那一個。
成功訊號:npm start 在預設 stdio 下保持執行,用戶端能列出工具,而不是立刻因未建置或 Node 版本不足退出。若行程馬上結束,先核對 Node.js 22+ 和 npm run build 是否完成。
使用案例
案例一:公開內容發現。對應原始碼「interfaces with Docker Hub APIs」以及「intelligent content discovery」。在預設 stdio、且未強制要求權杖的前提下,用用戶端發起一次發現類呼叫。證據沒有寫出工具名、過濾參數或回傳欄位,所以只能確認呼叫是否打到 Docker Hub API,以及用戶端是否回傳結果或明確的 API 錯誤;不要假設存在某種搜尋語法。
案例二:儲存庫管理,有副作用。原始碼寫明 http 傳輸會用操作者的 HUB_PAT_TOKEN 派發每一次工具呼叫,能觸達該 HTTP 入口的人都可以 creating and modifying repositories。若必須管理儲存庫,先在本機為行程提供權杖再啟動,原始碼範例是 HUB_PAT_TOKEN=... npm start -- [--username=...];確認用戶端連的是你自己的行程、且 HTTP 仍只綁在 127.0.0.1 之後,再發起建立或修改。確認點:Docker Hub 上對應儲存庫出現預期變更。證據沒有列出儲存庫管理工具的參數表,缺的部分只能停在「具備建立/修改儲存庫的能力」。
使用邊界
HTTP 預設綁定 127.0.0.1,並且要求認證;原始碼要求在暴露到網路前先看 Securing the HTTP transport。不要把未加固的 HTTP 當作共用入口。
一旦 HTTP 帶著操作者權杖被別人碰到,對方就能以該 Docker Hub 身分建立和修改儲存庫。唯讀提示也不等於零風險:行程會存取 Docker Hub API,也會按你提供的權杖行事。
權杖在前置裡是可選的,但摘錄沒有寫清未認證時能看到哪些私有內容;不要假設一定能讀私有儲存庫。
證據未給出用戶端名單,也未給出完整 MCP 工具清單;不要按其他 Hub 外掛補命令。需要 Docker 與 Node.js 22+,缺其一不要改用未在摘錄中出現的安裝方式。