MCP — interfejs programowy

Oprócz REST, GetMyBot udostępnia interfejs MCP (Model Context Protocol) — przeznaczony dla agentów AI i asystentów, które wywołują narzędzia zamiast ręcznie odpytywać endpointy. REST pozostaje interfejsem podstawowym; MCP to wygodna alternatywa dla scenariuszy agentowych. Nazwy narzędzi, zasobów i promptów poniżej odpowiadają dokładnie temu, co publikuje serwer.

Adres i autoryzacja

MCP jest dostępny pod endpointem /mcp (transport Streamable HTTP, metoda POST). Autoryzacja — ten sam token osobisty co dla REST: nagłówek Authorization: Bearer mbp_…. Nie trzeba tworzyć osobnych tokenów — jeden PAT działa zarówno dla REST, jak i dla MCP. Każde narzędzie wymaga tego samego scope co odpowiadający mu endpoint REST; token ze scope * ma pełny dostęp. Jeśli scope jest niewystarczający — wywołanie jest odrzucane (fail-closed), tak samo jak w REST.

Podłączenie do Claude Code / Cursor

Dodaj GetMyBot jako zdalny serwer MCP. Przykładowa konfiguracja (mcpServers) — wstaw własną domenę i token:

{
  "mcpServers": {
    "mybot": {
      "url": "https://twoja-domena/mcp",
      "headers": {
        "Authorization": "Bearer mbp_TWÓJ_TOKEN"
      }
    }
  }
}

Claude Code: umieść ten blok w pliku .mcp.json projektu lub dodaj serwer poleceniem claude mcp add. Cursor: dodaj ten sam blok w ustawieniach MCP (Settings → MCP → Add server). Po podłączeniu klient automatycznie pobierze listę narzędzi, zasobów i promptów.

Narzędzia według domen

Serwer publikuje 100 narzędzia — pełne pokrycie REST dostępnego przez PAT. Poniżej — narzędzie i wymagany scope. Nazwy w formacie czasownik_rzeczownik (snake_case).

Boty (bots)

  • list_botsbots:read
  • get_botbots:read
  • validate_bot_tokenbots:write
  • connect_botbots:write
  • update_botbots:write
  • delete_botbots:write
  • sync_botbots:write
  • change_bot_tokenbots:write
  • transfer_botbots:write
  • get_bot_settingssettings:read
  • update_bot_settingssettings:write

Kanały i szablony WhatsApp (bots)

Obsługa wielokanałowa (Telegram + WhatsApp + VK) jest dostępna również przez MCP. Kanały i szablony są chronione wspólnymi zakresami bots:read / bots:write — nie ma osobnego zakresu dla kanałów.

  • list_channelsbots:read — lista kanałów bota (platform tg/wa/vk, external_id, name, enabled, callback_url).
  • connect_channelbots:write — podłącz kanał WhatsApp lub VK (platform + creds).
  • delete_channelbots:write — odłącz kanał.
  • list_wa_templatesbots:read — katalog szablonów WhatsApp kanału (name, language, status, category, body).
  • sync_wa_templatesbots:write — zresynchronizuj katalog szablonów z Meta.
  • create_wa_templatebots:write — utwórz szablon WhatsApp i wyślij do moderacji Meta.
  • update_wa_templatebots:write — edytuj szablon (w statusach APPROVED/REJECTED/PAUSED).
  • delete_wa_templatebots:write — usuń szablon.

Kanały Telegram podłącza się przez connect_bot, a nie connect_channel — ten drugi obsługuje tylko wa i vk. Kategorie szablonów: MARKETING / UTILITY / AUTHENTICATION. create_wa_template od razu wysyła wersję roboczą do moderacji Meta; status zmienia się asynchronicznie — odczytuj go przez list_wa_templates (w razie potrzeby odświeżając katalog sync_wa_templates).

Przesyłanie nagłówka multimedialnego szablonu (obraz/wideo/dokument) przez MCP na razie nie jest obsługiwane — użyj interfejsu web lub REST POST /api/bots/{botID}/channels/{channelID}/templates/media.

Reakcje (reactions)

  • list_reactionsreactions:read
  • get_reactionreactions:read
  • create_reactionreactions:write
  • update_reactionreactions:write
  • delete_reactionreactions:write
  • import_reactionsreactions:write
  • test_formulareactions:write
  • reorder_reactionreactions:write
  • get_reaction_linksreactions:read
  • list_reaction_foldersreactions:read
  • create_reaction_folderreactions:write
  • update_reaction_folderreactions:write
  • delete_reaction_folderreactions:write
  • add_reaction_to_folderreactions:write
  • remove_reaction_from_folderreactions:write
  • add_reactions_to_folderreactions:write

Import przez import_reactions tworzy reakcje, ale pomija media: w kontekście MCP nie ma weryfikacji premium ani odbiornika Telegram dla plików. Jeśli bundle SamBot zawiera obrazy/wideo/dokumenty — użyj pełnofunkcjonalnego importu REST (POST /api/bots/{botID}/reactions/import), który przenosi również media.

