Serwer MCP Senuto
MCP (Model Context Protocol) to standard, którym asystenci AI łączą się z zewnętrznymi źródłami danych. Serwer MCP Senuto wystawia dane Senuto jako narzędzia, po które model sięga sam: pytasz w Claude, ChatGPT czy Cursorze o widoczność domeny, a asystent pobiera liczby z Senuto, zamiast je zgadywać.
Serwer jest zdalny — nie instalujesz niczego lokalnie:
https://mcp.senuto.com/mcpTransport: HTTP. Uwierzytelnienie: OAuth przy pierwszym użyciu — nie pobierasz i nie wklejasz żadnego tokena.
English version of this page: Senuto MCP server.
MCP prowadzi do tych samych danych co REST API — różni się tym, kto pisze integrację: przy REST Ty w kodzie, przy MCP model na podstawie Twojego polecenia. Porównanie trzech dróg (API, MCP, no-code): API, MCP czy no-code.
Czego potrzebujesz
MCP i REST API to osobne uprawnienia na koncie:
| Plan / dodatek | REST API | Serwer MCP |
|---|---|---|
| Advanced, Prime | w cenie planu | w cenie planu |
| Dodatek „Dostęp do API + MCP” (Basic, Lite) | tak | tak |
| Dodatek „Dostęp do MCP” — 69 zł/mies. (Basic, Lite) | nie | tak |
Dodatek włączasz samodzielnie w aplikacji: app.senuto.com/user/user-package . Ceny: stan na 2026-09-06, aktualne w cenniku Senuto . Warunki dodatku API (rozliczenie miesięczne, rezygnacja przez nieprzedłużenie) opisuje strona Dostęp do API — dodatek MCP działa tak samo.
Sam dodatek MCP nie odblokowuje REST API. Serwer MCP uwierzytelnia się w API Senuto po swojemu;
Twoje własne żądanie wysłane wprost na api.senuto.com z takim kontem dostanie 403 z pustą treścią
({"success": false, "message": ""}). Jeśli obok asystenta chcesz pisać własne integracje, potrzebujesz
dodatku obejmującego API.
Podłączenie
Dodaj serwer w swoim kliencie
Claude Code
claude mcp add senuto --transport http https://mcp.senuto.com/mcpZaloguj się przez OAuth
Klient wyświetli monit przy pierwszym użyciu i przeprowadzi Cię przez logowanie do Senuto. Nie generujesz tu żadnego tokena ręcznie i nie używasz tokena REST API — to dwie różne rzeczy.
Sprawdź, że działa
Poproś asystenta o coś, czego nie wie z głowy — np. „sprawdź w Senuto widoczność zalando.pl”.
Powinien wywołać narzędzie get_domain_statistics i pokazać liczby. Jeśli odpowiada bez wywołania
narzędzia, patrz Gdy coś nie działa.
Co potrafi serwer MCP
26 narzędzi pokrywających cztery moduły plus odczyt limitów.
Stan na 2026-09-21. Źródłem prawdy jest lista narzędzi, którą serwer zgłasza Twojemu klientowi — zestaw może się zmieniać częściej niż ta strona.
Analiza widoczności
| Narzędzie MCP | Co zwraca |
|---|---|
get_domain_statistics | widoczność domeny, TOP3/10/50, ranking, ekwiwalent Ads oraz liczba fraz z AI Overview i cytowań domeny w nim |
get_positions_data | frazy, na które rankuje domena, z pozycjami i widocznością |
get_competitors | konkurenci domeny z porównaniem metryk |
get_cannibalization_keywords | frazy, o które konkuruje kilka własnych URL-i |
get_characteristics_table | rozkład fraz wg cech (długość, trendy, wyszukiwania, trudność) |
get_keyword_history | historia pozycji pojedynczej frazy |
get_positions_history_chart | historia rozkładu pozycji (dane do wykresu) |
get_subdomains | widoczność w podziale na subdomeny |
get_urls | pojedyncze URL-e rankujące w wynikach |
suggest_domains | podpowiedzi domen do wyszukiwarki |
get_countries_list | lista obsługiwanych rynków |
Baza słów kluczowych
| Narzędzie MCP | Co zwraca |
|---|---|
get_keyword_statistics | wyszukiwania, CPC i trend dokładnie tych fraz, które podasz — do 500 na wywołanie |
get_keywords | propozycje fraz dla frazy, domeny albo URL-a |
get_groups | grupy semantyczne dla frazy |
get_questions | frazy pytające powiązane z frazą |
get_keywords nie zwraca wyszukiwań frazy, którą podasz — zwraca inne frazy do niej dopasowane,
a sam seed często nie ma w wynikach własnego wiersza. Wyszukiwania konkretnych fraz daje
get_keyword_statistics: jeden wiersz na frazę, found: false, gdy Senuto nie ma dla niej danych,
i searches: 0, gdy fraza jest znana, ale bez wolumenu.
Narzędzia Bazy słów kluczowych obsługują country_id: 1 (PL), 50 (CZ), 53 (DK), 82 (HU),
134 (NL), 153 (RO), 160 (SE), 164 (SK).
Monitoring (Rank Tracker)
| Narzędzie MCP | Co zwraca |
|---|---|
rt_get_active_projects | Twoje aktywne projekty |
rt_get_projects_list | lista projektów z rozszerzonymi danymi |
rt_list_groups | wszystkie grupy fraz w projekcie (pobiera każdą stronę) |
rt_get_project_keywords | frazy monitorowane w projekcie (id + treść, bez pozycji) |
rt_get_position_data | dzienna historia pozycji fraz w zakresie dat |
rt_get_snippets_statistics | statystyki snippetów i funkcji SERP w projekcie |
Analiza SERP
Ten sam przepływ asynchroniczny co w REST API (Eksporty i zadania async): zlecasz analizę, odpytujesz o status, dopiero potem czytasz raporty.
| Narzędzie MCP | Co robi |
|---|---|
serp_create | zleca analizę SERP dla frazy — zużywa limit |
serp_check | status zadania (has_serp_data, has_keywords_analysis_data) |
serp_list | Twoje zadania SERP, od najnowszych |
serp_get_report | raport z gotowego zadania (9 udokumentowanych rodzajów, patrz niżej) |
Raporty dostępne w serp_get_report (parametr report):
urls,
content_statistics,
keyword_stats,
competitors_number,
topic_leaders,
groups,
questions,
related_keywords,
keywords_propositions.
Tytuły stron rankujących znajdziesz w raporcie urls.
Konto
| Narzędzie MCP | Co zwraca |
|---|---|
get_limits | stan wszystkich limitów konta naraz; nie zużywa żadnej puli |
Limity — jedna pula na konto
Wywołania przez MCP czerpią z tych samych liczników co REST API i klikanie w aplikacji. Nie ma osobnego „limitu MCP”: zapytanie asystenta o nową domenę zużywa tę samą jednostkę co odpowiadające mu żądanie REST. Zasady, okresy rozliczeniowe i Grace Window opisuje strona Limity zapytań.
Które narzędzie co zużywa
| Narzędzie MCP | Licznik | Co zwiększa licznik |
|---|---|---|
get_domain_statistics, get_positions_data, get_competitors, get_cannibalization_keywords, get_characteristics_table, get_keyword_history, get_positions_history_chart, get_subdomains, get_urls | visibility_analysis_queries_per_day | nowa domena, czyli domain + fetch_mode. Komplet raportów dla jednej domeny to jedna jednostka, a kolejne pytania o nią w ciągu 24 h są darmowe. country_id nie nalicza osobno: ta sama domena w bazie 2.0 i w bazie standardowej to jedna jednostka |
get_keywords, get_questions | keywords_analysis_queries_per_day | nowy seed (fraza, domena albo URL) + country_id, po jednostce za seed. Pięć seedów to pięć jednostek w jednym wywołaniu i w pięciu; ten sam seed powtórzony w ciągu 24 h nic nie kosztuje |
get_keyword_statistics | tools_daily_limit, w getLimits również pod kluczem keywords_analysis_tools_queries_per_day | każde wywołanie, jedna jednostka, choćby niosło 500 fraz. Odebranie gotowego wyniku przez public_id nie nalicza drugiej |
serp_create | serp_analysis_daily_limit | nowa fraza + country_id. Jeśli zadanie dla tej pary już jest na koncie, create zwraca istniejące i nie nalicza |
get_groups, suggest_domains, get_countries_list, rt_get_active_projects, rt_get_projects_list, rt_list_groups, rt_get_project_keywords, rt_get_position_data, rt_get_snippets_statistics, serp_check, serp_list, serp_get_report, get_limits | brak | nie naliczają niczego |
Licznik Monitoringu (monitoring_daily_keywords_refreshes) rośnie tylko przy odświeżeniu pozycji,
a tego narzędzia MCP nie robią: rt_* wyłącznie czytają zebrane dane.
W praktyce, przy pracy z asystentem:
- Czytanie gotowych danych zwykle nie kosztuje. Paginacja i kolejne raporty tego samego zadania podlegają limitom liczby wierszy, nie limitowi zapytań.
- Przed
serp_createzajrzyj wserp_list. Raporty istniejącego, zakończonego zadania dla tej samej frazy pobierzesz bez naliczenia. - Pętla w rozmowie potrafi wyczerpać limit, którego potrzebujesz do pracy w panelu. To ta sama pula.
Czym MCP różni się od REST API
| Serwer MCP | REST API | |
|---|---|---|
| Zakres | 26 narzędzi, wybrane raporty | 124 udokumentowane endpointy |
| Rynki (Analiza widoczności) | 1 (PL 1.0), 50 (CZ), 164 (SK), 200 (PL 2.0) | wszystkie obsługiwane rynki |
| Rynki (Baza słów kluczowych) | 1, 50, 53, 82, 134, 153, 160, 164 — dla Polski 1, bez 200 | jak wyżej |
| Wielkość odpowiedzi | detail_level: summary / standard / extended | pełna odpowiedź + paginacja |
| Strona wyników | do 100 rekordów (rt_get_position_data: do 50) | limity per endpoint |
| Zapis | tylko serp_create (zlecenie analizy) — reszta to odczyt | pełna powierzchnia odczytowa modułów |
| Kto ustala parametry | model, na podstawie Twojego polecenia | Ty, w kodzie |
Baza 2.0 dla Polski (country_id: 200) nie działa w narzędziach Bazy słów kluczowych — tam użyj
country_id: 1. W Analizie widoczności 200 jest dostępne i to nadal
zalecana baza.
Parametry dobiera model, więc warto je weryfikować — zwłaszcza rynek (country_id) i tryb domeny
(fetch_mode). Najprościej podać je wprost w poleceniu: „…dla senuto.com, cała domena z subdomenami,
baza 2.0”. Do powtarzalnych, rozliczanych raportów zamiast MCP użyj REST API — tam parametry są
w Twoim kodzie, nie w interpretacji promptu.
Obsługiwane wartości fetch_mode w narzędziach Analizy widoczności:
| Wartość | Zakres | Gdzie działa |
|---|---|---|
subdomain | cała domena wraz ze wszystkimi subdomenami | wszystkie narzędzia |
topLevelDomain | dokładnie ten host, bez subdomen (domyślne) | wszystkie narzędzia |
catalog | katalog i wszystko poniżej, ścieżka w polu domain (example.com/blog) | get_positions_data, get_domain_statistics, get_characteristics_table, get_positions_history_chart, get_cannibalization_keywords |
url | dokładnie jeden adres | jw. |
catalog i url są wystawione tylko w tych narzędziach, w których endpoint faktycznie zawęża wynik.
Sprawdzone na żywym API 22.09.2026: sections/getUrls, competitors/getData i sections/getSubdomains
przyjmują catalog, ignorują go i zwracają dane całej domeny — bez błędu. Jeśli sięgasz po nie
bezpośrednio w REST, nie zawężysz ich do katalogu, choćbyś podał ścieżkę. W kanibalizacji ścieżka zawęża
zbiór fraz, ale adresy w wierszach mogą leżeć poza nią.
Uwaga na domyślną wartość: MCP startuje z topLevelDomain, czyli samego hosta, a aplikacja
domyślnie pokazuje subdomain. Jeśli liczby z asystenta nie zgadzają się z panelem, to zwykle jest
ta różnica — patrz fetch_mode.
Gdy coś nie działa
| Objaw | Przyczyna i co zrobić |
|---|---|
| Logowanie OAuth się nie kończy albo klient nie łączy się z serwerem | sprawdź, czy Twoje konto ma dostęp do MCP (plan Advanced/Prime albo dodatek); przy wątpliwościach napisz na czacie do supportu |
| Klient widzi serwer, ale nie ma żadnych narzędzi | serwer podłączony bez zakończonej autoryzacji — usuń konektor i dodaj go ponownie, przechodząc OAuth do końca |
| Asystent odpowiada „z głowy”, bez wywołania narzędzia | poproś wprost: „użyj narzędzia Senuto” i wskaż raport; sprawdź też, czy konektor jest włączony w tej rozmowie |
serp_get_report zwraca Unfinished task | crawl jeszcze trwa — odpytuj serp_check, aż progress.has_serp_data będzie true |
Błąd 418 w trakcie rozmowy | najczęściej wyczerpany limit modułu — sprawdź get_limits (Limity zapytań) |
403 z pustą treścią przy własnych żądaniach curl-em | masz dostęp do MCP, ale nie do REST API — patrz Czego potrzebujesz |
Bieżące informacje o awariach: komunikat.senuto.com .