SnapDeploy MCP

공식

Claude Code, Cursor, Codex 또는 Gemini CLI에서 SnapDeploy 앱(AWS의 Docker 컨테이너)을 배포하고 관리합니다: 빌드, 로그, 환경 변수, 애드온, 도메인.

SnapDeploy MCP(으)로 무엇을 할 수 있나요?

  • Deploy a GitHub repository — 어시스턴트에게 SnapDeploy에 리포지토리를 배포하도록 요청하고 deploy 도구를 통해 실시간 URL을 받으세요.
  • Manage environment variables — 컨테이너의 환경 변수를 설정하거나 확인하도록 어시스턴트에게 지시하고, 값은 (set)으로 마스킹됩니다.
  • Monitor deployment status — SnapDeploy 컨테이너의 실시간 상태, 로그 또는 배포 기록을 요청하세요.
  • Control container lifecycle — 채팅 인터페이스를 벗어나지 않고 필요에 따라 컨테이너를 시작, 중지 또는 활성화하세요.
  • Provision resources — 대화에서 직접 관리형 데이터베이스를 생성하거나 배포에 사용자 지정 도메인을 할당하세요.

문서

@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 set_env start_container stop_container wake_container
managecreate_database add_domain assign_always_on

범위는 중첩됩니다 (read ⊂ deploy ⊂ manage); 서버는 도구가 실행되기 전에 이를 강제합니다. 삭제 도구는 없으며, 서버는 모든 토큰에 대해 삭제, 구독 취소, 비밀번호 변경을 거부합니다 — 이러한 작업은 대시보드나 모바일 앱에 로그인한 사용자가 직접 수행해야 합니다.

안전 모델

  • 파괴적인 작업은 절대 없음. 동일한 토큰으로 원시 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