3. Описание MCP-сервера › 3.8 Сервер › Концепция

Семья remote работает на сервере, где стоит магазин: выполняет команды и переносит файлы между этим компьютером и сервером. Это те же действия, что владелец выполняет в окне «Сервер»: по SSH, от имени root.

Инструмент Что делает
remote_exec выполняет команду bash и возвращает вывод и код завершения
remote_load скачивает файл сервера на этот компьютер
remote_save записывает файл на сервер

Всё, что делается на самом сервере — список папки, перенос, удаление, новая папка, — выполняет remote_exec. Отдельные инструменты нужны только там, где байты переезжают между компьютерами: вывод команды не донесёт двоичный файл и не вместит большой. Файл правится так: remote_load, правка на этом компьютере, remote_save.

Доступ

Прав магазина инструменты не требуют: в движок они не обращаются. Доступ даёт программа, и только пока в окне «Сервер» на закладке «Подключение»:

Перед каждым вызовом MCP-сервер спрашивает у программы адрес и пароль. Закрытое окно, снятый флажок или пустой пароль — и вызов получает отказ, который называет, чего не хватает. При закрытии окна флажок снимается сам. Пароль получает только процесс MCP-сервера на этом компьютере, в переписку он не попадает.

Соединение держится между вызовами и закрывается, как только программа перестаёт отдавать тот же сервер.

Ключ сервера запоминается при первом подключении в файле mcp\known_hosts папки магазина. Если сервер покажет другой ключ — его переустановили или кто-то встал на пути, — подключение отклоняется. После переустановки сервера строку с его адресом из файла удаляют.

Подтверждение в Claude Code. Инструментов remote_* нет в списке разрешённых, который программа кладёт в папку магазина, поэтому каждый их вызов Claude Code показывает на подтверждение.

Правила

У семьи свои правила — remote.md в папке Engine\MCP. Первый вызов любого инструмента remote_* в сессии отказывает с ними; после подтверждения через session_rules_accept работают все инструменты семьи.

Главное в них: это рабочий сервер под root, и ничего не отменить. Команда, которая удаляет, останавливает, перезапускает, устанавливает или меняет настройку, сначала показывается целиком и выполняется после согласия владельца. Файл меняется через копию рядом с ним. Пароли, ключи и значения config.json в переписку не выводятся.

Пока окно закрыто, агент диктует команды, а владелец выполняет их сам — порядок описан в рецепте investigate_store_server_through_owner.md.

Отказы

Общие для всех трёх инструментов. Отказы конкретного инструмента — на его странице.

Ответ Когда
Melbis Shop with this store open is not running here… программа с этим магазином не запущена
The window «Сервер» is closed… окно «Сервер» закрыто
The window «Сервер» is open, but the assistant is not let in… не стоит флажок доступа
The address or the root password is empty in «Сервер»… в окне не введён IP-адрес или пароль
This Melbis Shop hands no server over: it is older than this MCP server… программа старше MCP-сервера, нужна новая
Melbis Shop did not answer the question about the server. программа не ответила
No SSH to <адрес>: <причина> сервер не принял подключение: неверный пароль, недоступен адрес
The server <адрес> showed a key other than the one remembered… ключ сервера не совпал с запомненным

Общие отказы MCP-сервера — «Ответы и отказы».