Wysyłki masowe (broadcasts)

  • start_broadcastbroadcasts:write (opcjonalnie paid, opcjonalnie segment według etykiet)
  • get_broadcastbroadcasts:write
  • pause_broadcastbroadcasts:write
  • resume_broadcastbroadcasts:write
  • cancel_broadcastbroadcasts:write

Etykiety (labels)

  • list_labelslabels:read
  • create_labellabels:write
  • delete_labellabels:write
  • set_label_favoritelabels:write

Kolekcje i rekordy (collections)

  • list_collectionscollections:read
  • create_collectioncollections:write
  • update_collectioncollections:write
  • delete_collectioncollections:write
  • list_recordscollections:read
  • create_recordcollections:write
  • update_recordcollections:write
  • delete_recordcollections:write

Scenariusze (flows)

  • list_flowsflows:read
  • get_flowflows:read
  • create_flowflows:write
  • update_flowflows:write
  • delete_flowflows:write

Integracje, połączenia, dostępy (integrations)

  • list_integrationsintegrations:read
  • get_integration_sheetsintegrations:read
  • get_integration_statusintegrations:read
  • create_integrationintegrations:write
  • update_integrationintegrations:write
  • delete_integrationintegrations:write
  • rotate_integration_tokenintegrations:write
  • list_connectionsintegrations:read
  • create_connectionintegrations:write
  • test_connectionintegrations:write
  • update_connectionintegrations:write
  • delete_connectionintegrations:write
  • list_credentialsintegrations:read
  • create_credentialintegrations:write
  • update_credentialintegrations:write
  • delete_credentialintegrations:write

Media (media)

  • upload_mediamedia:write
  • get_mediamedia:write

Szablony (templates)

  • list_templatestemplates:read
  • delete_templatetemplates:write
  • create_template_from_bottemplates:write
  • apply_templatetemplates:write

Subskrybenci, czaty, dialogi — odczyt (subscribers)

  • list_subscriberssubscribers:read (paginacja offset/limit, filtry według etykiet)
  • list_chatssubscribers:read
  • list_dialogssubscribers:read
  • read_dialogsubscribers:read
  • send_dialog_messagesubscribers:write
  • send_dialog_reactionsubscribers:write
  • transcribe_dialog_messagesubscribers:write

Statystyki i analityka (stats)

  • get_statsstats:read
  • get_stats_summarystats:read
  • get_stats_recentstats:read
  • get_stats_logstats:read
  • get_reaction_healthstats:read
  • get_analyticsstats:read
  • get_analytics_chatsstats:read
  • get_funnelstats:read

Płatności — odczyt (billing)

  • get_balancebilling:read
  • list_tariffsbilling:read
  • get_transactionsbilling:read

Wysyłanie wiadomości

  • send_messagebroadcasts:write — wysłanie wiadomości w imieniu bota; koszt jest automatycznie rozliczany według właściciela tokenu.

Zasoby

Oprócz narzędzi serwer udostępnia zasoby — można je odczytać, aby nie zgadywać struktury:

  • mybot://openapi.yaml — pełna specyfikacja OpenAPI (ta sama, co zwracana pod /openapi.yaml).
  • mybot://reference — kompaktowy przewodnik: lista narzędzi z ich scope oraz konwencje (adres bazowy, paginacja, format błędów, limity).
  • mybot://schemas/reaction, mybot://schemas/trigger, mybot://schemas/action, mybot://schemas/flow, mybot://schemas/collection — schematy JSON konfiguracji. Najbardziej przydatne do poprawnego generowania reakcji (wyzwalacz, warunki, czaty, akcje), scenariuszy i kolekcji.
  • mybot://bots — dynamiczna lista Twoich botów (szybki kontekst bez wywoływania narzędzia).

Prompty

Gotowe scenariusze (polecenia slash u klienta MCP):

  • setup_autoresponder — zbudowanie bota-autorespondera (argumenty: bot, temat/zestaw pytań).
  • segment_broadcast — wysyłka do segmentu etykiet (argumenty: bot, etykiety, reakcja/tekst).
  • diagnose_reaction — ustalenie, dlaczego reakcja nie wyzwala się (odczytuje reakcję, reaction-health i kolejność).
  • import_from_sambot — przeprowadzenie importu bundle SamBot i weryfikacja wyniku.
  • weekly_report — podsumowanie statystyk/analityki bota za okres.

Kiedy wybrać MCP, a kiedy REST

  • Piszesz integrację, synchronizację, skrypt lub własny panel — użyj REST.
  • Podłączasz GetMyBot do asystenta AI lub agenta obsługującego MCP — użyj /mcp.

Oba interfejsy działają na tym samym tokenie i podlegają tym samym uprawnieniom właściciela. Jeśli nie znalazłeś narzędzia dla zadania — odpowiedni endpoint REST zawsze znajdziesz w interaktywnym przewodniku.

Co dalej