Skip to main content
Discord Agent Proxy — это сервис с независимым развертыванием: он хранит учетные данные вашего собственного аккаунта Discord, поддерживает постоянное соединение с Discord и предоставляет возможности этого аккаунта через два интерфейса: MCP и REST API, позволяя ИИ или программам управлять Discord от вашего имени. Контейнер не содержит никаких ИИ-моделей, он отвечает только за выполнение — вызовы инициируются вашим ИИ-клиентом (Claude, Cursor и т. д.) или собственной программой.

⚠️ Обязательно прочтите перед использованием

Автоматизация личного аккаунта (self-bot) с помощью программ нарушает Условия использования Discord, и существует риск блокировки аккаунта. Это неотъемлемая предпосылка данного сервиса: вы предоставляете учетные данные собственного аккаунта и самостоятельно несете риски. Настоятельно рекомендуется использовать специально созданный дополнительный аккаунт, а не ваш основной аккаунт.

Развертывание сервиса

Перейдите в Консоль → Приложения, найдите Discord Agent Proxy и создайте приложение. После создания сначала оформите подписку, затем перейдите на страницу конфигурации, введите учетные данные вашего аккаунта Discord и выполните развертывание. Ресурсы экземпляра автоматически настраиваются платформой, выбирать конфигурацию не требуется. После отправки развертывания вы попадете на страницу управления приложением, с такой же структурой «Обзор / Журналы / Документация», как при развертывании Telegram и WeChat. В «Обзоре» отображаются статусы экземпляра и подписки, а также через запрос аккаунта подтверждается, подключен ли Discord; нормальная работа контейнера не означает, что аккаунт обязательно подключен. Карточка аккаунта Discord в «Обзоре» предоставляет две информации для подключения:

Просмотр и тестирование интерфейсов в консоли

Откройте вкладку «Документация» данного приложения, чтобы просмотреть параметры запросов, структуру ответов всех 14 REST-операций, а также примеры на Shell, Python, JavaScript и других языках. Адрес экземпляра и токен доступа будут заполнены автоматически; по умолчанию токен скрыт. Выберите GET /api/whoami, нажмите «Тестировать», и вы сможете подтвердить аккаунт, подключенный к прокси. Операции отправки, редактирования или удаления сообщений будут применяться к реальному аккаунту Discord, пожалуйста, подтвердите содержимое запроса перед тестированием. «Скачать OpenAPI (JSON)» позволяет экспортировать полное определение интерфейса. Файл содержит адрес экземпляра, но не содержит токен доступа. Если требуется сменить учетные данные аккаунта Discord, выберите «Развернуть повторно» в «Обзоре», заполните новые учетные данные и отправьте.

Как получить учетные данные аккаунта Discord

  1. Войдите в Discord в браузере на компьютере (discord.com/app)
  2. Нажмите F12, чтобы открыть инструменты разработчика, и переключитесь на панель Network (Сеть)
  3. Произвольно нажмите на канал в Discord и наблюдайте за списком запросов
  4. Откройте любой запрос, отправленный на discord.com/api, и найдите поле authorization в Request Headers (Заголовки запроса)
  5. Скопируйте его значение
Эта строка учетных данных эквивалентна сессии входа в ваш аккаунт, не делитесь ею ни с кем. При утечке изменение пароля в Discord сразу сделает ее недействительной.

Способ аутентификации

За исключением /health и /readyz, все интерфейсы требуют передачи токена доступа в заголовке запроса:
Внимание: данный сервис принимает аутентификацию только через заголовки запроса и не поддерживает способ добавления токена после URL, такой как ?token=xxx. При прямом открытии адреса интерфейса в браузере будет возвращено 401 unauthorized, это нормально и не означает сбой развертывания. Чтобы подтвердить, что процесс работает, посетите /health; чтобы подтвердить, может ли подключение Discord обрабатывать запросы, посетите /readyz. Оба этих зонда не требуют аутентификации. Когда токен доступа прокси не настроен, защищенные интерфейсы возвращают 503 и не открываются анонимно.

Проверка состояния сервиса

