Agent Pilot
Agent Pilot zamienia Twoją witrynę WordPress w bezpieczny zdalny serwer MCP (Model Context Protocol). Zainstaluj go, podłącz Claude — z claude.ai w przeglądarce, z Claude Desktop lub z Claude Code — a Twoja witryna staje się czymś, czym Claude może naprawdę sterować: wyszukiwać wpisy i produkty, przygotowywać szkice i edytować strony zgodnie z marką, aktualizować zamówienia WooCommerce, moderować komentarze, czyścić cache i robić wiele więcej.
Najtrudniejszą częścią dawania AI dostępu do Twojej witryny jest zrobienie tego bezpiecznie. Agent Pilot jest zbudowany właśnie wokół tego problemu. Każde połączenie przechodzi przez pełen handshake OAuth 2.1, każdy token dostępu jest powiązany z konkretnym użytkownikiem WordPressa, a każde narzędzie ponownie sprawdza uprawnienia tego użytkownika, zanim się uruchomi. Claude nigdy nie zrobi więcej niż osoba, która udzieliła autoryzacji — a wszystko, co robi, trafia do dziennika audytu, który możesz przejrzeć i unieważnić w dowolnym momencie.

Wyróżniki
- Oparty na standardach i niezależny od klienta. Zgodny serwer MCP po transporcie Streamable-HTTP z pełnym OAuth 2.1 (authorization code + PKCE + refresh, Dynamic Client Registration). Działa od ręki z custom connectors claude.ai, Claude Desktop i Claude Code.
- Wielu użytkowników i wiele instancji. Podłącz kilka instancji Claude — nawet jako różnych użytkowników WordPressa. Każdy token jest powiązany z użytkownikiem, który go zatwierdził, i ograniczony do roli tego użytkownika. Connector kierownika sklepu widzi tylko to, co może zrobić kierownik sklepu.
- 25 wbudowanych narzędzi w czterech zakresach uprawnień — odczyt, tworzenie treści, WooCommerce i zarządzanie witryną — plus opcjonalny zakres bazy wiedzy Chatbot Pilot oraz wszelkie narzędzia, które wnoszą inne wtyczki Pilot (fakturowanie, poczta transakcyjna, bezpieczeństwo, SEO, subskrypcje).
- Kontrola narzędzi per rola i per użytkownik. Dedykowany ekran Tools włącza lub wyłącza każde narzędzie — albo cały zakres — dla dowolnej roli WordPressa lub pojedynczego użytkownika. Administratorzy domyślnie dostają wszystko; każda inna rola zaczyna pusta i dostaje dokładnie to, czego potrzebuje.
- Chirurgiczne edycje treści.
wp_replace_in_postwykonuje precyzyjne edycje typu znajdź-i-zamień, dzięki czemu Claude może poprawić literówkę na stronie Divi lub Elementor bez przepisywania tysięcy linii kodu buildera. - Obrona warstwowa. Ekran zgody, podwójna weryfikacja zakres-do-uprawnienia, potwierdzanie per wywołanie dla działań destrukcyjnych, pełny dziennik audytu, rate-limiting, opcjonalna whitelista IP oraz rotacja kluczy jednym kliknięciem.
- Szyfrowane w spoczynku. Klucz podpisujący OAuth jest generowany przy aktywacji i przechowywany w postaci zaszyfrowanej z użyciem Twoich salts WordPressa (lub trzymany w pliku poza bazą danych, jeśli wolisz).
- Bez vendor lock-inu, bez telemetrii. Hostowany u Ciebie. Twoje dane i Twoje poświadczenia dostawcy AI nigdy nie dotykają naszych serwerów.
Jak to działa
Dwa otwarte standardy wykonują całą ciężką pracę:
- OAuth 2.1 odpowiada na pytanie „kto ma wstęp i do robienia czego?”. Gdy klient Claude po raz pierwszy łączy się z Twoją witryną, nie ma żadnego tokenu, więc zostaje przeprowadzony przez przepływ logowania i zgody. Administrator zatwierdza zestaw zakresów (scopes), a klient otrzymuje podpisany, ograniczony czasowo token dostępu.
- MCP (Model Context Protocol) odpowiada na pytanie „co agent może naprawdę
zrobić?”. Po uwierzytelnieniu Claude wywołuje jeden endpoint, który udostępnia
listę narzędzi —
wp_list_posts,wp_save_post,wc_list_ordersi tak dalej. Claude widzi tylko te narzędzia, do których jego token ma uprawnienia.
Discovery, logowanie, zgoda i wymiana tokenów dzieją się automatycznie przy pierwszym dodaniu connectora. Od tej pory Claude łączy się ponownie po cichu, korzystając ze swojego refresh-tokenu.
Wymagania
| Komponent | Zalecane |
|---|---|
| WordPress | 5.8 lub nowszy (testowane do 7.0) |
| PHP | 8.0 lub nowszy |
| WooCommerce | 7.0+ (opcjonalnie — narzędzia Woo pojawiają się tylko, gdy jest aktywne) |
| Chatbot Pilot | opcjonalnie — narzędzia bazy wiedzy pojawiają się tylko, gdy jest aktywny |
| HTTPS | Wymagane dla claude.ai w przeglądarce; zalecane wszędzie |
| Salts WordPressa | Unikalne AUTH_KEY / SECURE_AUTH_KEY w wp-config.php (używane do szyfrowania klucza podpisującego) |
| Dostępność | claude.ai łączy się z chmury Anthropic, więc witryna musi być publicznie dostępna dla klienta webowego (klienci lokalni mogą używać lokalnego adresu URL) |
Instalacja
- Otwórz Wtyczki → Dodaj nową → Wyślij wtyczkę w panelu WordPressa i wgraj plik ZIP Agent Pilot.
- Aktywuj Agent Pilot. Przy aktywacji tworzy swoje tabele w bazie danych,
nadaje administratorom uprawnienie
manage_agent_piloti automatycznie generuje klucze podpisujące OAuth. - Otwórz Agent Pilot → Connectors. Skopiuj adres URL endpointu MCP pokazany na górze — to adres, który podajesz Claude.
- Dodaj connector w swoim kliencie Claude (patrz niżej) i przeprowadź jednorazowe logowanie + zgodę.
Podłączanie Claude
Wszystko, czego potrzebuje klient, znajduje się na ekranie Connectors: endpoint MCP, issuer OAuth oraz gotowe do wklejenia polecenie dla Claude Code.

