Рецепт · OpenClaw

MCP Relay: ChatGPT, Codex и Claude без открытого порта

Включите mcp-relay, выдайте клиенту грант — входом в Gateway или одноразовым кодом — и управляйте Gateway из ChatGPT или Claude через исходящее соединение.

· 4 мин чтения

Коротко

  • mcp-relay входит в поставку OpenClaw, но выключен по умолчанию. Включение означает согласие на исходящее соединение с mcp.openclaw.ai.
  • Клиент подключается к https://mcp.openclaw.ai/mcp, а Gateway сам выходит наружу по WebSocket.
  • Без гранта или кода сопряжения клиент не соединится. Грант подтверждаете вы: входом в Gateway или одноразовым кодом.

Сверено с документацией OpenClaw 2026.10.10, 3 ноября 2026.

Хотите управлять Gateway из ChatGPT, Codex или Claude, не выставляя порт в интернет? Включите плагин mcp-relay, выдайте клиенту грант, и соединение пойдёт через исходящий WebSocket к mcp.openclaw.ai.

Вход через релей: как это устроено

Плагин mcp-relay входит в поставку OpenClaw, но по умолчанию выключен. После включения Gateway открывает исходящее WebSocket-соединение с https://mcp.openclaw.ai. Удалённые MCP-клиенты приходят на https://mcp.openclaw.ai/mcp, а Gateway остаётся в приватной сети.

Включаем плагин и смотрим живую связь

openclaw plugins enable mcp-relay
openclaw mcp-relay status

Если Gateway остановлен, запустите его перед командой status. Включение обычно применяется к уже работающему Gateway, поэтому следуйте инструкции по перезапуску или перезагрузке, которую печатает команда.

Конфигурация: relayUrl и agentId

Дефолтного релея хватает, конфигурация не обязательна. Свой relayUrl задавайте как HTTPS-origin: без учётных данных, пути, строки запроса и фрагмента. Для локальной разработки принимаются http://localhost:<port> и http://127.0.0.1:<port>.

{
  plugins: {
    entries: {
      "mcp-relay": {
        enabled: true,
        config: {
          relayUrl: "https://mcp.openclaw.ai",
          agentId: "main",
        },
      },
    },
  },
}

agentId необязателен. Он выбирает агента по умолчанию для новых диалогов, когда клиент не указал своего.

Подключаем ChatGPT, Codex и Claude

  1. Добавьте https://mcp.openclaw.ai/mcp как плагин в ChatGPT или как пользовательский коннектор в Claude.
  2. На странице подключения релея выберите вход через Gateway и введите URL вашего Control UI.
  3. Браузер откроет страницу Connected apps вашего Gateway с обычным входом. Релей не запрашивает адрес Gateway и не получает ваши учётные данные.
  4. Проверьте имя приложения и хост возврата, выберите доступ и нажмите Allow или Deny. Оба выбора возвращают вас на релей, чтобы завершить запрос. Запросы истекают через десять минут, истёкший запрос начинают заново из приложения.
codex mcp add openclaw --url https://mcp.openclaw.ai/mcp
codex mcp login openclaw

Codex использует общие MCP-серверы для CLI и настольного приложения, поэтому релей добавляют один раз.

Грант по коду сопряжения

Вход через Gateway можно заменить одноразовым кодом. Откройте Connected apps в Control UI и выберите Pair with code. На однопользовательском Gateway то же самое делает команда на хосте:

openclaw mcp-relay pair

Выберите доступ и создайте код вида XXXXX-XXXXX, затем введите его на странице подключения релея. Код живёт десять минут и работает один раз. Пробелы, дефисы и регистр букв значения не имеют. Создание кода требует подключённого сокета релея: если код выдать не удалось, проверьте openclaw mcp-relay status. Доступ по умолчанию — чтение и запись в пределах вашей текущей роли. Опция полного доступа к роли добавляет права администратора и подтверждения, которые эта роль разрешает.

Как проверить, что заработало

  • openclaw mcp-relay status показывает состояние соединения и доступность встроенного UI.
  • openclaw mcp-relay grants перечисляет гранты вместе с принципалом и потолком прав.
  • В ChatGPT откройте OpenClaw в сайдбаре: там должен появиться полный Control UI вашего Gateway.
  • Отправьте сообщение в диалог: клиент читает заголовки и страницы сообщений и пишет в существующий или новый диалог.
  • Отзыв гранта: openclaw mcp-relay revoke <grantId>. Полное отключение: openclaw plugins disable mcp-relay — личность и состояние грантов при этом сохраняются.

Где ломается и когда не применять

  • Gateway остановлен: сначала запустите его, потом выполняйте status.
  • Неверный relayUrl с путём, строкой запроса или фрагментом отклоняется. Оставьте чистый origin: схема, хост и порт.
  • Нет гранта или истёк код сопряжения: клиент не соединится, создайте новый код.
  • Gateway с аутентификацией через доверенный прокси или настроенными ролями требует грант человека, привязанный к верифицированному профилю. Старые гранты владельца там отклоняются: сопрягайтесь заново как человек. CLI не создаёт грант без человека.
  • Релей видит трафик UI и содержимое в транзите: TLS защищает соединение, но сквозного шифрования против релея нет. Выдавайте доступ только тем приложениям, которым доверяете.
  • Не ждите статуса ожидания подтверждения: версия не отличает запуск, ждущий подтверждения, от другого активного запуска и продолжает сообщать о работе.
  • Если Gateway не поддерживает входящий трафик с привязкой к принципалу или релей не поддерживает туннель UI, встроенный Control UI не поднимется — останется обычный список диалогов.