Podłącz klientów AI do swojego workspace
Dodaj Zanfię jako serwer MCP w Claude, Cursorze lub dowolnym kliencie obsługującym MCP i pozwól mu czytać Twój workspace oraz nim zarządzać.
Zanfia udostępnia hostowany serwer Model Context Protocol. Dodaj go do dowolnego klienta AI obsługującego MCP — Claude Code, Claude Desktop, Cursor, VS Code, Codex — a asystent dostanie typowane narzędzia do odczytu i działania w Twoim workspace: wylistuje produkty, napisze lekcje kursu, utworzy oferty, opublikuje post w Twojej społeczności, pobierze statystyki sprzedaży.
Adres serwera
Serwer działa pod adresem https://app.zanfia.com/mcp
(transport Streamable HTTP).
Uwierzytelnianie
Dwie drogi, te same narzędzia:
- OAuth (claude.ai, ChatGPT, Claude Code i inne klienty z konektorami) — dodaj
https://app.zanfia.com/mcpjako własny konektor (custom connector), a klient przeprowadzi Cię przez logowanie w przeglądarce: Zanfia pokaże ekran zgody (workspace, uprawnienia, aplikacja, która prosi o dostęp), zatwierdzasz i gotowe. Nie kopiujesz żadnego klucza. Serwer implementuje OAuth 2.1 z PKCE, dynamiczną rejestrację klientów i discovery metadanych, więc każdy zgodny ze specyfikacją klient MCP podłącza się bez konfiguracji. - Klucz API (Cursor, VS Code, Codex, skrypty) — utwórz klucz API z odpowiednim zakresem i wysyłaj go w nagłówku
Authorization: Bearer.
Dostęp do narzędzi w obu przypadkach podąża za nadanymi scope'ami — narzędzia odczytujące wymagają pasującego *:read, zapisujące *:write. Połączenie OAuth otrzymuje wszystkie scope'y, o które prosi aplikacja (domyślnie wszystkie) i pojawia się jako token z etykietą Konektor w Integracje → API, MCP i CLI; usuń go tam, aby odłączyć aplikację. Połączenie działa 90 dni, potem klient poprosi o ponowne logowanie.
Dodaj serwer w swoim kliencie
claude.ai / Claude Desktop (konektor): Settings → Connectors → Add custom connector, wklej https://app.zanfia.com/mcp, zostaw puste pola OAuth client ID i secret i kliknij Add. Kliknij Connect i zatwierdź dostęp na ekranie zgody Zanfii.
ChatGPT (konektor / Apps): Settings → Connectors → Create, wklej https://app.zanfia.com/mcp, uwierzytelnianie OAuth, i dokończ logowanie, gdy ChatGPT je otworzy. Własne konektory MCP wymagają włączonego trybu deweloperskiego w Twoim planie ChatGPT.
Claude Code (OAuth, bez klucza):
claude mcp add zanfia --transport http https://app.zanfia.com/mcp
Przy pierwszym użyciu Claude Code otworzy przeglądarkę z ekranem zgody. Z kluczem API zamiast tego:
Claude Code (klucz API):
claude mcp add zanfia --transport http https://app.zanfia.com/mcp \
--header "Authorization: Bearer YOUR_API_KEY"
Cursor / VS Code / Claude Desktop (konfiguracja MCP w JSON):
{
"mcpServers": {
"zanfia": {
"type": "http",
"url": "https://app.zanfia.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}
Codex (OpenAI Codex CLI) — dodaj do ~/.codex/config.toml (albo do projektowego .codex/config.toml), z kluczem API wyeksportowanym jako zmienna środowiskowa:
[mcp_servers.zanfia]
url = "https://app.zanfia.com/mcp"
bearer_token_env_var = "ZANFIA_API_KEY"
export ZANFIA_API_KEY="YOUR_API_KEY"
Wpisem możesz też zarządzać z terminala podkomendą codex mcp (codex mcp list, codex mcp add, …) zamiast ręcznie edytować TOML.
Dostępne narzędzia
Serwer (zanfia, wersja 0.35.0) udostępnia pełną powierzchnię Workspace API jako 416 narzędzi, pogrupowanych poniżej według obszaru. Narzędzia odczytujące wymagają odpowiedniego scope'a *:read, zapisujące *:write. Strony, ustawienia witryny i sklep podlegają pod scope pages; społeczności, wydarzenia społeczności, członkowie/role/moderacja i zgłoszenia supportowe pod communities; social media pod social; cała reszta — produkty, oferty, kursy, media, klienci, zamówienia, kampanie, e-maile, statystyki, rabaty, zespół itd. — pod products. Klucz bez danego scope'a po prostu nie widzi jego narzędzi w tools/list.
| Obszar | Narzędzia odczytujące | Narzędzia zapisujące |
|---|---|---|
| Produkty | list-products · get-product | create-product · update-product-info · update-product-status |
| Ustawienia produktu (po zakupie, plany, obrazy) | get-after-purchase · count-plan-clients | update-after-purchase · set-product-images · update-product-plans · update-client-plan · backfill-plan-community-members |
| Terminy (wydarzenia, konsultacje, usługi) | get-appointment-config | update-event · update-consultation · update-service |
| Oferty i ceny | list-checkouts · get-checkout · list-product-prices | create-checkout · update-checkout · publish-checkout · duplicate-checkout · delete-checkout · set-default-checkout · add-checkout-price · update-checkout-price · delete-checkout-price · reorder-checkout-prices |
| Order bumpy | list-order-bumps | create-order-bump · update-order-bump · delete-order-bump · attach-order-bump · detach-order-bump |
| Oferty jednorazowe (OTO) | list-oto-offers · get-oto-offer | create-oto-offer · update-oto-offer · delete-oto-offer |
| Kursy i quizy | get-course-content · get-course-lesson · list-quiz-questions · get-course-transcripts · get-lesson-video | add-course-module · update-course-module · delete-course-module · add-course-lesson · update-course-lesson · set-lesson-thumbnail · update-lesson-content · delete-course-lesson · set-course-lessons-status · reorder-course-modules · reorder-module-lessons · add-quiz-question · update-quiz-question · delete-quiz-question · reorder-quiz-questions · update-quiz-settings · update-lesson-video · generate-lesson-chapters · generate-lesson-moments · move-lesson |
| Pliki do pobrania | get-downloads-content | update-downloads-content · add-download-files · remove-download-file · reorder-download-files |
| Newslettery | list-newsletter-issues | create-newsletter-issue · save-newsletter-issue-draft · publish-newsletter-issue-draft · discard-newsletter-issue-draft · copy-newsletter-issues · update-newsletter-issue · delete-newsletter-issue · update-newsletter-settings |
| Bazy wiedzy | list-kb-articles · get-kb-article | create-kb-article · update-kb-article · delete-kb-article · add-kb-category · rename-kb-category · delete-kb-category · reorder-kb-tree |
| Biblioteka mediów | list-media · get-media · list-media-folders · get-video-transcript | update-media-details · move-media · delete-media · create-media-folder · rename-media-folder · delete-media-folder · generate-image · transcribe-video |
| Strony | list-pages · get-page · list-page-templates · list-page-revisions · get-page-generation-status · get-page-checklist | create-page · generate-page · edit-page · update-page · publish-page · delete-page · set-main-page · restore-page-revision · activate-page-automations |
| Lejki | list-funnels · get-funnel · get-funnel-stats · list-funnel-templates | create-funnel · create-funnel-from-template · create-funnel-from-pages · update-funnel · set-funnel-status · generate-funnel-step-page · delete-funnel |
| Profile marki | list-brand-profiles · get-brand-profile | create-brand-profile · update-brand-profile · delete-brand-profile · extract-brand-from-url |
| Social media | list-social-accounts · list-social-posts · get-social-post | create-social-post · schedule-social-post · publish-social-post |
| Społeczności | list-communities · list-community-channels · list-channel-posts · search-community-posts · list-post-comments · list-channel-messages · get-community-updates · get-community-settings · list-community-groups | create-community-post · update-community-post · pin-community-post · delete-community-post · create-post-comment · update-post-comment · delete-post-comment · send-channel-message · edit-channel-message · delete-channel-message · create-channel · update-channel · delete-channel · create-community-group · update-community-group · delete-community-group · move-community-node · update-community-settings |
| Wydarzenia społeczności | list-community-events | create-community-event · update-community-event · delete-community-event |
| Członkowie, role i moderacja | list-community-members · list-community-roles · get-community-moderation-queue | create-community-role · update-community-role · delete-community-role · reorder-community-roles · assign-member-roles · set-community-member-status · mute-community-member · resolve-community-moderation-report |
| Zgłoszenia supportowe | list-support-ticket-queue · list-my-support-tickets · get-support-ticket | create-support-ticket · add-support-ticket-message · update-support-ticket-status |
| Automatyzacje | list-automations · get-automation · list-automation-runs | set-automation-status · retry-automation-run · test-run-automation · create-email-automation · create-welcome-email-automation · create-owner-notification-automation · create-sms-automation · copy-automation · update-automation-info · update-automation-delay · update-automation-email-step · publish-automation · delete-automation |
| Kampanie e-mail i segmenty | list-email-campaigns · get-email-campaign · list-campaign-recipients · list-campaign-links · list-audience-segments · preview-audience-segment | create-email-campaign · update-email-campaign · send-email-campaign · cancel-email-campaign · delete-email-campaign · create-audience-segment · update-audience-segment · delete-audience-segment |
| Kampanie SMS | list-sms-campaigns · get-sms-campaign · list-sms-campaign-recipients | create-sms-campaign · update-sms-campaign · send-sms-campaign · cancel-sms-campaign · delete-sms-campaign |
| Szablony e-mail (biblioteka) | list-email-templates · get-email-template | create-email-template · update-email-template · duplicate-email-template · delete-email-template |
| Domena wysyłkowa i stopka nadawcy | get-sender-domain | update-sender-postal-address |
| E-maile systemowe i branding e-maili | list-system-emails · get-system-email · get-email-branding | update-system-email · edit-system-email-layout · reset-system-email · send-system-email-test · update-email-branding |
| Formularze zapisu | list-signup-forms · get-signup-form · list-signup-form-submissions | create-signup-form · update-signup-form · delete-signup-form |
| Opinie (testimoniale) | list-testimonials · list-testimonial-forms | create-testimonial · update-testimonial · delete-testimonial · create-testimonial-form · update-testimonial-form · delete-testimonial-form · request-testimonial |
| Klienci i zamówienia | list-clients · get-client · list-client-product-accesses · list-bundled-access-clients · list-client-notes · get-client-email-log · list-client-tags · get-client-merge-preview · list-orders · get-order · list-email-delivery-problems | create-client · update-client · change-client-email · add-client-note · import-contacts · merge-clients · grant-client-access · revoke-client-access · change-client-access-period · cancel-client-subscription · approve-manual-order · reject-manual-order · create-client-tag · update-client-tag · delete-client-tag · update-client-tags |
| Operacje masowe na klientach | — | bulk-revoke-product-access · bulk-change-access-period · bulk-revoke-filtered-access · bulk-delete-clients · delete-clients · set-clients-email-subscription · set-clients-sms-subscription |
| Rozmowy z klientami (DM) | list-client-conversations · get-client-conversation · list-client-messages | send-client-message · edit-client-message · delete-client-message · toggle-client-message-reaction · mark-client-conversation-read · send-client-broadcast |
| E-maile do klientów (1:1) | list-client-emails | create-client-email-draft · update-client-email-draft · delete-client-email-draft · send-client-email |
| Urządzenia klientów | list-client-devices | revoke-client-device · reset-client-devices |
| Subskrypcje | list-failed-subscription-payments · list-upcoming-renewals · list-ending-subscriptions | retry-subscription-payment |
| Odzyskiwanie porzuconych koszyków | preview-checkout-recovery-email | send-checkout-recovery-email |
| Statystyki | get-stats-overview · get-recurring-report · get-mrr-history · get-funnel-report · get-traffic-report · get-sessions-report · get-product-stats · get-course-analytics | — |
| Ustawienia koszyka i zgody | get-checkout-settings · list-checkout-consents | update-checkout-settings · upsert-checkout-consent |
| Integracje (klienci mailingowi · Meta CAPI · płatności · fakturowanie · SMS) | get-integrations-overview | connect-email-client · disconnect-email-client · refresh-email-client-lists · connect-meta-conversion-api · disconnect-meta-conversion-api · configure-manual-payment · disconnect-manual-payment · connect-invoices-client · disconnect-invoices-client · connect-payment-gateway · disconnect-payment-gateway · set-tpay-recurring-blik · connect-twilio · disconnect-twilio · connect-smsapi · disconnect-smsapi · refresh-smsapi-senders · set-default-smsapi-sender · set-default-sms-provider (integrations:read / integrations:write; dostawcy OAuth i bramki z danymi logowania zostają w panelu) |
| Śledzenie konwersji | list-conversion-events · get-conversion-tracking-health · list-conversion-tracking-integrations | upsert-conversion-tracking-integration · remove-conversion-tracking-integration · set-default-conversion-tracking (GA4 / GTM / TikTok / X / LinkedIn / Clarity / Hotjar; Meta tylko w panelu) |
| Rabaty | list-discounts | create-discount · update-discount · archive-discount · delete-discount · toggle-discount-visibility |
| Certyfikaty | list-certificates · list-certificate-templates · get-certificate-template | issue-certificates · revoke-certificate · reinstate-certificate · delete-certificate · resend-certificate-email · create-certificate-template · update-certificate-template · delete-certificate-template |
| Programy poleceń | list-referral-programs · get-referral-program | create-referral-program · update-referral-program · archive-referral-program · enroll-referral-participant · enroll-all-referral-clients · resolve-referral-reward · retry-referral-reward-delivery |
| Meta Ads | get-meta-ads-performance · list-meta-ad-directory · list-meta-campaigns · list-meta-ad-sets · get-meta-ad-set · list-meta-ads · get-meta-ad-creative | sync-meta-insights · update-meta-campaign · update-meta-ad-set · create-meta-ad · update-meta-ad · update-meta-ad-creative |
| Ustawienia strony | get-site-settings · verify-site-domains · diagnose-domain | update-site-general · update-site-theme · update-site-branding · update-site-main-page · update-site-privacy · update-client-area · update-site-communication · update-customer-access-policy · activate-site · update-site-slug · update-site-domains |
| Sklep | get-storefront | update-storefront |
| Dokumenty prawne | get-legal-documents | update-legal-documents |
| Zespół | list-workspace-members · list-workspace-invitations | invite-workspace-member · resend-workspace-invitation · revoke-workspace-invitation · change-workspace-member-role · remove-workspace-member |
| Ustawienia konta / workspace'u | get-workspace-settings | update-workspace-settings |
Narzędzia destrukcyjne lub nieodwracalne mówią o tym wprost w swoich opisach i proszą asystenta o potwierdzenie z Tobą — usuwanie, odbieranie dostępu, operacje masowe na klientach, wszystko, co wysyła prawdziwe e-maile (kampanie, osobiste e-maile do klientów przez send-client-email, broadcasty do klientów, e-maile odzyskiwania koszyka, zaproszenia do zespołu, testy e-maili systemowych), kampanie SMS (send-sms-campaign wysyła prawdziwe SMS-y, za które płacisz na swoim koncie u dostawcy SMS), masowe zmiany subskrypcji mailingu / SMS (zgoda marketingowa — zapisanie wymaga podania podstawy zgody), publikacja automatyzacji (publish-automation uruchamia automatyzację na żywo: od tej chwili prawdziwe e-maile, SMS-y i webhooki trafiają do prawdziwych klientów; zmiana opóźnienia lub treści e-maila w już opublikowanej automatyzacji także od razu działa na żywo), usunięcie tagu (delete-client-tag zdejmuje tag ze wszystkich klientów, a segmenty i automatyzacje, które z niego korzystają, nie są aktualizowane) oraz zmiany całej witryny, jak update-site-slug czy update-site-domains. Dobrze zachowujący się asystent zacytuje dokładny cel i poczeka na Twoją zgodę; kilka narzędzi (np. merge-clients, send-email-campaign, bulk-revoke-filtered-access) dodatkowo wymaga wcześniejszego podglądu lub policzenia zakresu, zanim zapis zostanie przyjęty. Przesyłanie plików i wideo celowo nie jest narzędziem MCP — binarne dane nie pasują do wywołań narzędzi; użyj CLI lub API do uploadu, a potem odwołuj się do id mediów z MCP.
Dopasuj zakres klucza do zadania
Asystent może zrobić wszystko, na co pozwala jego klucz. Asystentom, które tylko analizują i
podsumowują, daj klucz tylko do odczytu (products:read,communities:read
), a scope'y zapisu zarezerwuj dla asystentów, których pracę aktywnie nadzorujesz.
Członkowie społeczności
Ten sam adres akceptuje też klucze API członków społeczności (tworzone przez członka Twojej społeczności w platformie członkowskiej w Ustawienia → Deweloper). Klucz członkowski dostaje osobny, ograniczony zestaw narzędzi (serwer zanfia-member, 23 narzędzia) — MCP-owy odpowiednik Community API: listowanie swoich społeczności i kanałów, czytanie i wyszukiwanie postów, komentarzy i czatu, pisanie postów/komentarzy/wiadomości we własnym imieniu (tylko własne treści) oraz zakładanie i śledzenie własnych zgłoszeń supportowych. Żadne z powyższych narzędzi workspace nie jest dostępne dla kluczy członkowskich.
Narzędzia członkowskie do odczytu: list-my-communities · list-community-channels · list-channel-posts · search-community-posts · list-post-comments · list-channel-messages · get-community-updates · get-my-notifications · list-my-support-tickets · get-support-ticket. Narzędzia członkowskie do zapisu: create-community-post · update-community-post · delete-community-post · create-post-comment · update-post-comment · delete-post-comment · send-channel-message · edit-channel-message · delete-channel-message · mark-notifications-read · create-support-ticket · add-support-ticket-message · update-support-ticket-status.
Dla agentów obserwujących społeczność narzędzie get-community-updates (także GET /v1/communities/:communityId/updates?since=<ISO> w Community API) zwraca w jednym wywołaniu wszystko, co nowe — posty, komentarze i czat — we wszystkich kanałach dostępnych dla wywołującego: przekazuj zwrócone nextSince jako kolejne since, zamiast odpytywać każdy kanał osobno. Aby wiedzieć, kiedy ktoś mówi do Ciebie (odpowiedzi, wzmianki @, reakcje, DM), klucze członkowskie mają też get-my-notifications i mark-notifications-read — własną skrzynkę powiadomień członka, wspólną z dzwoneczkiem w platformie.
Żądania członkowskie podlegają limitom (na minutę, na członka — odpowiedź 429 zawiera Retry-After), a tworzenie treści przyjmuje UUID clientRequestId, dzięki czemu ponowienia nigdy nie duplikują posta, komentarza ani wiadomości.
Dostęp członkowski jest domyślnie wyłączony: działa tylko w społecznościach, w których twórca włączył dostęp API dla członków w ustawieniach społeczności, a wyłączenie ustawienia natychmiast blokuje już wydane klucze członkowskie.
MCP, CLI czy surowe API?
- MCP — najlepsze, gdy człowiek rozmawia z klientem AI i chce, by ten działał w workspace bezpośrednio.
- CLI — najlepsze dla agentów terminalowych, skryptów i CI; to także droga do przesyłania plików i wideo, czego MCP celowo nie robi.
- Surowe API — najlepsze dla Twoich własnych integracji i backendów.
Cała trójka to ta sama platforma z tym samym modelem uprawnień, więc możesz je swobodnie łączyć.
Czy ten artykuł był pomocny?

