Skip to main content
Discord Agent Proxy to usługa wdrażana niezależnie: przechowuje dane uwierzytelniające twojego własnego konta Discord, utrzymuje stałe połączenie z Discord i udostępnia możliwości tego konta przez dwa interfejsy: MCP i REST API, umożliwiając AI lub programom obsługę Discord w twoim imieniu. Kontener nie zawiera żadnego modelu AI, odpowiada jedynie za wykonywanie — wywołania są inicjowane przez twojego klienta AI (Claude, Cursor itd.) lub własny program.

⚠️ Koniecznie przeczytaj przed użyciem

Automatyzowanie osobistego konta (self-bot) za pomocą programów narusza warunki świadczenia usług Discord, a konto może zostać zablokowane. Jest to nieodłączne założenie tej usługi: podajesz dane uwierzytelniające własnego konta i samodzielnie ponosisz ryzyko. Zdecydowanie zaleca się użycie specjalnie utworzonego konta dodatkowego, a nie konta głównego.

Wdrażanie usługi

Wejdź do konsoli → aplikacje, znajdź Discord Agent Proxy i utwórz aplikację. Po utworzeniu najpierw aktywuj subskrypcję, następnie przejdź do strony konfiguracji, wprowadź dane uwierzytelniające swojego konta Discord i wdroż usługę. Zasoby instancji są konfigurowane automatycznie przez platformę, bez konieczności wyboru specyfikacji. Po przesłaniu wdrożenia przejdziesz na stronę zarządzania aplikacją, z takim samym układem „Przegląd / Logi / Dokumentacja” jak przy wdrażaniu Telegrama i WeChat. „Przegląd” pokazuje status instancji i subskrypcji oraz potwierdza przez zapytanie do konta, czy Discord jest połączony; poprawne działanie kontenera nie oznacza, że konto na pewno jest połączone. Karta konta Discord w sekcji „Przegląd” udostępnia dwie informacje dotyczące dostępu:

Przeglądanie i testowanie interfejsów w konsoli

Otwórz zakładkę „Dokumentacja” tej aplikacji, aby zobaczyć parametry żądań, strukturę odpowiedzi wszystkich 14 operacji REST, a także przykłady w językach Shell, Python, JavaScript i innych. Adres instancji oraz token dostępu zostaną wypełnione automatycznie; token jest domyślnie ukryty. Wybierz GET /api/whoami i kliknij „Testuj”, aby potwierdzić konto, z którym połączony jest proxy. Operacje takie jak wysyłanie, edytowanie lub usuwanie wiadomości będą wykonywane na rzeczywistym koncie Discord, dlatego przed testowaniem potwierdź zawartość żądania. „Pobierz OpenAPI (JSON)” umożliwia wyeksportowanie pełnej definicji interfejsu. Plik zawiera adres instancji, ale nie zawiera tokenu dostępu. Jeśli chcesz zmienić dane uwierzytelniające konta Discord, wybierz „Wdróż ponownie” w sekcji „Przegląd”, wprowadź nowe dane uwierzytelniające i prześlij je.

Jak uzyskać dane uwierzytelniające konta Discord

  1. Zaloguj się do Discord w przeglądarce na komputerze (discord.com/app)
  2. Naciśnij F12, aby otworzyć narzędzia deweloperskie, i przejdź do panelu Network (Sieć)
  3. Kliknij dowolny kanał w Discord i obserwuj listę żądań
  4. Otwórz dowolne żądanie wysłane do discord.com/api i znajdź pole authorization w sekcji Request Headers (Nagłówki żądania)
  5. Skopiuj jego wartość
Ten ciąg poświadczeń jest równoważny stanowi logowania na twoje konto, nie udostępniaj go nikomu. W przypadku wycieku zmiana hasła w Discord spowoduje jego natychmiastowe unieważnienie.

Sposób uwierzytelniania

Z wyjątkiem /health i /readyz, wszystkie interfejsy wymagają przekazania tokenu dostępu w nagłówku żądania:
Uwaga: ta usługa akceptuje uwierzytelnianie wyłącznie przez nagłówek żądania i nie obsługuje sposobu dołączania tokenu do adresu URL, takiego jak ?token=xxx. Bezpośrednie otwarcie adresu interfejsu w przeglądarce zwróci 401 unauthorized; jest to normalne zjawisko i nie oznacza niepowodzenia wdrożenia. Aby potwierdzić, że proces działa, odwiedź /health; aby potwierdzić, czy połączenie Discord może obsłużyć żądania, odwiedź /readyz. Oba te sondowania nie wymagają uwierzytelniania. Gdy token dostępu proxy nie jest skonfigurowany, chronione interfejsy zwracają 503 i nie są udostępniane anonimowo.

Sprawdzanie statusu usługi

