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が返ってきます。ビルド、ログ、環境変数、マネージドデータベース、カスタムドメイン — チャットから離れることなくすべてを操作できます。

セットアップ

  1. snapdeploy.devにサインインし、API Keysを開いて deployスコープを持つトークンを作成します(ページがあなたのトークンを あらかじめ入力したスニペットを生成します)。
  2. サーバーをクライアントに追加します:

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に一度接続されている必要があります(接続されていない場合はコネクタがリンクを返します)。

ツール

スコープツール
readlist_apps get_status get_logs get_deployments check_quota list_repos detect_env_vars
deploydeploy deploy_image set_env start_container stop_container wake_container
managecreate_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

リンク

MIT © AAR Labs