MCP

hop mcp で先に SSH 接続を一覧する

助手にサーバ接続を管理させたい人向け。先に brew で入れ、hop mcp で登録する。非対話セッションで裸の hop を走らせない。最初は list_connections を呼ぶ。

公式ソース · hop

インストール

brew install danmartuszewski/tap/hop

誰向けか

AI 助手にサーバ接続を管理させたい人向け: search connections、run commands、check status across projects。hop は SSH 接続マネージャでもあるが、MCP 経路は hop mcp であり、対話パネルではない。

クラウド踏み台ではない。接続設定はローカル。公式は Config file location: ~/.config/hop/config.yaml と書く。~/.ssh/config を編集しない。hop は hop import 経由で読むだけ。

公式ページ:

https://github.com/danmartuszewski/hop

3 分で最初の試行を終える

先に公式バイナリを入れる。

brew install danmartuszewski/tap/hop

次に MCP を登録する。Claude Code: claude mcp add hop -- hop mcp。Codex CLI: codex mcp add hop -- hop mcp。Claude Desktop / Cursor / Windsurf は { "hop": { "command": "hop", "args": ["mcp"] } } を書く。出ていないインストーラを探さない。

前提: このマシンで brew が動くこと。非対話セッションで裸の hop を実行しない。公式警告: bare hop は interactive TUI and will hang。hop version、hop list などのサブコマンドを使う。

設定場所: 上記クライアントの MCP 設定と ~/.config/hop/config.yaml。公式は YAML フィールド表を書いていない。

最初の呼び出しは名指しツール list_connections を使わなければならない。成功の合図: 助手が接続を列挙できる(空でもよい)。リモートでコマンドは実行しない。空一覧はまだインポートしていないことだけを示し、hop mcp が乗っていないことではない。

接続一覧をゼロリスクと読まない。ローカル hop 設定を読む。後で run commands すればサーバに本当に届く。list_connections が通ってから実行の話をする。

利用ケース

ケース 1: MCP ツール到達を確認する。list_connections を呼ぶ。公式はこれを "Confirm hop's MCP tools are reachable" の例にしている。フィルタやプロジェクトフィールドは無い。

ケース 2: 接続を一覧できたあと、公式能力どおり search connections または check status across projects を行う。一連の説明はこれら二つのツール関数名を出していないので捏造しない。コマンド実行は書き込みだ。先に対象接続を確認し、ローカル模擬ではないと覚える。既存 SSH 設定の取り込みは hop import だけ。~/.ssh/config を手で直さない。

利用上の境界

プロセス境界: 非対話環境では裸の hop を禁止し、TUI ハングを避ける。設定境界: 主ファイルは ~/.config/hop/config.yaml。~/.ssh/config は読み取りインポートのみ。

能力境界: 名指し MCP ツールは list_connections。search / run commands / check status は能力として言及されるだけ。公式は鍵エージェント、踏み台フィールド、リモート導入方法を書いていない。