/health oznacza jedynie, że proces HTTP jest aktywny:
/readyz oznacza, czy Discord Gateway jest dostępny. Gdy połączenie działa prawidłowo, zwraca HTTP 200:
Podczas łączenia, gdy dane uwierzytelniające są nieprawidłowe lub połączenie zostało przerwane, bezpośrednie sondowanie Poda przez Kubernetes zwraca HTTP 503, a zaplecze instancji automatycznie ponawia próby. W tym czasie Pod zostanie tymczasowo usunięty z publicznej usługi Service, dlatego nie ma gwarancji, że będzie można odczytać ten diagnostyczny JSON przez domenę instancji; sprawdź status Deployment w konsoli, a po przywróceniu stanu Ready ponownie wywołaj MCP / REST.

Używanie w kliencie AI (MCP)

Na przykładzie Claude Code:
W przypadku klientów takich jak Cursor, które obsługują statyczne nagłówki żądań, skonfiguruj adres Streamable HTTP zgodnie z ich aktualną dokumentacją. Klienci akceptujący poniższą strukturę mogą użyć:
Nie jest to uniwersalny format konfiguracji dla wszystkich klientów MCP. Zdalne konektory Claude Desktop / Claude.ai są ustanawiane z chmury i nie odczytują żadnych nagłówków żądań HTTP z lokalnego pliku claude_desktop_config.json; jeśli obecnie potrzebujesz statycznego nagłówka Bearer, użyj Claude Code lub klienta wyraźnie obsługującego tę funkcję. Po zakończeniu konfiguracji możesz bezpośrednio wydawać AI polecenia w języku naturalnym, aby obsługiwało Discord, na przykład:
Sprawdź, czy mam nowe wiadomości na kanale „dyskusja o projekcie”, a jeśli ktoś zapytał o datę publikacji, pomóż mi odpowiedzieć, że w ten piątek.

Dostępne narzędzia

Użycie w programie (REST API)

Wszystkie interfejsy REST są dostępne pod /api, treść odpowiedzi ma ujednoliconą postać {"data": ...}, a w przypadku błędu {"error": "..."}.

Sprawdzenie bieżącego konta

Wysłanie wiadomości

Podczas ponawiania tego samego wysłania użyj ponownie tego samego Idempotency-Key, a proces zwróci pierwszy wynik bez ponownego wysyłania. Ponowne uruchomienie instancji wyczyści maksymalnie 5 000 przechowywanych w pamięci rekordów deduplikacji, dlatego wywołujący nadal musi samodzielnie śledzić długoterminowy status dostarczania. Opcjonalny parametr reply_to służy do odpowiedzi na wskazaną wiadomość:

Odczytywanie wiadomości

Pełna lista interfejsów

Jak uzyskać ID kanału i ID użytkownika

W kliencie Discord kolejno otwórz Ustawienia użytkownika → Zaawansowane, a następnie włącz Tryb dewelopera. Następnie kliknij prawym przyciskiem myszy dowolny kanał lub użytkownika — w menu pojawi się opcja „Kopiuj ID”. Możesz także bezpośrednio wywołać GET /api/guilds oraz GET /api/guilds/{guild_id}/channels, aby je wyliczyć.

Częste pytania

Zwracane jest 401 unauthorized Token dostępu jest nieprawidłowy albo został przekazany za pomocą ?token=. Upewnij się, że token jest przekazywany w nagłówku żądania Authorization: Bearer <token> i jest zgodny z tym wyświetlanym w konsoli. Zwracane jest 503 Połączenie z Discordem nie zostało jeszcze ustanowione. Najpierw odwiedź /readyz, aby sprawdzić gateway_ready; jeśli przez długi czas ma wartość false, najczęściej dane uwierzytelniające konta wygasły — pobierz je ponownie i wdroż ponownie. Zwracane jest 403 lub 404 Samo konto nie ma odpowiednich uprawnień (na przykład nie znajduje się na tym serwerze lub nie ma prawa pisać na tym kanale) albo ID zostało wpisane nieprawidłowo. Tego typu błędy pochodzą z Discorda, a nie są problemem usługi pośredniczącej. Zwracane jest 429 Został wywołany limit częstotliwości Discorda; pole retry_after w odpowiedzi podaje zalecaną liczbę sekund oczekiwania. Zmniejsz częstotliwość wywołań. Konto zostaje zablokowane po wysłaniu wiadomości Jak wspomniano wcześniej, automatyzowanie operacji na osobistych kontach narusza warunki świadczenia usług Discorda. Używaj dedykowanego dodatkowego konta oraz kontroluj częstotliwość operacji i unikaj wrażliwych zachowań, takich jak masowe wysyłanie wiadomości.

Zakres weryfikacji

Produkcyjny smoke test z 1 sierpnia 2026 r. przeprowadzony przy użyciu dedykowanego konta zweryfikował konto, serwery, kanały, członków, odczytywanie wiadomości, wyszukiwanie, wysyłanie, edytowanie, reakcje i usuwanie. Testy automatyczne obejmują uwierzytelnianie, walidację parametrów, mapowanie błędów oraz sygnatury bieżących bibliotek zależności; po zmianach workera lub chartu należy nadal ponownie wykonać smoke test — historycznej weryfikacji nie można traktować jako dowodu ciągłej dostępności.