MCP

在一次性 Docker 容器裡執行一段 JavaScript

適合要在隔離容器裡跑一段 JavaScript 或臨時裝 npm 依賴的人,但本機必須先安裝並正在執行 Docker,第一次應走一次性容器,不要開 Detached Mode。

官方來源 · node-code-sandbox-mcp

安裝

"command": "npx",
      "args": ["-y", "node-code-sandbox-mcp"],

適合誰

如果你已經能在本機跑 Docker,並希望透過 MCP 把一段任意 JavaScript 丟進臨時容器執行,必要時再現場安裝 npm 依賴,這個伺服器對得上。官方說明它是實作 Model Context Protocol 的 Node.js 服務,專門在短暫的 Docker 容器裡執行任意 JavaScript,並支援即時安裝 npm 依賴。

它不適合 Docker 未安裝或未處於執行狀態的機器。目前摘錄只描述了「一次性腳本」和「Detached Mode 讓容器在腳本結束後保持存活」兩類能力,沒有給出工具函式名、參數表或資源限額;如果你需要一份可照抄的呼叫簽章,證據到這裡就停了。

第一次使用應選擇一次性、用完即棄的容器,而不是讓容器繼續活著。執行任意腳本是寫入向動作:會新建容器、跑你給出的程式碼,並可能拉取依賴。

3 分鐘完成第一次嘗試

先確認 Docker 已經安裝並且正在執行。官方建議的主路徑是在 MCP 用戶端的伺服器設定裡放入下面這一段,不要並列再寫一套別的安裝器:

      "command": "npx",
      "args": ["-y", "node-code-sandbox-mcp"],

把這段放進你正在使用的 MCP 用戶端設定位置。摘錄沒有寫死設定檔名,所以不要把某個用戶端路徑寫成已證實。儲存並讓該伺服器重新載入。

動手前先核兩點:Docker 守護行程確實在跑;你準備提交的腳本是自己要執行的內容。副作用是:服務會新建一個一次性 Docker 容器,在裡面執行這段 JavaScript,並可能當場安裝 npm 依賴。確認這兩點後,再發出「在一個全新的一次性容器裡跑一段一次性 JS 腳本」的請求。第一次不要打開 Detached Mode。

成功訊號是這次請求按一次性容器路徑跑起來,而不是提示 Docker 未執行,或 npx 無法拉起 node-code-sandbox-mcp。這不是零風險讀取:容器、腳本執行和依賴安裝都會發生,也不等於無網路或無隱私界線。

使用案例

案例一:跑一段用完即棄的腳本。摘錄寫明可以在一個全新的一次性容器裡執行一段一次性 JS 腳本。你應先確認腳本內容,再提交。能核到的結果是這段腳本在新容器裡被執行;回傳欄位、標準輸出格式和工具名都沒有出現在目前摘錄裡,不要把具體欄位寫成已證實。

案例二:需要腳本結束後容器仍保持存活,例如長時間執行的服務。摘錄寫明 Detached Mode 可以在腳本執行後保持容器存活。這比一次性路徑副作用更大:容器會留下來。摘錄沒有給出停止、刪除或撤銷步驟,因此不要把「關掉容器」寫成官方復原路徑。只有在你明確需要容器繼續活著時才走這條。

這兩個案例分別對應「一次性執行」和「執行後保活」,不要混成同一次未證實的呼叫。

使用界線

使用前提是 Docker 必須已安裝並正在執行。主安裝路徑是 npx -y node-code-sandbox-mcp。能力上能核到:在全新一次性容器裡跑一段 JS;以及 Detached Mode 在腳本結束後保持容器存活。即時安裝 npm 依賴也被寫進了總體說明,但安裝範圍、快取位置和網路策略沒有出現在目前摘錄。

官方頁面是 https://github.com/alfonsograziano/node-code-sandbox-mcp 。摘錄沒有給出憑證欄位、用戶端名單、CPU 或記憶體數字,也沒有撤銷或清理命令。不要把容器執行理解成可隨意回滾,也不要補未出現的工具名和參數。