claude.ai (web) i Claude Desktop
W Claude otwórz Settings → Connectors → Add custom connector i wklej swój
endpoint MCP (na przykład https://your-site.com/wp-json/agent-pilot/v1/mcp).
Claude otwiera stronę logowania Twojej witryny, zatwierdzasz ekran zgody i connector
jest gotowy. Klient webowy łączy się z chmury Anthropic, więc Twoja witryna musi być
dostępna przez publiczne HTTPS.
Claude Code
claude mcp add --transport http agent-pilot https://your-site.com/wp-json/agent-pilot/v1/mcpClaude Code uruchamia przepływ OAuth w Twojej przeglądarce; po zatwierdzeniu
narzędzia są dostępne w Twojej sesji. Uruchom /mcp, aby je zobaczyć, albo po
prostu poproś Claude, żeby coś zrobił — „wypisz pięć ostatnich wpisów roboczych”,
„pokaż mi zamówienia w realizacji z tego tygodnia”.
Wybór, jako kto działa agent
Ekran zgody działa jako zalogowany użytkownik WordPressa, a wynikowy token
dziedziczy uprawnienia tego użytkownika. Dla ściśle ograniczonego połączenia utwórz
dedykowanego użytkownika WordPressa z ograniczoną rolą (plus uprawnienie
manage_agent_pilot, aby mógł autoryzować) i zatwierdź connector, będąc
zalogowanym jako ten użytkownik. Agent będzie wtedy mógł zrobić dokładnie to, co
może ten użytkownik — i nic więcej.
Co Claude może zrobić
Narzędzia są pogrupowane w cztery zakresy (scopes). Podczas zgody decydujesz, które zakresy otrzymuje connector; w momencie wywołania każde narzędzie dodatkowo weryfikuje uprawnienie WordPressa powiązanego użytkownika. Oba sprawdzenia muszą przejść.
Odczyt (wp.read)
Inspekcja witryny tylko do odczytu. Bezpieczna do szerokiego nadania.
| Narzędzie | Co robi |
|---|---|
wp_get_site_info | Nazwa witryny, adresy URL, wersje, aktywny motyw, status WooCommerce, liczniki treści |
wp_get_site_context | Motyw, paleta kolorów, typografia, wzorce bloków i ostatni wpis — żeby generowana treść pasowała do Twojego stylu |
wp_list_posts | Wyszukuj i wypisuj wpisy, strony i dowolny własny typ treści |
wp_get_post | Pobierz jeden wpis/stronę z pełną treścią i metadanymi |
wp_list_terms | Wypisz terminy taksonomii (kategorie, tagi, kategorie produktów…) |
wc_list_products / wc_get_product | Wyszukuj i czytaj produkty WooCommerce |
wc_list_orders / wc_get_order | Wyszukuj i czytaj zamówienia z pozycjami |
wc_list_customers | Wyszukuj klientów wraz z liczbą zamówień i łączną kwotą wydatków |
Zapis treści (wp.content.write)
Twórz i edytuj treści. Działania destrukcyjne wymagają jawnej flagi confirm.
| Narzędzie | Co robi |
|---|---|
wp_save_post | Utwórz nowy wpis/stronę/CPT lub w pełni zaktualizuj istniejący |
wp_replace_in_post | Precyzyjne znajdź i zamień wewnątrz strony — bezpieczny sposób na poprawienie literówki lub linii na stronie page-buildera (patrz niżej) |
wp_delete_post | Przenieś wpis do kosza lub usuń go trwale (wymagane confirm) |
wp_upload_media | Pobierz obraz/plik z adresu URL do biblioteki mediów |
wc_save_product | Utwórz lub zaktualizuj produkt WooCommerce |
wc_save_order | Zaktualizuj status zamówienia lub dodaj notatkę do zamówienia |
wp_comments | Wypisuj i moderuj komentarze (zatwierdź, cofnij zatwierdzenie, spam, kosz) |
Zarządzanie witryną (wp.manage)
Operacje administracyjne. Każda zmiana destrukcyjna wymaga potwierdzenia.
| Narzędzie | Co robi |
|---|---|
wp_options | Odczytaj lub zaktualizuj opcję WordPressa (aktualizacje wymagają confirm; sekrety wtyczek są blokowane) |
wp_plugins | Wypisuj, aktywuj lub dezaktywuj wtyczki (confirm) |
wp_themes | Wypisuj zainstalowane motywy lub przełącz aktywny motyw (confirm) |
wp_users | Wypisuj, czytaj, twórz, aktualizuj lub usuwaj użytkowników — z zabezpieczeniami przed usunięciem samego siebie lub ostatniego administratora (confirm) |
wp_maintenance | Wyczyść object cache, wyczyść reguły przepisywania, usuń transients |
Baza wiedzy (wp.kb)
Dostępna tylko, gdy Chatbot Pilot jest aktywny.
| Narzędzie | Co robi |
|---|---|
kb_search | Wyszukiwanie semantyczne (embeddings) w Twojej bazie wiedzy Chatbot Pilot |
kb_stats | Statystyki indeksowania: przeskanowane/zindeksowane pliki, fragmenty, ostatni przebieg |
kb_reindex | Uruchom reindeksowanie w tle (wymaga uprawnienia manage) |
Narzędzia z innych wtyczek
Agent Pilot jest rozszerzalny: każda wtyczka może zarejestrować własne zakresy (scopes) i narzędzia MCP, które następnie automatycznie przepływają przez discovery, ekran zgody i ekran Tools. Każdy wniesiony zakres jest mapowany na uprawnienie WordPressa, tak samo jak te wbudowane, więc obowiązuje to samo podwójne sprawdzenie zakresu i uprawnienia. W ramach pakietu Pilot obejmuje to już:
| Wtyczka | Dodaje możliwość |
|---|---|
| Invoice Pilot | Odczytu faktur i wystawienia jednej z zamówienia WooCommerce |
| Mail Pilot | Przeglądania dziennika wysyłki i wysłania e-maila przez mailer witryny |
| Security Pilot | Odczytu statusu bezpieczeństwa i dziennika ataków, blokowania lub odblokowania IP |
| AI SEO Pilot | Odczytu pól SEO wpisu oraz ustawienia jego meta opisu, słowa kluczowego i schematu |
| Subscriptions | Podglądu subskrypcji użytkowników, ich statusu i dat rozliczeń |
Ekran Tools — dostęp per rola i per użytkownik
Zakresy decydują w ogólnych zarysach, co connector może robić; ekran Agent Pilot → Tools pozwala działać precyzyjniej, włączając lub wyłączając poszczególne narzędzia — albo cały zakres — dla roli WordPressa lub konkretnego użytkownika.

- Bezpieczne domyślne ustawienia dla admina. Administratorzy domyślnie dostają każde narzędzie. Każda inna rola zaczyna z żadnym narzędziem — przyznajesz dokładnie to, czego potrzebuje, per zakres lub per poszczególne narzędzie.
- Trzy stany na wiersz. Domyślny, Włączony lub Wyłączony. Reguła na poziomie narzędzia bije regułę na poziomie zakresu; w obrębie ról użytkownika Wyłączony zawsze wygrywa.
- Nadpisania per użytkownik. Wpisz nazwę lub e-mail, by wczytać pojedynczego użytkownika i dostroić jego dostęp niezależnie od jego roli.
- Tylko ograniczanie, i audytowane. Ta warstwa leży na wierzchu zgody na zakresy OAuth oraz uprawnień WordPressa — może odbierać narzędzia, ale nigdy nie przyzna czegoś, czego powiązany użytkownik i tak nie mógłby zrobić. Każde zablokowane wywołanie trafia do dziennika audytu.
Bezpieczna edycja stron page-buildera
Strony zbudowane w Divi, Elementor, WPBakery i podobnych builderach
przechowują swój układ jako tysiące linii shortcode’ów lub JSON-a wewnątrz
post_content. Przepisywanie tego wszystkiego tylko po to, by poprawić literówkę,
jest ryzykowne — jeden źle postawiony znak może zepsuć stronę.
wp_replace_in_post rozwiązuje ten problem. Zamiast nadpisywać całą stronę,
podajesz Claude dokładny tekst do znalezienia i jego zamiennik, i zmieniają się
tylko te bajty — otaczający kod buildera jest zachowywany bajt po bajcie. Obsługuje
kilka edycji w jednym wywołaniu (na przykład literówkę oraz linię w FAQ), odmawia
działania, gdy szukany tekst nie zostanie znaleziony, i domyślnie wymaga, by
fragment był unikalny, żeby przez przypadek nic nie zostało zmienione.
Wskazówka: poproś Claude, żeby najpierw odczytał stronę za pomocą
wp_get_post, aby skopiował dokładny tekst, i żeby uruchomiłwp_maintenancepotem, jeśli builder cache’uje statyczną wersję strony.
Model bezpieczeństwa
Agent Pilot nakłada na siebie kilka niezależnych warstw ochrony:
- OAuth 2.1, a nie współdzielony klucz. Grant authorization-code z PKCE i refresh-tokenami. Tokeny dostępu to krótko żyjące podpisane JWT; nie ma żadnego statycznego hasła, które mogłoby wyciec.
- Powiązany z użytkownikiem. Każdy token niesie ze sobą użytkownika WordPressa, który go zatwierdził. Wywołania narzędzi działają jako ten użytkownik, więc reguły roli i uprawnień obowiązują dokładnie tak, jak w wp-admin.
- Zakres oraz uprawnienie. Zakres mówi „ten connector może zapisywać treści”; sprawdzenie uprawnienia mówi „ten użytkownik rzeczywiście ma do tego prawo.” Oba muszą przejść, przy każdym wywołaniu.
- Bramkowanie narzędzi per rola / per użytkownik. Na wierzchu zakresów ekran Tools może wyłączyć poszczególne narzędzia (albo całe zakresy) dla roli lub pojedynczego użytkownika. To warstwa tylko ograniczająca — zawsze egzekwowana, a każde zablokowane wywołanie jest audytowane.
- Zgoda, którą da się przeczytać. Ekran zatwierdzania nazywa connector, pokazuje host zgłaszający żądanie i wypisuje każde żądane uprawnienie — oznaczając każde, którego Twoje konto faktycznie nie może udzielić.
- Działania destrukcyjne są zablokowane. Usuwanie treści, zmiana
wtyczek/motywów/użytkowników lub aktualizacja opcji wymaga jawnego
confirmw żądaniu, chyba że celowo oznaczysz connector jako zaufany. - Wszystko jest audytowane. Autoryzacje, rejestracje, każde wywołanie narzędzia i każda nieudana próba są rejestrowane z użytkownikiem, connectorem, znacznikiem czasu i IP.
- Rate-limiting i whitelista IP. Limity żądań per connector plus opcjonalna whitelista CIDR dla zamkniętych wdrożeń.
- Unieważniaj i rotuj. Wyłącz connector lub pojedynczy token jednym kliknięciem albo zrotuj klucze podpisujące, aby unieważnić wszystkie tokeny naraz.
Ekran Connectors
Agent Pilot → Connectors to centrum dowodzenia:
- Połącz Claude z tą witryną — endpoint MCP, issuer OAuth i adres URL metadanych protected-resource oraz polecenie copy-paste dla Claude Code.
- Zarejestrowane connectory — każdy klient, który się zarejestrował (każda instancja Claude to osobna pozycja), z jego typem i przyciskiem Revoke na jedno kliknięcie.
- Aktywne tokeny dostępu — jeden wiersz na żywe połączenie, pokazujący użytkownika, connector, przyznane zakresy i datę wygaśnięcia, każdy unieważnialny z osobna.
- Klucze podpisujące — Rotate keys natychmiast unieważnia każdy wydany token; connectory po prostu autoryzują się ponownie.
- Ostatnia aktywność — ślad audytu na żywo. Normalne nowe połączenie pojawia się
jako
auth_fail(początkowa sonda discovery) →dcr(rejestracja) →authorize(zatwierdzone) → wpisytool_callw miarę pracy Claude. Nieuwierzytelnione sondy pojawiające się jakoauth_failsą oczekiwane dla dowolnego publicznego endpointu.
Opis ustawień
Skonfiguruj zachowanie w Agent Pilot → Settings.

| Ustawienie | Cel |
|---|---|
| Enable MCP server | Główny włącznik. Gdy wyłączony, endpointy OAuth i MCP zwracają 503. |
| Accept new connectors | Zezwól na Dynamic Client Registration. claude.ai w przeglądarce potrzebuje tego, by zarejestrować się samodzielnie; wyłącz, by zamrozić listę connectorów. |
| Trust connectors (skip confirmations) | Gdy włączone, narzędzia destrukcyjne działają bez flagi confirm per wywołanie. Zostaw wyłączone dla bezpieczeństwa. |
| Access-token lifetime | Jak długo token dostępu jest ważny, w sekundach (refresh-tokeny przedłużają sesję). |
| MCP rate limit | Maksymalna liczba żądań MCP na minutę, na connector. |
| IP allowlist | Opcjonalna lista CIDR. Pusta = zezwól na wszystkie. Pamiętaj, że claude.ai łączy się z adresów IP chmury Anthropic. |
| Extra redirect hosts | Dodatkowe hosty redirect OAuth akceptowane przy rejestracji. claude.ai / claude.com i localhost są zawsze dozwolone. |
| Audit-log retention | Przez ile dni przechowywać wpisy audytu przed automatycznym czyszczeniem. |
| Remove all data on uninstall | Gdy włączone, usunięcie wtyczki kasuje jej tabele, opcje i uprawnienie. |
Wielu użytkowników i wiele instancji
Ponieważ każdy token jest powiązany z użytkownikiem WordPressa, możesz podłączyć wielu agentów naraz o różnym zasięgu:
- Podłącz Claude Desktop jako redaktora do codziennej pracy z treścią oraz Claude Code jako administratora do utrzymania witryny.
- Daj współpracownikowi własny connector pod jego własnym kontem WordPressa — dziennik audytu przypisuje każde działanie właściwej osobie.
- Równoczesne połączenia są izolowane; sesja i uprawnienia jednego agenta nigdy nie przenikają do drugiego.
Rozwiązywanie problemów
Connector autoryzuje się, ale Claude nigdy nie wypisuje narzędzi. To prawie zawsze niezgodność adresu URL. Upewnij się, że użyłeś dokładnie tego endpointu MCP, który widnieje na ekranie Connectors, i że Twoja witryna jest dostępna przez HTTPS z poziomu klienta.
Każde żądanie pokazuje auth_fail, nawet z tokenem. Niektóre konfiguracje
Apache/nginx usuwają nagłówek Authorization, zanim dotrze do PHP. Dodaj regułę
przepisywania, aby go przekazać (ta sama poprawka, której używa się dla WordPress
application passwords).
claude.ai nie może dotrzeć do witryny. Klient webowy łączy się z chmury
Anthropic — adres localhost nie zadziała. Użyj publicznie dostępnej domeny HTTPS.
Narzędzie zwraca „forbidden”. Powiązanemu użytkownikowi WordPressa brakuje uprawnienia do tego działania. Autoryzuj jako użytkownik z odpowiednią rolą albo nadaj uprawnienie.
Narzędzie destrukcyjne odmawia uruchomienia. Potrzebuje "confirm": true w
żądaniu (albo włącz Trust connectors). Poproś Claude, żeby spróbował ponownie z
potwierdzeniem.
Witryna pokazała biały ekran po aktywacji obok innej wtyczki. Wyczyść PHP-opcache (lub zrestartuj PHP) raz po aktywacji, jeśli współdzielony loader wtyczki siostrzanej został zbuforowany w niespójnym stanie.
Odinstalowanie
Dezaktywacja zatrzymuje serwer i zaplanowane zadania. Usunięcie wtyczki kasuje jej
kod; pozostawia Twoje dane na miejscu, chyba że włączyłeś Remove all data on
uninstall w Settings — wtedy jej tabele, opcje i uprawnienie manage_agent_pilot
zostają skasowane.