Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Curated ssh_probe diagnostics and single-host ssh_exec over an allowlisted SSH fleet.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
SSH_FLEET_TRANSPORT, SSH_FLEET_CMD_TIMEOUT_SECONDS, SSH_FLEET_OUTPUT_CAP_BYTES, SSH_FLEET_PROBE_CONCURRENCY, SSH_FLEET_PROBE_MAX_HOSTS, SSH_FLEET_AUTH_TOKEN「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"ssh-fleet": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SSH_FLEET_TRANSPORT",
"-e",
"SSH_FLEET_CMD_TIMEOUT_SECONDS",
"-e",
"SSH_FLEET_OUTPUT_CAP_BYTES",
"-e",
"SSH_FLEET_PROBE_CONCURRENCY",
"-e",
"SSH_FLEET_PROBE_MAX_HOSTS",
"-e",
"SSH_FLEET_AUTH_TOKEN",
"ghcr.io/inhuman/mcp-ssh-fleet:0.1.5"
],
"env": {
"SSH_FLEET_TRANSPORT": "your-value",
"SSH_FLEET_CMD_TIMEOUT_SECONDS": "your-value",
"SSH_FLEET_OUTPUT_CAP_BYTES": "your-value",
"SSH_FLEET_PROBE_CONCURRENCY": "your-value",
"SSH_FLEET_PROBE_MAX_HOSTS": "your-value",
"SSH_FLEET_AUTH_TOKEN": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add ssh-fleet --env SSH_FLEET_TRANSPORT=your-value --env SSH_FLEET_CMD_TIMEOUT_SECONDS=your-value --env SSH_FLEET_OUTPUT_CAP_BYTES=your-value --env SSH_FLEET_PROBE_CONCURRENCY=your-value --env SSH_FLEET_PROBE_MAX_HOSTS=your-value --env SSH_FLEET_AUTH_TOKEN=your-value -- docker run -i --rm -e SSH_FLEET_TRANSPORT -e SSH_FLEET_CMD_TIMEOUT_SECONDS -e SSH_FLEET_OUTPUT_CAP_BYTES -e SSH_FLEET_PROBE_CONCURRENCY -e SSH_FLEET_PROBE_MAX_HOSTS -e SSH_FLEET_AUTH_TOKEN ghcr.io/inhuman/mcp-ssh-fleet:0.1.5動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"ssh-fleet": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SSH_FLEET_TRANSPORT",
"-e",
"SSH_FLEET_CMD_TIMEOUT_SECONDS",
"-e",
"SSH_FLEET_OUTPUT_CAP_BYTES",
"-e",
"SSH_FLEET_PROBE_CONCURRENCY",
"-e",
"SSH_FLEET_PROBE_MAX_HOSTS",
"-e",
"SSH_FLEET_AUTH_TOKEN",
"ghcr.io/inhuman/mcp-ssh-fleet:0.1.5"
],
"env": {
"SSH_FLEET_TRANSPORT": "your-value",
"SSH_FLEET_CMD_TIMEOUT_SECONDS": "your-value",
"SSH_FLEET_OUTPUT_CAP_BYTES": "your-value",
"SSH_FLEET_PROBE_CONCURRENCY": "your-value",
"SSH_FLEET_PROBE_MAX_HOSTS": "your-value",
"SSH_FLEET_AUTH_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"ssh-fleet": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SSH_FLEET_TRANSPORT",
"-e",
"SSH_FLEET_CMD_TIMEOUT_SECONDS",
"-e",
"SSH_FLEET_OUTPUT_CAP_BYTES",
"-e",
"SSH_FLEET_PROBE_CONCURRENCY",
"-e",
"SSH_FLEET_PROBE_MAX_HOSTS",
"-e",
"SSH_FLEET_AUTH_TOKEN",
"ghcr.io/inhuman/mcp-ssh-fleet:0.1.5"
],
"env": {
"SSH_FLEET_TRANSPORT": "your-value",
"SSH_FLEET_CMD_TIMEOUT_SECONDS": "your-value",
"SSH_FLEET_OUTPUT_CAP_BYTES": "your-value",
"SSH_FLEET_PROBE_CONCURRENCY": "your-value",
"SSH_FLEET_PROBE_MAX_HOSTS": "your-value",
"SSH_FLEET_AUTH_TOKEN": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
SSH_FLEET_TRANSPORT envSSH_FLEET_CMD_TIMEOUT_SECONDS envSSH_FLEET_OUTPUT_CAP_BYTES envSSH_FLEET_PROBE_CONCURRENCY envSSH_FLEET_PROBE_MAX_HOSTS envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント inhuman で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:SSH_FLEET_AUTH_TOKEN
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.5)がレジストリに届いたのは4 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにDockerも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Reelsaw
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drive a self-hosted Reelsaw: turn long videos into vertical clips, edit, re-render and export them.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
English | Русский
MCP server that gives an agent two tools over SSH to a fleet of hosts outside Kubernetes. The SSH key is a mounted secret (never enters model context); the inventory is a fail-closed allowlist.
check is one of a built-in set: uptime, disk, mem, failed, logs. Arbitrary commands cannot be passed. Class: read-only.write-external: the server executes the command, while access gating (approval/RBAC) belongs to the MCP client.Both: output size cap, per-host timeout, TOFU host-key check (fingerprint in logs), output as one section per host.
| Variable | Default | Meaning | ||
|---|---|---|---|---|
SSH_FLEET_TRANSPORT | http | http (StreamableHTTP, endpoint /mcp) \ | sse \ | stdio |
SSH_FLEET_ADDR | :8080 | listen address for http/sse | ||
SSH_FLEET_AUTH_TOKEN | — | optional X-MCP-AUTH token | ||
SSH_FLEET_INVENTORY_PATH | /etc/ssh-fleet/inventory.yaml | path to the inventory (configmap) | ||
SSH_FLEET_KEY_PATH | /etc/ssh-fleet/id_ed25519 | path to the private key (secret) | ||
SSH_FLEET_OUTPUT_CAP_BYTES | 8192 | output cap per section | ||
SSH_FLEET_CMD_TIMEOUT_SECONDS | 20 | per-host timeout | ||
SSH_FLEET_PROBE_CONCURRENCY | 8 | probe parallelism pool | ||
SSH_FLEET_PROBE_MAX_HOSTS | 50 | safety cap on hosts per probe |
Inventory format — see deploy/inventory.example.yaml.
docker run -i --rm \
-v /path/to/inventory.yaml:/etc/ssh-fleet/inventory.yaml:ro \ -v /path/to/id_ed25519:/etc/ssh-fleet/id_ed25519:ro \ -e SSH_FLEET_TRANSPORT=stdio \ ghcr.io/inhuman/mcp-ssh-fleet:latest
This is the shape MCP clients use when installing from the MCP Registry (io.github.inhuman/mcp-ssh-fleet).
By default the server speaks StreamableHTTP; register it as a regular HTTP MCP server with endpoint /mcp (URL like http:// :8080/mcp). Both tools become available to the client.
Client-side security recommendations:
ssh_probe is read-only (curated checks only) and can be granted broadly.ssh_exec is arbitrary execution (write-external). Gate its access on the client side (approval / RBAC / user allowlist) — the server merely executes a command on an inventory host; it does not decide access policy.make test # unit tests + e2e against a real in-process SSH server
make vet make vulncheck make build make docker
Release: tag vX.Y.Z → GitHub Actions builds and publishes a multi-arch image to ghcr.io/inhuman/mcp-ssh-fleet.