SSH Remote MCP Server
SSHリモートMCPサーバー
Model Context Protocol (MCP) を介した、MCP互換クライアント向けのSSHリモートアクセス。
クイックスタート
MCPサーバーを起動するOSと同じOSで作成された仮想環境を使用してください。WindowsとWSL/Linuxの間で venv を共有しないでください。
Windows
インストール:
.\install.ps1Claude Desktop、Claude Code、またはCodexにMCPを追加:
{ "mcpServers": { "ssh-remote": { "command": "C:\\Users\\Intel\\Desktop\\adremote-mcp\\.venv-win\\Scripts\\python.exe", "args": [ "C:\\Users\\Intel\\Desktop\\adremote-mcp\\ssh_mcp_server.py" ] } } }すでに
paramikoとmcpがインストールされたWindows Python環境がある場合は、.venv-winの代わりにそのインタープリタを直接使用できます。
WSL/Linux
インストール:
./install.shClaude Desktop、Claude Code、またはCodexにMCPを追加:
{ "mcpServers": { "ssh-remote": { "command": "/home/user/adremote-mcp/.venv-linux/bin/python", "args": [ "/home/user/adremote-mcp/ssh_mcp_server.py" ] } } }WindowsドライブからWSL経由でリポジトリにアクセスする場合は、WSLパスを使用してください:
{ "mcpServers": { "ssh-remote": { "command": "/mnt/c/Users/Intel/Desktop/adremote-mcp/.venv-linux/bin/python", "args": [ "/mnt/c/Users/Intel/Desktop/adremote-mcp/ssh_mcp_server.py" ] } } }
ポータブルランチャー
MCPクライアントを、対応するOSに含まれているランチャーに向けることもできます:
Windows:
C:\Users\Intel\Desktop\adremote-mcp\run-ssh-mcp.cmdWSL/Linux:
/path/to/adremote-mcp/run-ssh-mcp.sh
ランチャーはOS固有のvenvを優先し、次に python3 または python を使用します。Windowsでは、SSH_MCP_PYTHON を設定して特定のPythonインタープリタを強制的に使用できます。
WSL/Linuxクライアントの場合、スクリプトに実行権限が付与されていないときは、command: "/bin/sh" と args: ["/path/to/adremote-mcp/run-ssh-mcp.sh"] を使用してください。
直接実行
依存関係をインストールした後、サーバーを直接実行できます:
Windows:
.\.venv-win\Scripts\python.exe .\ssh_mcp_server.pyWSL/Linux:
./.venv-linux/bin/python ssh_mcp_server.py自動セットアップ
このリポジトリをダウンロードし、ClaudeまたはCodexを実行して、現在のOSのグローバルMCPサーバーとしてこのフォルダーを追加するように指示してください。その後、チャットから直接使用できます。
トラブルシューティング
Windowsで以下のように報告される場合:
No Python at '"/usr/bin\python.exe'MCPがWSL/Linuxによって作成されたvenvを指しています。\install.ps1 でWindows用のvenvを作成し、MCPコマンドを .venv-win\Scripts\python.exe に更新してください。
Related MCP server: MCP SSH Server
機能
WindowsおよびLinux上のMCP互換クライアントで動作
SSH経由でリモートサーバーに接続
ネイティブなSSHジャンプホスト/踏み台サーバーのサポート
リモートでのコマンド実行
SFTPによるファイルのアップロード/ダウンロード
複数の接続の管理
ヘルスモニタリング
使用例
パスワードで接続:
Connect to 192.168.1.100 with username ubuntu and password mypassまたは短い形式:
ssh 192.168.1.100:22 ubuntu mypassMCPはまず、ユーザー名とパスワードを使用してSSH接続をテストします。 ログインが成功すると、SSHキーを生成またはインストールし、キーベースの認証情報をローカルに保存します。パスワードは保存されません。 パスワードは初回のみ使用されます。
一回限りのセッションでパスワードを使用して接続:
ssh 192.168.1.100:22 ubuntu mypass, save_credentials falseこれはライブ接続のみを維持します。再利用可能な認証情報は保存されず、自動的なキーのブートストラップも試行されません。
保存された名前を使用して後で接続:
ssh saved-name最初のセットアップが成功した後は、保存された認証情報名を使用して再度接続するだけです。
暗号化された(パスフレーズで保護された)秘密鍵を使用して接続:
Connect to 10.0.2.15 as ubuntu using private key ~/.ssh/id_ed25519 with passphrase mysecretまたはツールパラメータ経由:
{
"hostname": "10.0.2.15",
"username": "ubuntu",
"private_key_path": "~/.ssh/id_ed25519",
"private_key_passphrase": "mysecret"
}パスフレーズは保存された認証情報と一緒に保存されるため、以降の ssh_connect_saved の呼び出しで再度入力する必要はありません。ssh_connect_saved で private_key_passphrase を指定して、保存された値を単一セッション用に上書きすることも可能です。
ジャンプホスト経由で接続:
ssh_connect または ssh_save_credentials で jump_host オブジェクトを使用します:
{
"hostname": "10.0.2.15",
"username": "ubuntu",
"private_key_path": "~/.ssh/id_ed25519",
"jump_host": {
"hostname": "203.0.113.10",
"username": "bastion",
"private_key_path": "~/.ssh/id_ed25519",
"port": 22
}
}ジャンプホストのキーもパスフレーズで保護できます。jump_host オブジェクト内に private_key_passphrase を追加してください。
これはターゲットホストへのネイティブSSHトンネルを使用し、保存された認証情報は同じジャンプホスト設定を保持します。
再利用可能な保存済み認証情報の場合、ジャンプホストはパスワードではなく private_key_path を使用する必要があります。
コマンドの実行:
List files in /home directory on my server
Run 'top' command on the remote server
Execute script.py and monitor its logファイル転送:
Upload local file.txt to /home/user/ on the server
Download /var/log/app.log from the server接続の健全性とインベントリ:
Check health of all SSH connections
Show me all active SSH connections要件
Python 3.10以上
paramiko
mcp
最新の更新
バージョン 1.0.3 では、保存された認証情報に秘密鍵のパスフレーズが保持されます:
ssh_connectまたはssh_save_credentialsを介して保存する際、private_key_passphraseが認証情報ファイルに保存されるようになりましたssh_connect_savedは保存されたパスフレーズを自動的に使用するため、呼び出しのたびに指定する必要はありませんssh_connect_savedでprivate_key_passphraseを指定すると、そのセッションのみ保存された値が上書きされますssh_list_saved_credentialsは、パスフレーズが保存されている場合にprivate key (passphrase saved)と表示します
バージョン 1.0.2 では、パスフレーズで保護された(暗号化された)秘密鍵のサポートが追加されました:
ssh_connect、ssh_connect_saved、およびssh_save_credentialsでprivate_key_passphraseが受け入れられますターゲットホストキーとジャンプホストキーの両方に適用されます
キーが暗号化されているのにパスフレーズが指定されていない場合、またはパスフレーズが間違っている場合に明確なエラーメッセージが表示されます
バージョン 1.0.1 では、より安全で実用的な日常のSSHワークフローが追加されました:
直接ログインはデフォルトで再利用可能な認証情報を保存しますが、
save_credentials=falseを指定することでパスワードセッションでも保存を無効にできます保存された認証情報のフローには、接続、保存、一覧表示、削除、および手動キーセットアップのヘルパーが含まれるようになりました
ホストの信頼性とファイル転送ルールが厳格化され、ローカルルートの制限と初回接続時のホスト固定(Trust-on-first-use)が導入されました
ライブセッションと保存された認証情報の両方で、ネイティブなジャンプホスト接続がサポートされています
保存された認証情報はキーベースであるため、通常の使用にマスターパスワードは不要です
手動で保存された秘密鍵のパスは、初回接続時ではなく保存時に検証されます
サポート
協力をご希望の場合はご連絡ください。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-quality-maintenanceEnables remote server control via SSH through Claude, supporting command execution, file transfers, and multi-server management with both standard and streamable HTTP protocols.
- Alicense-quality-maintenanceConnects Claude to remote servers via SSH to execute commands, manage files, and browse directories. It allows users to add, edit, and switch between multiple server configurations through natural language conversations.
- AlicenseAqualityBmaintenanceEnables Claude to connect to servers via SSH, execute commands, transfer files, and manage connections through natural language.9151MIT
- -license-quality-maintenanceEnables Claude Code to control remote servers via SSH for automated deployment, testing, and operations, including command execution and file transfer.4
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/nqmn/adremote-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server