> ## Documentation Index
> Fetch the complete documentation index at: https://comfyui-mcp.artokun.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Удалённый / размещённый коннектор

> Выставьте comfyui-mcp как аутентифицированный, публично доступный Streamable-HTTP MCP-сервер — добавьте его в Custom Connectors Claude Desktop или в любой удалённый клиент одной командой.

`comfyui-mcp` говорит на том же транспорте MCP **Streamable-HTTP**, который
используют размещённые коннекторы (например, собственный Custom Connector Comfy
`cloud.comfy.org/mcp`). Одной командой он работает как сервер с токен-аутентификацией
за публичным HTTPS-туннелем, так что его можно добавить в **Claude Desktop →
Connectors** или вызывать headlessly откуда угодно.

<Note>
  Это opt-in. Транспорт `stdio` по умолчанию (и обычный `--http` на loopback)
  ведёт себя как раньше — открытый и локальный. Аутентификация и туннель
  включаются, только когда вы задаёте токен или передаёте `--tunnel`.
</Note>

<Note>
  **Хотите управлять удалённым подом ComfyUI (например, RunPod) панелью агента
  вместо этого?** Это другая возможность — см. [Развёртывание в облаке](/docs/docs/ru/cloud-deployment).
  Эта страница про то, как выставить **сам MCP-сервер comfyui-mcp** удалённым
  клиентам вроде Claude Desktop; она вообще не трогает ComfyUI и мост панели.
  Оба под капотом используют быстрый туннель cloudflared — самый простой способ
  их перепутать.
</Note>

## Туннель одной командой

```bash theme={null}
npx -y comfyui-mcp@latest --tunnel
```

Это делает четыре вещи:

1. Принудительно включает HTTP-транспорт (`MCP_TRANSPORT=http`).
2. Генерирует сильный случайный токен аутентификации, если вы его не задали.
3. Поднимает быстрый туннель [cloudflared](https://github.com/cloudflare/cloudflared)
   к локальному порту MCP.
4. Печатает готовый к вставке блок: публичный URL `https://…/mcp`, токен и
   фрагмент коннектора Claude Desktop.

Вывод выглядит так:

```text theme={null}
════════════════════════════════════════════════════════════════════
 ComfyUI MCP — Remote / Hosted Connector is LIVE
════════════════════════════════════════════════════════════════════
 Public MCP URL : https://shiny-otter-1234.trycloudflare.com/mcp
 Auth token     : 9f2c…<redacted>
 ...
════════════════════════════════════════════════════════════════════
```

<Warning>
  Не закрывайте терминал. **Быстрый туннель** cloudflared эфемерен — его URL
  меняется на каждый запуск и закрывается вместе с процессом. Для стабильного
  имени хоста поднимите свой
  [именованный туннель cloudflared](https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/),
  нацеленный на локальный HTTP-порт.
</Warning>

### cloudflared не установлен?

`cloudflared` поставляется как необязательная зависимость. Если бинарник не
найден, сервер продолжает работать локально и печатает подсказку по установке:

```bash theme={null}
npm install -g cloudflared          # cross-platform
brew install cloudflared            # macOS
winget install cloudflare.cloudflared  # Windows
```

Затем перезапустите с `--tunnel`.

## Добавить в Claude Desktop

Откройте **Claude Desktop → Settings → Connectors → Add custom connector** и
заполните:

| Поле   | Значение                                                   |
| ------ | ---------------------------------------------------------- |
| Name   | `ComfyUI`                                                  |
| URL    | напечатанный URL `https://…/mcp`                           |
| Header | `X-API-Key: <token>` (или `Authorization: Bearer <token>`) |

Сохраните, затем включите коннектор в чате. Инструменты ComfyUI появляются
точно так же, как у локального stdio-сервера.

## Headless / программный конфиг

Любой MCP-клиент, который умеет удалённый сервер Streamable-HTTP, подойдёт.
Передайте URL и заголовок аутентификации:

```json theme={null}
{
  "mcpServers": {
    "comfyui": {
      "url": "https://shiny-otter-1234.trycloudflare.com/mcp",
      "headers": { "X-API-Key": "<token>" }
    }
  }
}
```

Обе формы заголовка принимаются на **каждом** запросе к `/mcp`:

```bash theme={null}
# X-API-Key (matches Comfy Cloud's convention)
curl -H "X-API-Key: <token>" https://…/mcp

# Authorization: Bearer
curl -H "Authorization: Bearer <token>" https://…/mcp
```

## Ручная настройка (свой туннель / прокси)

Если публичную конечную точку вы предпочитаете вести сами, запустите
HTTP-транспорт с фиксированным токеном и поставьте его за своим
reverse-прокси, туннелем или VPN:

```bash theme={null}
COMFYUI_MCP_HTTP_TOKEN=my-long-random-secret \
  npx -y comfyui-mcp@latest --http --host 0.0.0.0 --port 9100
```

Затем нацельте туннель/прокси на `http://127.0.0.1:9100/mcp`.

<Warning>
  Привязка к непетлевому хосту (например, `0.0.0.0`) **без** токена — это
  **жёсткий отказ**: сервер не стартует, вместо того чтобы выставить открытый
  эндпоинт `/mcp` за пределы машины. Задайте `COMFYUI_MCP_HTTP_TOKEN`
  (рекомендуется), используйте `--tunnel` или привяжитесь к петлевому хосту.
  Если вам действительно нужен открытый эндпоинт (например, за своим
  аутентифицирующим прокси), явно согласитесь через
  `--allow-unauthenticated-non-loopback` (env `COMFYUI_MCP_ALLOW_UNAUTH=1`),
  который снижает отказ до предупреждения.
</Warning>

## Справка по аутентификации

| Настройка                                                             | Эффект                                                                                                |
| --------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| `COMFYUI_MCP_HTTP_TOKEN`                                              | Общий секретный токен, обязательный на `/mcp`. Не задан → эндпоинт открыт.                            |
| `--token <value>`                                                     | То же, что переменная окружения; флаг CLI побеждает переменную.                                       |
| `--tunnel` / `MCP_TUNNEL=1`                                           | Принудительно HTTP, автогенерация токена если не задан, открыть туннель cloudflared.                  |
| `--http` / `MCP_TRANSPORT=http`                                       | HTTP-транспорт без туннеля (аутентификация всё равно действует, если задан токен).                    |
| `--host`, `--port`                                                    | Адрес привязки (по умолчанию `127.0.0.1:9100`).                                                       |
| `--allow-unauthenticated-non-loopback` / `COMFYUI_MCP_ALLOW_UNAUTH=1` | Согласие на ОТКРЫТЫЙ `/mcp` на непетлевом хосте. Без этого эта комбинация — жёсткий отказ при старте. |

Токены сравниваются за постоянное время, и шлюз применяется на каждом
HTTP-методе (`POST`/`GET`/`DELETE`) на эндпоинте MCP. Привязка непетлевого
хоста без токена отклоняется при старте, пока не задан аварийный люк выше.

## Дорожная карта: OAuth

Сегодняшняя аутентификация — **ручной общий секретный токен** (Bearer /
`X-API-Key`), который покрывает и headless, и путь Custom Connector Claude
Desktop. Полноценный браузерный вход **OAuth** (как у размещённого коннектора
Comfy) — запланированное продолжение: это более тяжёлое изменение и для
ручного подключения не требуется.

## См. также

* [Развёртывание в облаке](/docs/docs/ru/cloud-deployment) — управляйте удалённым
  подом ComfyUI панелью агента (другой туннель, другая цель)
* [Настройки](/docs/docs/ru/configuration) — полный справочник переменных окружения
