SnapDeploy MCP
公式SnapDeployアプリ(AWS上のDockerコンテナ)をClaude Code、Cursor、Codex、またはGemini CLIからデプロイおよび管理:ビルド、ログ、環境変数、アドオン、ドメイン。
SnapDeploy MCPで何ができますか?
- GitHubからのデプロイ — 接続されたGitHubリポジトリのデプロイを依頼し、
deployを使用してライブURLを取得します。 - 環境変数の管理 —
withとset_envを使用して、シークレット値を公開せずにアプリの環境変数を設定または更新します。 - デプロイの監視 —
get_status、get_logs、get_deploymentsを使用して、デプロイのステータスを確認し、ログを表示し、最近のデプロイを一覧表示します。 - コンテナの制御 —
start_container、stop_container、wake_containerを使用して、必要に応じてコンテナを起動、停止、またはウェイクアップします。 - リソースのプロビジョニング —
create_databaseとadd_domainを使用して、マネージドデータベースを作成するか、カスタムドメインをアプリに接続します。
ドキュメント
@snapdeploy/mcp
AIアシスタントからSnapDeployコンテナをデプロイおよび管理できます — Claude Code、Claude Desktop、Cursor、Windsurf、Codex CLI、Gemini CLI、またはstdioで Model Context Protocolを話す任意のクライアントに対応しています。
"このリポジトリをSnapDeployにデプロイして" と言うだけで、ライブURLが返ってきます。ビルド、ログ、環境変数、マネージドデータベース、カスタムドメイン — チャットから離れることなくすべてを操作できます。
セットアップ
- snapdeploy.devにサインインし、API Keysを開いて
deployスコープを持つトークンを作成します(ページがあなたのトークンを あらかじめ入力したスニペットを生成します)。 - サーバーをクライアントに追加します:
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プラグイン(トークンは設定ファイルではなくセキュアストレージに保存):
/plugin marketplace add AAR-Labs/snapdeploy-mcp
/plugin install snapdeploy@snapdeploy
セッションを再起動すると、snapdeployツールが表示されます。リポジトリはGitHub上にあり、
GitHubがSnapDeployに一度接続されている必要があります(接続されていない場合はコネクタがリンクを返します)。
ツール
| スコープ | ツール |
|---|---|
read | list_apps get_status get_logs get_deployments check_quota list_repos detect_env_vars |
deploy | deploy deploy_image set_env start_container stop_container wake_container |
manage | create_database add_domain assign_always_on |
スコープは入れ子になります(read ⊂ deploy ⊂ manage)。サーバーはツール実行前にスコープを強制します。
削除ツールは存在せず、サーバーはすべてのトークンに対して削除、サブスクリプション解約、パスワード変更を拒否します —
これらはダッシュボードまたはモバイルアプリにサインインしたユーザーが必要です。
ビルド済みイメージ。 deployは接続されたGitHubリポジトリからビルドします。イメージツールはありません。公開Dockerイメージを実行するには、ダッシュボード(Deploy Your Application → Docker Image)またはPOST /api/mobile/containersとname、image、imageTag、port、続いてPOST /api/mobile/containers/{containerId}/startを使用してください。イメージはDocker Hub、ghcr.io、quay.io、またはpublic.ecr.awsから取得し、linux/amd64またはlinux/arm64を公開し、SnapDeployの作成時ポリシーチェックに合格する必要があります。400 Security policy violationは最終的なものであり、再試行してはなりません。完全なルール:https://snapdeploy.dev/llms-full.md
セーフティモデル
- 破壊的な操作は一切なし。 同じトークンで生のAPI呼び出しにエスカレーションするエージェントでも、
403 INTERACTIVE_SESSION_REQUIREDを受け取ります。 - シークレットがモデルに届くことはありません。 環境変数の値は
(set)として返され、認証情報はマスクされます — このコネクタだけでなく、サーバー側で処理されます。 - スコープ付き・期限付き・失効可能なトークンには独自のレート制限があります。API Keysページで失効させると、その瞬間からすべてのリクエストが401を返します。
- 再試行安全なデプロイ。 10分以内の同一リクエストは、別のビルドを開始せずに元のデプロイを返します。
- プラン制限は中継され、再試行されません。 402/429応答にはSnapDeploy独自のメッセージとアップグレードリンクが含まれ、アシスタントには再試行しないよう指示されます。
環境変数
| 変数 | 必須 | 意味 |
|---|---|---|
SNAPDEPLOY_API_KEY | はい | スコープ付きトークン(sd_pat_…)またはレガシーAPIキー |
SNAPDEPLOY_READ_ONLY | いいえ | 1は読み取りツールのみを公開します |
SNAPDEPLOY_BASE_URL | いいえ | デフォルトはhttps://snapdeploy.dev |
リンク
- ガイド:Claude Code · Cursor · Codex / Gemini CLI · Lovableエクスポート
- リファレンス:snapdeploy.dev/docs/mcp · API
- 設計メモ:デプロイできるエージェントは削除できてはならない理由
MIT © AAR Labs