Почти все демо, где агент покупает сервер, заканчиваются в момент оплаты заказа. Это самый скучный момент. Сервер есть, у агента на руках id вроде 47HZ7YF, и никто не объяснил, что дальше.
Дальше — всё то, что админ делает не задумываясь: дождаться, пока SSH реально ответит, найти пароль, заметить, что диск заполняется, перезагрузиться после обновления ядра, продлить до конца месяца, написать в поддержку, когда что-то странно. Если агенту доверяют инфраструктуру, эта часть тоже на нём. Ниже — как это выглядит через наш MCP-сервер. Каждый шаг мы прогнали на тестовом окружении, прежде чем описывать.
Если клиент ещё не подключён, начните с Claude Code и Codex или Claude Desktop и Cursor.
Первая минута: «active» ещё не значит «готов»
order_vps отвечает, как только заказ оплачен с баланса. Сам сервер создаётся в фоне, обычно примерно за минуту. Следующий вызов агента — get_vps_status, и звать его можно сколько угодно: инструмент только читает.
Важны два поля. status становится active, когда машина создана. В access лежит всё для входа: адрес, порт и готовая команда SSH. На тарифах со своим IPv4 порт 22. На NAT-тарифах это личный проброшенный порт, и ответ говорит об этом прямо, вплоть до предупреждения: не закройтесь фаерволом, разрешив только внешний порт.
Между этими моментами есть зазор, на котором спотыкаются. Первая загрузка ставит обновления ОС, это может занять несколько минут, и SSH в это время может отказывать. Аккуратный агент ждёт access.ssh_ready, а не долбит 22-й порт.
Если ключ SSH к заказу не приложили, ждёт пароль root. reveal_password отдаёт его ровно один раз и только после того, как VM загрузилась. Спросите раньше — получите password_pending, а одноразовый показ не сгорит. Так сделано после того, как агенты забирали пароль, который ещё не успел примениться в загружающейся VM. Но честно: проще передать ssh_key в заказе и пропустить этот шаг.
Второй день: присмотр
get_vps_metrics отдаёт CPU, память, сеть и диск рядами за час, сутки, неделю или месяц. Агент, который заглядывает туда раз в день, увидит то, что убивает маленькие серверы: память ползёт вверх, пока OOM-killer не выберет жертву. Снаружи причину он не исправит, но скажет вам или зайдёт по SSH и посмотрит.
power_vps умеет start, stop и reboot. Деталь из тестов: если сервер не активен (ещё создаётся или приостановлен за неоплату), инструмент отвечает 409 с подсказкой сначала проверить статус. Агент, который на любой не-200 повторяет запрос бесконечно, здесь зациклится. Ошибка сама говорит, что делать, — тексты ошибок у нас написаны и для агентов, а не только для людей.
set_hostname меняет имя через гостевой агент внутри машины, поэтому на Linux оно применяется без перезагрузки. Удалите qemu-guest-agent — и инструмент перестанет работать: вернёт agent_unavailable и ничего не поменяет.
Тридцатый день: деньги
Здесь инфраструктура агентов обычно и умирает. Продление висит в чьём-то календаре, человек занят, сервер приостановлен.
У нас продление не зависит от памяти агента. Каждый сервер раз в месяц продлевается с предоплаченного баланса, а на почту аккаунта перед датой приходят напоминания. Агенту остаётся держать баланс выше следующего списания, и get_balance показывает, как с этим дела.
Грейс-периода нет: если в конце срока баланса не хватает, сервер приостанавливается, а выделенный IP возвращается в пул.
Когда денег мало, topup_balance выдаёт ссылку на крипто-оплату: USDT, USDC или ETH в сетях Base, Ethereum или Polygon. Это первое место, где агенту нужны вы. Счёт он создаст, а подписать транзакцию без кошелька не сможет, и давать агенту кошелёк мы бы сто раз подумали. На практике баланс пополняют один раз на несколько месяцев, а агент тратит из него. Если заказ или счёт остался неоплаченным, потому что баланса не хватило, после вашего пополнения агент вызывает pay_invoice — он оплатит с баланса.
Честный пробел: через MCP нельзя продлить сервер на несколько месяцев вперёд по запросу. Ежемесячное продление идёт само, а оплата сразу за 3, 6 или 12 месяцев — через кабинет или один REST-запрос. Если длинный срок нужен с самого начала, order_vps принимает months от 1 до 36 прямо при заказе.
Рост закрывают get_upgrade_options и change_plan. Тариф меняется на месте, файлы и ОС остаются, сервер один раз перезагружается, разница за остаток периода списывается с баланса. Агент обязан передать confirm: true — так мы говорим «ты тратишь деньги, будь уверен».
Когда что-то пошло не так
Разрушительные действия нарочно неудобные. reinstall_vps и немедленный cancel_service требуют точного имени сервера в confirm, а в их описаниях агенту сказано сначала спросить человека. Это второе место, где без вас не обойтись, и так задумано.
Безопасная отмена, end_of_period, оставляет сервер до конца оплаченного срока. undo_cancel её снимает, и это важнее, чем кажется: агенты передумывают посреди задачи не реже людей.
Если агент застрял, create_ticket открывает тикет, привязанный к серверу, а reply_ticket продолжает переписку. Читает его человек с нашей стороны — это не чат-бот, отвечающий чат-боту.
А когда должен вмешаться человек, delegate_service приглашает его по email оператором одного сервера. Ему достанутся питание, консоль, переустановка и имя. Оплата, продление и отмена — нет, и токен агента он не увидит.
Чего агент по-прежнему не может
Чтобы не было иллюзий:
- Пополнять баланс. Счёт на пополнение он создаст, а счета с баланса оплатит через
pay_invoice. Но завести крипту на баланс можно только кошельком, то есть обычно вами. - Работать внутри ОС через MCP. Пакеты, конфиги и выкладки идут по SSH. MCP управляет машиной снаружи.
- Снять приостановку сам. Если сервер приостановлен за абуз, это разговор с человеком, и так и должно быть.
Полезности инструментов это не отменяет. Это значит, что цикл агента надо строить вокруг них: опрашивать статус, держать баланс в нужных пределах, эскалировать через тикет и ждать вас перед всем, что удаляет данные.
Если работа агента короткая, целый сервер может оказаться лишним. В статье VPS или песочница — когда лучше microVM, живущая минуту. В остальных случаях тарифы здесь, а справочник MCP перечисляет все инструменты с параметрами.
Комментарии
Пока нет комментариев. Будьте первым.