Skip to Content

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.

Agent Pilot OAuth consent screen
Ekran zgody: zanim jakiekolwiek połączenie zadziała, administrator loguje się i zatwierdza dokładnie to, co agent może robić. Agent dziedziczy uprawnienia tego użytkownika — nigdy więcej.

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_post wykonuje 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ędziwp_list_posts, wp_save_post, wc_list_orders i 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

KomponentZalecane
WordPress5.8 lub nowszy (testowane do 7.0)
PHP8.0 lub nowszy
WooCommerce7.0+ (opcjonalnie — narzędzia Woo pojawiają się tylko, gdy jest aktywne)
Chatbot Pilotopcjonalnie — narzędzia bazy wiedzy pojawiają się tylko, gdy jest aktywny
HTTPSWymagane dla claude.ai w przeglądarce; zalecane wszędzie
Salts WordPressaUnikalne 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

  1. Otwórz Wtyczki → Dodaj nową → Wyślij wtyczkę w panelu WordPressa i wgraj plik ZIP Agent Pilot.
  2. Aktywuj Agent Pilot. Przy aktywacji tworzy swoje tabele w bazie danych, nadaje administratorom uprawnienie manage_agent_pilot i automatycznie generuje klucze podpisujące OAuth.
  3. Otwórz Agent Pilot → Connectors. Skopiuj adres URL endpointu MCP pokazany na górze — to adres, który podajesz Claude.
  4. 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.

Agent Pilot Connectors admin screen
Ekran Connectors — dane połączenia na górze, następnie zarejestrowane connectory, aktywne tokeny dostępu (po jednym na użytkownika/połączenie), rotacja kluczy oraz dziennik audytu na żywo z ostatnią aktywnością.

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/mcp

Claude 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ędzieCo robi
wp_get_site_infoNazwa witryny, adresy URL, wersje, aktywny motyw, status WooCommerce, liczniki treści
wp_get_site_contextMotyw, paleta kolorów, typografia, wzorce bloków i ostatni wpis — żeby generowana treść pasowała do Twojego stylu
wp_list_postsWyszukuj i wypisuj wpisy, strony i dowolny własny typ treści
wp_get_postPobierz jeden wpis/stronę z pełną treścią i metadanymi
wp_list_termsWypisz terminy taksonomii (kategorie, tagi, kategorie produktów…)
wc_list_products / wc_get_productWyszukuj i czytaj produkty WooCommerce
wc_list_orders / wc_get_orderWyszukuj i czytaj zamówienia z pozycjami
wc_list_customersWyszukuj 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ędzieCo robi
wp_save_postUtwórz nowy wpis/stronę/CPT lub w pełni zaktualizuj istniejący
wp_replace_in_postPrecyzyjne znajdź i zamień wewnątrz strony — bezpieczny sposób na poprawienie literówki lub linii na stronie page-buildera (patrz niżej)
wp_delete_postPrzenieś wpis do kosza lub usuń go trwale (wymagane confirm)
wp_upload_mediaPobierz obraz/plik z adresu URL do biblioteki mediów
wc_save_productUtwórz lub zaktualizuj produkt WooCommerce
wc_save_orderZaktualizuj status zamówienia lub dodaj notatkę do zamówienia
wp_commentsWypisuj i moderuj komentarze (zatwierdź, cofnij zatwierdzenie, spam, kosz)

Zarządzanie witryną (wp.manage)

Operacje administracyjne. Każda zmiana destrukcyjna wymaga potwierdzenia.

NarzędzieCo robi
wp_optionsOdczytaj lub zaktualizuj opcję WordPressa (aktualizacje wymagają confirm; sekrety wtyczek są blokowane)
wp_pluginsWypisuj, aktywuj lub dezaktywuj wtyczki (confirm)
wp_themesWypisuj zainstalowane motywy lub przełącz aktywny motyw (confirm)
wp_usersWypisuj, czytaj, twórz, aktualizuj lub usuwaj użytkowników — z zabezpieczeniami przed usunięciem samego siebie lub ostatniego administratora (confirm)
wp_maintenanceWyczyść object cache, wyczyść reguły przepisywania, usuń transients

Baza wiedzy (wp.kb)

Dostępna tylko, gdy Chatbot Pilot jest aktywny.

NarzędzieCo robi
kb_searchWyszukiwanie semantyczne (embeddings) w Twojej bazie wiedzy Chatbot Pilot
kb_statsStatystyki indeksowania: przeskanowane/zindeksowane pliki, fragmenty, ostatni przebieg
kb_reindexUruchom 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ż:

WtyczkaDodaje możliwość
Invoice PilotOdczytu faktur i wystawienia jednej z zamówienia WooCommerce
Mail PilotPrzeglądania dziennika wysyłki i wysłania e-maila przez mailer witryny
Security PilotOdczytu statusu bezpieczeństwa i dziennika ataków, blokowania lub odblokowania IP
AI SEO PilotOdczytu pól SEO wpisu oraz ustawienia jego meta opisu, słowa kluczowego i schematu
SubscriptionsPodglą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.

Ekran Tools Agent Pilot — dostęp do narzędzi per rola i per użytkownik
Ekran Tools: wybierz rolę (albo wyszukaj użytkownika), a następnie ustaw każde narzędzie lub zakres na Domyślny, Włączony lub Wyłączony. Narzędzia destrukcyjne są oznaczone, a narzędzia wniesione przez inne wtyczki Pilot pojawiają się zgrupowane pod własnymi zakresami.
  • 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_maintenance potem, 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 confirm w żą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ąceRotate 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) → wpisy tool_call w miarę pracy Claude. Nieuwierzytelnione sondy pojawiające się jako auth_fail są oczekiwane dla dowolnego publicznego endpointu.

Opis ustawień

Skonfiguruj zachowanie w Agent Pilot → Settings.

Agent Pilot settings
Ekran ustawień.
UstawienieCel
Enable MCP serverGłówny włącznik. Gdy wyłączony, endpointy OAuth i MCP zwracają 503.
Accept new connectorsZezwó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 lifetimeJak długo token dostępu jest ważny, w sekundach (refresh-tokeny przedłużają sesję).
MCP rate limitMaksymalna liczba żądań MCP na minutę, na connector.
IP allowlistOpcjonalna lista CIDR. Pusta = zezwól na wszystkie. Pamiętaj, że claude.ai łączy się z adresów IP chmury Anthropic.
Extra redirect hostsDodatkowe hosty redirect OAuth akceptowane przy rejestracji. claude.ai / claude.com i localhost są zawsze dozwolone.
Audit-log retentionPrzez ile dni przechowywać wpisy audytu przed automatycznym czyszczeniem.
Remove all data on uninstallGdy 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.

Last updated on