SnapDeploy MCP
官方從 Claude Code、Cursor、Codex 或 Gemini CLI 部署和管理 SnapDeploy 應用程式(AWS 上的 Docker 容器):建置、日誌、環境變數、附加元件、網域。
你可以用 SnapDeploy MCP 做什麼?
- 部署 GitHub 仓库 — 让您的助手将仓库部署到 SnapDeploy,并通过
deploy工具获取实时 URL。 - 管理环境变量 — 指示您的助手为容器设置或检查环境变量,值将以
(set)形式遮蔽显示。 - 监控部署状态 — 请求任何 SnapDeploy 容器的实时状态、日志或部署历史。
- 控制容器生命周期 — 无需离开聊天界面,即可按需启动、停止或唤醒容器。
- 配置资源 — 直接在对话中创建托管数据库或为您的部署分配自定义域名。
文件
@snapdeploy/mcp
從你的 AI 助理部署和管理 SnapDeploy 容器—— Claude Code、Claude Desktop、Cursor、Windsurf、Codex CLI、Gemini CLI,或任何支援 Model Context Protocol(透過 stdio)的用戶端。
只要說 「把這個 repo 部署到 SnapDeploy」,就能拿到一個可用的 URL。建置、日誌、環境變數、 受管資料庫和自訂網域——都不需要離開聊天視窗。
設定
- 在 snapdeploy.dev 登入,開啟 API Keys 並建立一個
具有
deploy權限範圍的 token(該頁面會產生下方片段,並已填入你的 token)。 - 將伺服器加入你的用戶端:
Claude Code
claude mcp add --scope user snapdeploy -e SNAPDEPLOY_API_KEY=sd_pat_your_token -- npx -y @snapdeploy/mcp
Cursor (~/.cursor/mcp.json)、Windsurf (~/.codeium/windsurf/mcp_config.json)、
Gemini CLI (~/.gemini/settings.json)、Claude Desktop 及其他使用 JSON 設定的用戶端:
{
"mcpServers": {
"snapdeploy": {
"command": "npx",
"args": ["-y", "@snapdeploy/mcp"],
"env": { "SNAPDEPLOY_API_KEY": "sd_pat_your_token" }
}
}
}
Codex CLI (~/.codex/config.toml):
[mcp_servers.snapdeploy]
command = "npx"
args = ["-y", "@snapdeploy/mcp"]
env = { SNAPDEPLOY_API_KEY = "sd_pat_your_token" }
Claude Code 外掛(token 儲存在安全儲存中,而非設定檔):
/plugin marketplace add AAR-Labs/snapdeploy-mcp
/plugin install snapdeploy@snapdeploy
重新啟動工作階段;snapdeploy 工具就會出現。你的 repository 必須在 GitHub 上,且
GitHub 必須與 SnapDeploy 連線一次(如果尚未連線,連接器會回傳連結)。
工具
| 權限範圍 | 工具 |
|---|---|
read | list_apps get_status get_logs get_deployments check_quota list_repos detect_env_vars |
deploy | deploy set_env start_container stop_container wake_container |
manage | create_database add_domain assign_always_on |
權限範圍是巢狀的(read ⊂ deploy ⊂ manage);伺服器會在執行任何工具前強制檢查。
沒有刪除工具,而且伺服器會拒絕所有 token 的刪除、訂閱取消和密碼變更——
這些需要有人登入儀表板或行動應用程式才能操作。
安全模型
- 絕無破壞性操作。 即使 agent 使用相同 token 升級為原始 API 呼叫,也只會得到
403 INTERACTIVE_SESSION_REQUIRED。 - 機密永遠不會到達模型。 環境變數值會以
(set)回傳,且憑證會被遮罩—— 這是在伺服器端處理,而不只是這個連接器。 - 具範圍、會過期、可撤銷的 token,並有各自的速率限制。在 API Keys 頁面撤銷後, 從那一刻起每個請求都會回傳 401。
- 可重試安全的部署。 十分鐘內相同的請求會回傳原本的部署,而不是啟動另一次建置。
- 方案限制會轉達,不會重試。 402/429 回覆會攜帶 SnapDeploy 自己的訊息和升級連結, 並告知助理不要重試。
環境變數
| 變數 | 必填 | 說明 |
|---|---|---|
SNAPDEPLOY_API_KEY | 是 | 具範圍的 token(sd_pat_…)或舊版 API key |
SNAPDEPLOY_READ_ONLY | 否 | 1 只會暴露唯讀工具 |
SNAPDEPLOY_BASE_URL | 否 | 預設為 https://snapdeploy.dev |
連結
- 指南:Claude Code · Cursor · Codex / Gemini CLI · Lovable exports
- 參考文件:snapdeploy.dev/docs/mcp · API
- 設計說明:為什麼能部署的 agent 就不能刪除
MIT © AAR Labs