SSH Remote MCP Server
SSH Remote MCP Server
Удаленный доступ по SSH для клиентов, совместимых с MCP, через протокол Model Context Protocol (MCP).
Быстрый старт
Используйте виртуальное окружение, созданное той же ОС, которая будет запускать сервер MCP. Не используйте один и тот же venv для Windows и WSL/Linux.
Windows
Установка:
.\install.ps1Добавьте MCP в Claude Desktop, Claude Code или 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" ] } } }Если у вас уже установлен Python для Windows с
paramikoиmcp, вы можете использовать этот интерпретатор напрямую вместо.venv-win.
WSL/Linux
Установка:
./install.shДобавьте MCP в Claude Desktop, Claude Code или Codex:
{ "mcpServers": { "ssh-remote": { "command": "/home/user/adremote-mcp/.venv-linux/bin/python", "args": [ "/home/user/adremote-mcp/ssh_mcp_server.py" ] } } }Если доступ к репозиторию осуществляется через WSL с диска Windows, используйте путь 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 на прилагаемый файл запуска для соответствующей ОС:
Windows:
C:\Users\Intel\Desktop\adremote-mcp\run-ssh-mcp.cmdWSL/Linux:
/path/to/adremote-mcp/run-ssh-mcp.sh
Средства запуска отдают предпочтение 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 и попросите его добавить эту папку в качестве глобального сервера MCP для вашей текущей ОС. После этого вы сможете использовать его прямо из чата.
Устранение неполадок
Если Windows сообщает:
No Python at '"/usr/bin\python.exe'значит, MCP указывает на venv, созданный WSL/Linux. Создайте venv для Windows с помощью .\install.ps1 и обновите команду MCP до .venv-win\Scripts\python.exe.
Related MCP server: MCP SSH Server
Функции
Работает с клиентами, совместимыми с MCP, на Windows и Linux
Подключение к удаленным серверам по SSH
Встроенная поддержка SSH jump-host / bastion
Удаленное выполнение команд
Загрузка/скачивание файлов через 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 не требуют ее повторного ввода. Вы по-прежнему можете указать private_key_passphrase в ssh_connect_saved, чтобы переопределить сохраненное значение для одного сеанса.
Подключение через jump-host:
Используйте объект jump_host в ssh_connect или 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 также могут быть защищены парольной фразой — добавьте private_key_passphrase внутри объекта jump_host.
Это использует встроенный SSH-туннель к целевому хосту, а сохраненные учетные данные сохраняют ту же конфигурацию jump-host. Для повторно используемых сохраненных учетных данных jump-host должен использовать 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 сохраняет парольную фразу закрытого ключа в сохраненных учетных данных:
private_key_passphraseтеперь сохраняется в файле учетных данных при сохранении черезssh_connectилиssh_save_credentialsssh_connect_savedавтоматически использует сохраненную парольную фразу — нет необходимости указывать ее при каждом вызовеУказание
private_key_passphraseвssh_connect_savedпереопределяет сохраненное значение только для этого сеансаssh_list_saved_credentialsпоказываетprivate key (passphrase saved), если парольная фраза сохранена
Версия 1.0.2 добавляет поддержку защищенных парольной фразой (зашифрованных) закрытых ключей:
private_key_passphraseпринимается вssh_connect,ssh_connect_savedиssh_save_credentialsПрименяется как к ключу целевого хоста, так и к ключу jump-host
Понятные сообщения об ошибках, когда ключ зашифрован, но парольная фраза не указана, или когда парольная фраза неверна
Версия 1.0.1 добавляет более безопасные и практичные повседневные рабочие процессы SSH:
Прямые входы по-прежнему сохраняют учетные данные для повторного использования по умолчанию, но
save_credentials=falseтеперь позволяет отказаться от этого и для сеансов с паролемПотоки сохраненных учетных данных теперь включают помощники для подключения, сохранения, перечисления, удаления и ручной настройки ключей
Правила доверия к хосту и передачи файлов стали строже, с ограничениями локального root-доступа и привязкой хоста при первом подключении
Встроенные соединения через jump-host поддерживаются как для активных сеансов, так и для сохраненных учетных данных
Сохраненные учетные данные основаны на ключах, поэтому для обычного использования не требуется мастер-пароль
Пути к закрытым ключам, сохраненные вручную, проверяются при сохранении, а не позже при первом подключении
Поддержка
Свяжитесь со мной для сотрудничества.
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