Zamieniaj e-maile w przychody dzięki Brew.
Używaj MCP do pracy nad e-mailami z asystentem, a REST API do zdarzeń z aplikacji. Porównaj uwierzytelnianie, zatwierdzanie, ponowienia i scenariusze w Brew.

Programista z Twojego zespołu łączy platformę e-mailową z Claude i w oknie czatu przygotowuje szkic kampanii na przyszły tydzień. Następnego ranka ktoś pyta, czy e-mail powitalny po rejestracji mógłby działać tak samo, przez asystenta. Dokumentacja platformy wymienia obok siebie serwer MCP i REST API.
Większość platform e-mailowych, które obsługują agentów, oferuje dziś te dwie drogi dostępu. Serwer MCP pozwala asystentowi AI wywoływać narzędzia platformy w trakcie rozmowy. REST API udostępnia operacje, które Twój kod może wywoływać bezpośrednio. Pod spodem obie drogi często prowadzą do tych samych endpointów, więc wybór sprowadza się do tego, kto wykonuje pracę i kiedy.
Używaj MCP, gdy człowiek pracuje przez asystenta, a REST API – gdy Twój produkt musi wysyłać e-maile bez niczyjego nadzoru. Większość zespołów w końcu korzysta z obu.
MCP (Model Context Protocol) to otwarty standard udostępniania narzędzi klientom AI, takim jak Claude, ChatGPT i Cursor. Klient czyta listę narzędzi z opisami i schematami, a potem na podstawie Twojej prośby wybiera, które wywołać. Serwer Brew działa pod adresem https://brew.new/api/mcp i obsługuje OAuth, więc logujesz się i wybierasz markę, zamiast zarządzać kluczami.
REST API to zestaw endpointów HTTP, które wywołuje Twój kod. Brew publikuje do swojego API specyfikację OpenAPI, SDK dla TypeScript i przewodnik dla agentów w formie zwykłego tekstu. Każde wywołanie zawiera klucz API, a Twój kod decyduje, co i kiedy wywołać.
Inni dostawcy działają według tego samego wzorca. Serwer MCP Customer.io opakowuje API w osobne narzędzia do odczytu, zapisu i usuwania. Brevo generuje narzędzia MCP ze swojej specyfikacji OpenAPI.
| MCP | REST API | |
|---|---|---|
| Kto steruje | Człowiek, przez asystenta | Twój kod |
| Typowe zadania | Szkice i poprawki e-maili, budowanie grup odbiorców, planowanie kampanii, odczyt analityki | Wywoływanie wyzwalaczy zdarzeń, tworzenie lub aktualizacja kontaktów, wysyłka e-maili transakcyjnych, odpytywanie o status wysyłki |
| Uwierzytelnianie | Logowanie przez OAuth albo klucz API dla klientów bez OAuth | Klucz API przypisany do marki lub organizacji |
| Bezpieczeństwo | W połączeniach OAuth i połączeniach organizacji Brew wstrzymuje rzeczywiste wysyłki do czasu potwierdzenia | Decyduje Twój kod; używaj kluczy idempotentności i własnych etapów weryfikacji |
| Obsługa błędów | Asystent czyta błąd i próbuje ponownie albo pyta Ciebie | Rozgałęziasz logikę według stałych kodów błędów i ponawiasz próby ze stopniowo rosnącym odstępem (backoff) |
| Rozmiar odpowiedzi | Ograniczony oknem kontekstu asystenta | Ograniczony tylko stronicowaniem |
| Najlepszy wybór, gdy | Zadanie wymaga oceny sytuacji lub kolejnych iteracji | Zadanie musi za każdym razem przebiegać tak samo |
Używaj MCP, gdy praca ma formę rozmowy:
create_email, edit_email, send_email z test: true, a potem send_email z scheduledAt i czeka na Twoje zatwierdzenie.search_contacts, odczyty pól i create_audience.get_email_analytics i skuteczność automatyzacji.W Brew e-maile generowane przez MCP korzystają z tego samego dokumentu marki co e-maile generowane w aplikacji. Konfigurację klienta opisuje wpis o MCP Brew.
Odpowiedzi MCP muszą zmieścić się w kontekście asystenta. Wpis Brew o sekwencjach zauważa, że prośba o pełny HTML przez MCP zwraca tylko pierwszy krok lub dwa długiej sekwencji, a endpoint REST zwraca treść wszystkich e-maili.
Używaj API, gdy e-mail jest częścią Twojego produktu:
POST /v1/automations/triggers/{triggerEventId}/fire z adresem e-mail i polami użytkownika. Resztą zajmuje się opublikowana automatyzacja.POST /v1/contacts tworzy lub aktualizuje do 1000 kontaktów w jednym żądaniu.GET /v1/sends/{sendId} zwraca status i statystyki dla panelu lub alertu.W endpointach, które to obsługują, przy ponowieniach w udokumentowanym 24-godzinnym oknie używaj tego samego Idempotency-Key i tej samej treści żądania (wywołania wyzwalaczy są deduplikowane na podstawie klucza przez 90 dni). Dla innej operacji logicznej użyj innego klucza; zanim założysz, że dany zapis jest objęty tym mechanizmem, przeczytaj kontrakt endpointu. Nagłówki limitów żądań informują, kiedy zwolnić. Odpowiedzi API z błędem zawierają pole code, np. CONSENT_REQUIRED, według którego możesz rozgałęziać logikę. Błędy sieciowe obsługuj osobno. Wszystko to opisuje przewodnik po API Brew.
Agenci kodujący, którzy pracują w terminalu, często lepiej radzą sobie z CLI niż z którąkolwiek z tych dwóch opcji. CLI Brew zwraca odpowiedź API jako jedną linię JSON, gdy jego wyjście nie trafia do terminala, i używa kodów wyjścia, na które agent może zareagować. Kod 4 oznacza, że wymagane jest potwierdzenie, a CLI wypisuje dokładne polecenie, które po zatwierdzeniu należy uruchomić ponownie z --yes. Generuje też typowane schematy danych zdarzeń poleceniem brew-cli types, dzięki czemu wywołania wyzwalaczy z Twojego backendu pozostają zgodne ze schematem wyzwalacza.
Oto jeden ze sposobów, w jaki zespół SaaS może podzielić pracę:
user_signed_up i automatyzację powitalną, testuje ją za pomocą test_automation i publikuje.W krokach 1 i 3 człowiek sprawdza pracę asystenta. Kroki 2 i 4 działają przy każdej rejestracji lub co noc, bez niczyjego nadzoru.
Wstawia asystenta między Ciebie a endpoint, więc żądanie wymaga więcej kroków, a asystent może wybrać niewłaściwe narzędzie. W pracy interaktywnej to nie problem, ale przy zdarzeniu rejestracji, które musi zostać wywołane za każdym razem, to zły wybór.
Brew wymaga potwierdzenia rzeczywistych wysyłek w połączeniach OAuth i połączeniach obejmujących całą organizację. W aplikacjach klienckich korzystających z klucza API marki skonfiguruj własne zasady zatwierdzania. Przy pracy z API chroń klucze w zmiennych środowiskowych, w miarę możliwości używaj kluczy przypisanych do marki i dodawaj klucze idempotentności do każdego ponawianego zapisu.
Tak. Przewodnik Brew po integracji z agentami AI opisuje, jak podłączyć endpointy API jako narzędzia wywoływane przez model (function calling), a SDK zajmuje się przy tym uwierzytelnianiem i ponowieniami.
Aby wypróbować obie połowy, połącz serwer MCP ze swoim asystentem do pracy nad kampaniami i utwórz jeden klucz API dla wyzwalacza, który będzie wywoływał Twój backend.