/health означает только то, что HTTP-процесс работает:
/readyz показывает, доступен ли Discord Gateway. При нормальном соединении возвращается HTTP 200:
Во время подключения, при недействительных учетных данных или разрыве соединения прямой зонд Kubernetes для Pod возвращает HTTP 503, а серверная часть экземпляра автоматически повторяет попытки. В это время Pod временно удаляется из публичного Service, поэтому не гарантируется возможность прочитать этот диагностический JSON через доменное имя экземпляра; пожалуйста, проверьте статус Deployment в консоли и вызывайте MCP / REST после восстановления состояния Ready.

Использование в ИИ-клиенте (MCP)

На примере Claude Code:
Для клиентов, таких как Cursor, поддерживающих статические заголовки запросов, настройте адрес Streamable HTTP согласно их текущей документации. Клиенты, принимающие следующую структуру, могут использовать:
Это не универсальный формат конфигурации для всех MCP-клиентов. Удаленные коннекторы Claude Desktop / Claude.ai устанавливаются из облака и не считывают никакие HTTP-заголовки запроса из локального claude_desktop_config.json; если в настоящее время требуется статический Bearer-заголовок запроса, используйте Claude Code или клиент, явно поддерживающий эту возможность. После завершения настройки можно напрямую управлять ИИ для работы с Discord с помощью естественного языка, например:
Посмотри, есть ли новые сообщения в моем канале «Обсуждение проекта», и если кто-то спрашивал о дате публикации, помоги мне ответить, что это в эту пятницу.

Доступные инструменты

Использование в программе (REST API)

Все REST-интерфейсы размещены в /api, тело ответа всегда имеет вид {"data": ...}, при ошибке — {"error": "..."}.

Просмотр текущего аккаунта

Отправка сообщения

При повторной попытке той же отправки используйте тот же Idempotency-Key, процесс вернёт первый результат и не отправит сообщение повторно. При перезапуске экземпляра очищаются хранящиеся в памяти записи дедупликации объёмом до 5 000, поэтому вызывающая сторона всё равно должна самостоятельно отслеживать долгосрочный статус доставки. Необязательный параметр reply_to используется для ответа на указанное сообщение:

Чтение сообщений

Полный список интерфейсов

Как получить ID канала и ID пользователя

В клиенте Discord последовательно откройте Настройки пользователя → Расширенные настройки и включите Режим разработчика. После этого щёлкните правой кнопкой мыши по любому каналу или пользователю, и в меню появится «Копировать ID». Также можно напрямую вызвать GET /api/guilds и GET /api/guilds/{guild_id}/channels для перечисления.

Часто задаваемые вопросы

Возвращается 401 unauthorized Токен доступа неверен либо был передан способом ?token=. Убедитесь, что токен передаётся через заголовок запроса Authorization: Bearer <токен> и совпадает с отображаемым в консоли. Возвращается 503 Соединение с Discord ещё не установлено. Сначала откройте /readyz, чтобы проверить gateway_ready; если оно длительное время имеет значение false, скорее всего, учётные данные аккаунта недействительны — получите их заново и повторно разверните. Возвращается 403 или 404 У самого аккаунта нет соответствующих прав (например, он не находится на этом сервере или не имеет права писать в этом канале), либо ID указан неверно. Такие ошибки исходят от Discord, а не являются проблемой прокси-сервиса. Возвращается 429 Сработало ограничение частоты Discord, поле retry_after в ответе указывает рекомендуемое количество секунд ожидания. Снизьте частоту вызовов. Аккаунт был заблокирован после отправки сообщения Как уже упоминалось, автоматизированные действия с личным аккаунтом нарушают условия обслуживания Discord. Используйте специальный дополнительный аккаунт и контролируйте частоту операций, избегая таких чувствительных действий, как массовая рассылка.

Область проверки

Производственный smoke-тест от 1 августа 2026 года с использованием специального аккаунта проверил аккаунт, серверы, каналы, участников, чтение сообщений, поиск, отправку, редактирование, реакции и удаление. Автоматизированные тесты охватывают аутентификацию, проверку параметров, сопоставление ошибок и сигнатуры текущей библиотеки зависимостей; после изменений worker или chart необходимо снова выполнить smoke-тест, нельзя считать историческую проверку доказательством постоянной работоспособности.