SSH Remote MCP Server
SSH Remote MCP-Server
SSH-Fernzugriff für MCP-kompatible Clients über das Model Context Protocol (MCP).
Schnellstart
Verwenden Sie eine virtuelle Umgebung, die von demselben Betriebssystem erstellt wurde, das auch den MCP-Server startet. Teilen Sie kein venv zwischen Windows und WSL/Linux.
Windows
Installation:
.\install.ps1Hinzufügen des MCP in Claude Desktop, Claude Code oder Codex:
{ "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" ] } } }Wenn Sie bereits ein Windows-Python mit installierten
paramikoundmcphaben, können Sie diesen Interpreter direkt anstelle von.venv-winverwenden.
WSL/Linux
Installation:
./install.shHinzufügen des MCP in Claude Desktop, Claude Code oder Codex:
{ "mcpServers": { "ssh-remote": { "command": "/home/user/adremote-mcp/.venv-linux/bin/python", "args": [ "/home/user/adremote-mcp/ssh_mcp_server.py" ] } } }Wenn über WSL vom Windows-Laufwerk auf das Repo zugegriffen wird, verwenden Sie den WSL-Pfad:
{ "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" ] } } }
Portable Launcher
Sie können einen MCP-Client auch auf den mitgelieferten Launcher für das entsprechende Betriebssystem verweisen:
Windows:
C:\Users\Intel\Desktop\adremote-mcp\run-ssh-mcp.cmdWSL/Linux:
/path/to/adremote-mcp/run-ssh-mcp.sh
Die Launcher bevorzugen das betriebssystemspezifische venv und greifen dann auf python3 oder python zurück. Unter Windows kann SSH_MCP_PYTHON gesetzt werden, um einen bestimmten Python-Interpreter zu erzwingen.
Für WSL/Linux-Clients verwenden Sie command: "/bin/sh" mit args: ["/path/to/adremote-mcp/run-ssh-mcp.sh"], falls das Skript nicht als ausführbar markiert ist.
Direkter Start
Nach der Installation der Abhängigkeiten können Sie den Server direkt ausführen:
Windows:
.\.venv-win\Scripts\python.exe .\ssh_mcp_server.pyWSL/Linux:
./.venv-linux/bin/python ssh_mcp_server.pyAutomatische Einrichtung
Laden Sie dieses Repo herunter, starten Sie Claude oder Codex und bitten Sie es, diesen Ordner als globalen MCP-Server für Ihr aktuelles Betriebssystem hinzuzufügen. Danach können Sie ihn direkt aus dem Chat heraus verwenden.
Fehlerbehebung
Wenn Windows meldet:
No Python at '"/usr/bin\python.exe'zeigt der MCP auf ein venv, das von WSL/Linux erstellt wurde. Erstellen Sie ein Windows-venv mit .\install.ps1 und aktualisieren Sie den MCP-Befehl auf .venv-win\Scripts\python.exe.
Related MCP server: MCP SSH Server
Funktionen
Funktioniert mit MCP-kompatiblen Clients unter Windows und Linux
Verbindung zu Remoteservern via SSH
Native Unterstützung für SSH-Jump-Hosts / Bastion-Hosts
Remote-Ausführung von Befehlen
Hoch-/Herunterladen von Dateien via SFTP
Verwaltung mehrerer Verbindungen
Zustandsüberwachung (Health Monitoring)
Anwendungsbeispiele
Verbindung mit Passwort:
Connect to 192.168.1.100 with username ubuntu and password mypassoder in kürzerer Form:
ssh 192.168.1.100:22 ubuntu mypassDer MCP testet zuerst die SSH-Verbindung mit Ihrem Benutzernamen und Passwort. Wenn die Anmeldung funktioniert, generiert oder installiert er einen SSH-Schlüssel, speichert die schlüsselbasierten Anmeldedaten lokal und speichert das Passwort nicht. Das Passwort wird nur beim ersten Mal verwendet.
Verbindung mit Passwort für eine einmalige Sitzung:
ssh 192.168.1.100:22 ubuntu mypass, save_credentials falseDies behält nur die Live-Verbindung bei. Es werden keine wiederverwendbaren Anmeldedaten gespeichert und es wird kein automatischer Schlüssel-Bootstrap versucht.
Spätere Verbindung unter Verwendung des gespeicherten Namens:
ssh saved-nameNach der ersten erfolgreichen Einrichtung verwenden Sie einfach den Namen der gespeicherten Anmeldedaten, um erneut eine Verbindung herzustellen.
Verbindung mit einem verschlüsselten (passwortgeschützten) privaten Schlüssel:
Connect to 10.0.2.15 as ubuntu using private key ~/.ssh/id_ed25519 with passphrase mysecretoder über Tool-Parameter:
{
"hostname": "10.0.2.15",
"username": "ubuntu",
"private_key_path": "~/.ssh/id_ed25519",
"private_key_passphrase": "mysecret"
}Die Passphrase wird zusammen mit den gespeicherten Anmeldedaten gespeichert, sodass zukünftige Aufrufe von ssh_connect_saved sie nicht erneut erfordern. Sie können bei ssh_connect_saved weiterhin private_key_passphrase angeben, um den gespeicherten Wert für eine einzelne Sitzung zu überschreiben.
Verbindung über einen Jump-Host:
Verwenden Sie das jump_host-Objekt bei ssh_connect oder ssh_save_credentials:
{
"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-Schlüssel können ebenfalls passwortgeschützt sein – fügen Sie private_key_passphrase innerhalb des jump_host-Objekts hinzu.
Dies verwendet einen nativen SSH-Tunnel zum Zielhost, und gespeicherte Anmeldedaten behalten dieselbe Jump-Host-Konfiguration bei. Für wiederverwendbare gespeicherte Anmeldedaten muss der Jump-Host private_key_path anstelle eines Passworts verwenden.
Befehle ausführen:
List files in /home directory on my server
Run 'top' command on the remote server
Execute script.py and monitor its logDateiübertragungen:
Upload local file.txt to /home/user/ on the server
Download /var/log/app.log from the serverVerbindungsstatus und Inventar:
Check health of all SSH connections
Show me all active SSH connectionsAnforderungen
Python 3.10+
paramiko
mcp
Letztes Update
Version 1.0.3 speichert die Passphrase des privaten Schlüssels in den gespeicherten Anmeldedaten:
private_key_passphrasewird jetzt in der Anmeldedatei gespeichert, wenn überssh_connectoderssh_save_credentialsgespeichert wirdssh_connect_savedverwendet die gespeicherte Passphrase automatisch – sie muss nicht bei jedem Aufruf angegeben werdenDie Angabe von
private_key_passphrasebeissh_connect_savedüberschreibt den gespeicherten Wert nur für diese Sitzungssh_list_saved_credentialszeigtprivate key (passphrase saved)an, wenn eine Passphrase gespeichert ist
Version 1.0.2 fügt Unterstützung für passwortgeschützte (verschlüsselte) private Schlüssel hinzu:
private_key_passphrasewird beissh_connect,ssh_connect_savedundssh_save_credentialsakzeptiertGilt sowohl für den Zielhost-Schlüssel als auch für den Jump-Host-Schlüssel
Klare Fehlermeldungen, wenn ein Schlüssel verschlüsselt ist, aber keine Passphrase angegeben wurde oder die Passphrase falsch ist
Version 1.0.1 fügt sicherere und praktischere tägliche SSH-Workflows hinzu:
Direkte Logins speichern standardmäßig weiterhin wiederverwendbare Anmeldedaten, aber
save_credentials=falseschließt dies nun auch für Passwort-Sitzungen sauber ausAbläufe für gespeicherte Anmeldedaten umfassen jetzt Helfer zum Verbinden, Speichern, Auflisten, Löschen und zur manuellen Schlüsseleinrichtung
Regeln für Host-Vertrauen und Dateiübertragung sind strenger, mit lokalen Root-Beschränkungen und Host-Pinning bei der ersten Verwendung (Trust-on-first-use)
Native Jump-Host-Verbindungen werden sowohl für Live-Sitzungen als auch für gespeicherte Anmeldedaten unterstützt
Gespeicherte Anmeldedaten sind schlüsselbasiert, daher ist für den normalen Gebrauch kein Master-Passwort erforderlich
Manuell gespeicherte Pfade zu privaten Schlüsseln werden beim Speichern validiert, nicht erst später bei der ersten Verbindung
Support
Kontaktieren Sie mich für eine Zusammenarbeit.
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