/ 디렉터리 / 플레이그라운드 / mcp-ssh-manager
● 커뮤니티 bvisible ⚡ 바로 사용

mcp-ssh-manager

제작: bvisible · bvisible/mcp-ssh-manager

37 SSH tools for managing fleets of Linux servers via Claude — execute, upload, download, backup, monitor health — with SSH-key + agent auth.

mcp-ssh-manager is a Node SSH wrapper exposing 37 tools for DevOps-style ops across multiple remote servers. Beyond raw exec/upload/download, it adds opinionated backup, health-monitoring, and DB-operation helpers. Configure via .env or TOML for named hosts.

왜 쓰나요

핵심 기능

라이브 데모

실제 사용 모습

ssh-manager.replay ▶ 준비됨
0/0

설치

클라이언트 선택

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ssh-manager": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-ssh-manager"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config 열기. 저장 후 앱 재시작.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "ssh-manager": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-ssh-manager"
      ],
      "_inferred": true
    }
  }
}

Cursor는 Claude Desktop과 동일한 mcpServers 스키마 사용. 프로젝트 설정이 전역보다 우선.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "ssh-manager": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-ssh-manager"
      ],
      "_inferred": true
    }
  }
}

Cline 사이드바의 MCP Servers 아이콘 클릭 후 "Edit Configuration" 선택.

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ssh-manager": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-ssh-manager"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop과 같은 형식. Windsurf 재시작 후 적용.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "ssh-manager",
      "command": "npx",
      "args": [
        "-y",
        "mcp-ssh-manager"
      ]
    }
  ]
}

Continue는 맵이 아닌 서버 오브젝트 배열 사용.

~/.config/zed/settings.json
{
  "context_servers": {
    "ssh-manager": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-ssh-manager"
        ]
      }
    }
  }
}

context_servers에 추가. 저장 시 Zed가 핫 리로드.

claude mcp add ssh-manager -- npx -y mcp-ssh-manager

한 줄 명령. claude mcp list로 확인, claude mcp remove로 제거.

사용 사례

실전 활용법: mcp-ssh-manager

Triage a fleet of VPS servers from chat

👤 Solo ops, small team SREs ⏱ ~15 min intermediate

언제 쓸까: You manage 5-20 VPS boxes and need to eyeball them all quickly.

사전 조건
  • SSH key in agentssh-add ~/.ssh/id_ed25519
  • Named host list — TOML config with name → host/user/key path
흐름
  1. Run health checks in parallel
    For each server in my fleet, run: uptime, df -h, free -h, last error in journalctl. Summarize anything concerning.✓ 복사됨
    → Per-host summary + flagged issues
  2. Drill into problems
    On server X where disk is 95% full, find the top 10 largest directories under /var.✓ 복사됨
    → du output
  3. Fix or escalate
    Is it safe to delete /var/log/old-*.gz? Confirm with me before running.✓ 복사됨
    → Plan + waits for confirm

결과: Fleet-wide triage in 5 minutes.

함정
  • Command timeouts are advisory — a hung command can leave processes running — Use timeout 30 <cmd> explicitly for anything that could hang

Take a one-shot backup from a remote server

👤 Home-lab admins, solo devs ⏱ ~15 min intermediate

언제 쓸까: You realize your important VPS has no backup and need one now, manually.

흐름
  1. Identify backup targets
    On server 'homelab', list directories under /home and /var that I should back up. Exclude logs and caches.✓ 복사됨
    → Target list
  2. Create and download archive
    Tar+gzip those into /tmp/backup-$(date +%F).tgz, then download to my local ~/Backups/.✓ 복사됨
    → Archive landed locally

결과: Ad-hoc backup in one conversation.

함정
  • Large backups blow remote /tmp — Stream directly: ssh host 'tar cz ...' > local.tgz (arrange via exec + download)
함께 쓰기: filesystem

Deploy a small app to a VPS without leaving chat

👤 Solo devs shipping side projects ⏱ ~10 min intermediate

언제 쓸까: No Coolify, no Dokku — just a bare VPS and your code.

흐름
  1. Upload code
    Upload my ./dist/ directory to server 'myvps' at /opt/myapp/, preserving perms.✓ 복사됨
    → Upload complete
  2. Restart service
    On myvps, sudo systemctl restart myapp and then check status. Send me the status output.✓ 복사됨
    → active (running) or error

결과: Deploy done in 2 minutes.

함정
  • sudo password required — Configure NOPASSWD for the specific service in /etc/sudoers.d/

조합

다른 MCP와 조합해 10배 효율

ssh-manager + filesystem

Download a remote file + edit locally + upload back

Download /etc/nginx/sites-enabled/example.conf, edit to add gzip_comp_level 6, upload and restart nginx.✓ 복사됨

도구

이 MCP가 노출하는 것

도구입력언제 호출비용
execute host, command, timeout?: int Any remote shell command free
upload host, local_path, remote_path Send a file or directory free
download host, remote_path, local_path Pull a file from a server free
sync host, local, remote, delete?: bool Bulk dir sync via rsync free
health_check host Quick pulse free

비용 및 제한

운영 비용

API 쿼터
None
호출당 토큰
Exec output can be huge — | tail -50 is your friend
금액
Free, MIT
Cap long output: cmd | head -100, never cat whole log files.

보안

권한, 시크릿, 파급범위

최소 스코프: SSH key with only the needed remote permissions
자격 증명 저장: Private keys in ~/.ssh; use SSH agent for passphrases
데이터 외부 송신: Traffic to the hosts you configure
절대 부여 금지: Root-equivalent keys to an agent that can also reach the internet

문제 해결

자주 발생하는 오류와 해결

Permission denied (publickey)

Key not in agent, or remote ~/.ssh/authorized_keys wrong. ssh-add -l to verify.

확인: ssh -i key host 'echo ok' directly first
Command timeout but process still running remotely

Wrap command with timeout: execute('host', 'timeout 30 long-command').

확인: ssh in and `ps aux`
rsync needs sshpass

Either install sshpass on local or switch to SSH key auth for that host.

대안

mcp-ssh-manager 다른 것과 비교

대안언제 쓰나단점/장점
Raw ssh via terminalYou're not using an LLM for opsManual, but well-understood
AnsibleYou manage 50+ hosts with reproducible playbooksHeavier; chat-driven ad-hoc not its strength

더 보기

리소스

📖 GitHub에서 공식 README 읽기

🐙 열린 이슈 보기

🔍 400+ MCP 서버 및 Skills 전체 보기