Przewodnik administratora: konfiguracja integracji SharePoint
Ten przewodnik krok po kroku pokazuje, jak administrator organizacji włącza integrację SharePoint w AnyLawyer. Integracja działa w oparciu o Microsoft Agent 365 SharePoint MCP — bezpieczny, oficjalny mechanizm Microsoftu, dzięki któremu AI może przeszukiwać witryny i biblioteki dokumentów SharePoint z uprawnieniami zalogowanego użytkownika (użytkownik widzi w AnyLawyer tylko to, co widziałby w SharePoint).
Większość pracy odbywa się po stronie Microsoft Entra (dawniej Azure Active Directory). Konfigurację wykonujesz raz dla całej organizacji; zajmuje około 20–30 minut.
Jak to działa?
- Administrator globalny Microsoft 365 jednorazowo aktywuje w tenancie usługę Agent 365 Tools (skrypt PowerShell od Microsoftu).
- Administrator rejestruje aplikację w Microsoft Entra i nadaje jej uprawnienie do serwera SharePoint MCP.
- Dane aplikacji (Tenant ID, Client ID, Client Secret, Scope) wkleja się w AnyLawyer.
- Od tej pory każdy użytkownik łączy swoje konto Microsoft jednym kliknięciem, a AI może przeszukiwać SharePoint w jego imieniu — wyłącznie do odczytu.
Czego potrzebujesz?
- Roli Administratora w organizacji AnyLawyer.
- Dostępu do Microsoft Entra admin center z uprawnieniami do rejestrowania aplikacji.
- Jednorazowo: osoby z rolą Global Administrator w Waszym tenancie Microsoft 365 (Krok 2) oraz komputera z PowerShell.
Nie widzisz sekcji „SharePoint MCP" w AnyLawyer? Funkcja SharePoint jest włączana dla organizacji przez zespół AnyLawyer. Skontaktuj się z nami, zanim zaczniesz konfigurację.
Krok 1: Otwórz stronę konfiguracji w AnyLawyer i skopiuj Redirect URI
- Zaloguj się do AnyLawyer jako administrator.
- W menu bocznym kliknij Integracje → OneDrive (w wersji angielskiej interfejsu: Integrations → OneDrive). Na tej stronie znajdują się obie integracje Microsoft: karta OneDrive oraz karta SharePoint MCP.
- Przewiń do karty SharePoint MCP. Znajdziesz tam wbudowaną ściągawkę z krokami oraz niebieską ramkę z adresem SharePoint MCP Redirect URI, np.
https://anylawyer.com/api/sharepoint-mcp/callback. - Skopiuj ten adres — wkleisz go w Microsoft Entra w Kroku 6. Musi być identyczny znak w znak.

Krok 2 (jednorazowy, Global Administrator): Aktywuj Agent 365 Tools w tenancie
Zanim jakakolwiek aplikacja będzie mogła korzystać z serwera SharePoint MCP, w Waszym tenancie musi istnieć tzw. service principal usługi Agent 365 Tools. Tworzy go oficjalny skrypt Microsoftu — wystarczy uruchomić go raz na cały tenant.
- Poproś osobę z rolą Global Administrator o wykonanie tego kroku.
- Pobierz skrypt Microsoftu: New-Agent365ToolsServicePrincipalProdPublic.ps1.
- Uruchom go w PowerShell zgodnie z instrukcją w repozytorium i zaloguj się kontem Global Administratora, gdy skrypt o to poprosi.
- Po pomyślnym wykonaniu skryptu w tenancie pojawi się aplikacja usługowa „Agent 365 Tools" — dzięki temu w Kroku 8 będzie można nadać uprawnienie.
Więcej informacji: dokumentacja Microsoft SharePoint MCP.

📸 Zrzut ekranu do zrobienia: Okno PowerShell po pomyślnym wykonaniu skryptu
New-Agent365ToolsServicePrincipalProdPublic.ps1(komunikat o utworzeniu service principala). Zamaż identyfikatory tenantu i konta.
Krok 3: Skopiuj Tenant ID
- Otwórz entra.microsoft.com i zaloguj się.
- W menu przejdź do Entra ID → Overview (Przegląd).
- W sekcji „Basic information" znajdź pole Tenant ID — to identyfikator w formacie
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. - Kliknij ikonę kopiowania obok wartości i zachowaj ją — wkleisz ją do pola SharePoint MCP Tenant ID w AnyLawyer.

Krok 4: Utwórz rejestrację aplikacji (App registration)
- W Microsoft Entra przejdź do Entra ID → App registrations (Rejestracje aplikacji).
- Kliknij + New registration.
- W polu Name wpisz np.
AnyLawyer SharePoint. - W sekcji Supported account types zostaw domyślną opcję z listy rozwijanej: Single tenant only („Accounts in this organizational directory only").
- Sekcję Redirect URI (optional) na razie pomiń — dodamy ją za chwilę w Kroku 6.
- Kliknij Register.
Szczegółowa instrukcja Microsoftu: rejestrowanie aplikacji w Microsoft Entra.

Krok 5: Skopiuj Application (client) ID
- Po utworzeniu aplikacji zostaniesz przeniesiony na jej stronę Overview.
- Znajdź pole Application (client) ID i skopiuj jego wartość.
- To będzie SharePoint MCP Client ID w AnyLawyer.
⚠️ Nie pomyl go z „Object ID", które wygląda podobnie i jest tuż obok. Potrzebujesz Application (client) ID.

Krok 6: Dodaj Redirect URI
- W menu aplikacji (lewa kolumna) kliknij Authentication (może być oznaczone dopiskiem „Preview").
- Na zakładce Redirect URI configuration kliknij Add Redirect URI.
- W panelu „Select a platform to add redirect URI" wybierz kafelek Web (kliknij Select).
- W polu Redirect URI wklej adres skopiowany z AnyLawyer w Kroku 1, np.:
https://anylawyer.com/api/sharepoint-mcp/callback - Pozostałe opcje zostaw bez zmian i kliknij Configure. Adres pojawi się na liście w sekcji „Platform Type: Web".
Jeśli Twoja wersja Entra pokazuje starszy widok Authentication, analogiczna ścieżka to: + Add a platform → Web → wklej URI → Configure.
⚠️ Adres musi być identyczny znak w znak z tym pokazanym w AnyLawyer — to najczęstsze źródło błędów.

Krok 7: Utwórz Client Secret
- W menu aplikacji kliknij Certificates & secrets.
- W zakładce Client secrets kliknij + New client secret.
- Wpisz opis, np.
AnyLawyer, i wybierz okres ważności — możesz zostawić domyślny Recommended: 180 days (6 months) lub wybrać dłuższy. Zanotuj datę wygaśnięcia — po tym terminie trzeba będzie wygenerować nowy sekret i zaktualizować go w AnyLawyer. - Kliknij Add.
- Skopiuj zawartość kolumny Value — to jest Twój SharePoint MCP Client Secret.
⚠️ Bardzo ważne:
- Skopiuj kolumnę Value, a nie „Secret ID"! Pomylenie tych dwóch wartości to najczęstszy błąd całej konfiguracji.
- Wartość Value jest widoczna w całości tylko bezpośrednio po utworzeniu. Jeśli opuścisz stronę bez skopiowania, usuń sekret i utwórz nowy.
- Traktuj sekret jak hasło — nie wysyłaj go e-mailem ani na czacie.

Krok 8: Nadaj uprawnienie Agent 365 Tools i udziel zgody administratora
- W menu aplikacji kliknij API permissions.
- Kliknij + Add a permission.
- Przejdź do zakładki APIs my organization uses i wyszukaj Agent Tools (w niektórych tenantach usługa nazywa się „Agent 365 Tools").
- Jeśli nie znajdujesz jej po nazwie, wklej w wyszukiwarkę identyfikator aplikacji:
ea9ffc3e-8a23-4a7d-836d-234d7c7565c1. - Jeśli nadal nie ma wyników — skrypt z Kroku 2 nie został jeszcze wykonany w Waszym tenancie.
- Jeśli nie znajdujesz jej po nazwie, wklej w wyszukiwarkę identyfikator aplikacji:
- Upewnij się, że wybrane są Delegated permissions, rozwiń grupę McpServers, zaznacz uprawnienie McpServers.OneDriveSharepoint.All („OneDrive & SharePoint MCP Server All") i kliknij Add permissions. Możesz też wpisać
OneDriveSharepointw filtr uprawnień, żeby szybko je znaleźć. - Wróciwszy na listę uprawnień, kliknij Grant admin consent for [nazwa organizacji] i potwierdź przyciskiem Yes. W kolumnie „Status" przy uprawnieniu powinien pojawić się zielony znacznik „Granted for …". Zrób to nawet, jeśli kolumna „Admin consent required" pokazuje „No" — dzięki temu użytkownicy nie zobaczą dodatkowych monitów o zgodę.
Wartość scope do AnyLawyer (Krok 9) ma postać api://<ID aplikacji Agent 365 Tools>/McpServers.OneDriveSharepoint.All. W polu SharePoint MCP OAuth Scope w AnyLawyer jest już podpowiedziana wartość domyślna:
api://ea9ffc3e-8a23-4a7d-836d-234d7c7565c1/McpServers.OneDriveSharepoint.All
Jeśli identyfikator aplikacji Agent 365 Tools w Waszym tenancie jest taki sam (standardowa instalacja skryptem Microsoftu), pozostaw wartość domyślną.
Wskazówka: pełny „Application ID URI" usługi Agent Tools (widoczny w nagłówku panelu „Request API permissions") może mieć dłuższą postać z prefiksem
api://auth-…. Jeśli po zapisaniu konfiguracji łączenie konta zwraca błąd o nieprawidłowym zakresie (scope), użyj pełnego URI z tego nagłówka +/McpServers.OneDriveSharepoint.All.

Krok 9: Wklej wszystko w AnyLawyer
-
Wróć do AnyLawyer: Integracje → OneDrive, karta SharePoint MCP.
-
Wypełnij pola:
Pole w AnyLawyer Skąd wziąć wartość SharePoint MCP Tenant ID Krok 3 — Entra ID → Overview → Tenant ID SharePoint MCP Client ID Krok 5 — Overview aplikacji → Application (client) ID SharePoint MCP Client Secret Krok 7 — kolumna Value sekretu SharePoint MCP OAuth Scope Krok 8 — zostaw domyślną, chyba że macie niestandardową instalację -
Kliknij Zapisz ustawienia SharePoint MCP.
-
Status karty powinien zmienić się na zielony: „SharePoint MCP OAuth configured".

Krok 10: Sprawdź, czy działa
- Po zapisaniu konfiguracji na tej samej karcie pojawi się sekcja łączenia konta SharePoint. Kliknij Połącz.
- Zostaniesz przekierowany na stronę logowania Microsoft — zaloguj się kontem firmowym i zaakceptuj uprawnienia.
- Po powrocie do AnyLawyer zobaczysz zielony wskaźnik połączenia.
- Otwórz projekt i zadaj AI pytanie o dokument, który znajduje się w SharePoint — AI powinno móc go wyszukać.
Od tej chwili każdy użytkownik łączy swoje konto samodzielnie. AI widzi w SharePoint dokładnie to, co dany użytkownik — uprawnienia witryn i bibliotek są w pełni respektowane.

📸 Zrzut ekranu do zrobienia: Okno logowania/zgody Microsoft („AnyLawyer SharePoint requests permissions…") z listą uprawnień. Kadr: całe okno z przyciskiem Accept. Zamaż adres e-mail użytkownika.
A co z OneDrive?
Karta OneDrive na tej samej stronie to osobna, prostsza integracja (przeszukiwanie prywatnego OneDrive użytkownika). Konfiguruje się ją bardzo podobnie — możesz nawet użyć tej samej rejestracji aplikacji z Kroku 4:
- W Authentication dodaj drugi redirect URI:
https://…/api/onedrive/callback(dokładny adres pokazuje karta OneDrive w AnyLawyer). - W API permissions dodaj uprawnienia delegowane Microsoft Graph:
Files.Read.AlliUser.Read. Jeśli przy łączeniu konta pojawi się komunikat o wymaganej zgodzie administratora, kliknij „Grant admin consent" tak jak w Kroku 8. - Wklej Client ID i Client Secret w karcie OneDrive i kliknij Zapisz ustawienia OneDrive.
Rozwiązywanie problemów
Błąd AADSTS50011 (redirect URI mismatch).
Adres w Authentication aplikacji nie jest identyczny z tym pokazanym w AnyLawyer. Porównaj znak po znaku — protokół https://, pełna ścieżka /api/sharepoint-mcp/callback, brak ukośnika na końcu.
Błąd AADSTS65001 / komunikat „Need admin approval".
Nie udzielono zgody administratora na uprawnienie. Wróć do Kroku 8 i kliknij Grant admin consent.
Błąd AADSTS7000215 (invalid client secret).
Najczęściej oznacza, że zamiast kolumny Value skopiowano „Secret ID" (Krok 7) — utwórz nowy sekret i wklej jego Value. Może też oznaczać, że sekret wygasł.
Na liście „APIs my organization uses" nie ma „Agent 365 Tools".
Usługa może być widoczna pod krótszą nazwą Agent Tools — wyszukaj „Agent" albo wklej identyfikator ea9ffc3e-8a23-4a7d-836d-234d7c7565c1. Jeśli nadal brak wyników, skrypt z Kroku 2 nie został wykonany w tym tenancie (albo został wykonany w innym) — poproś Global Administratora o jego uruchomienie.
Przycisk „Połącz" nie pojawia się u użytkowników. Sprawdź, czy status karty SharePoint MCP jest zielony oraz czy funkcja SharePoint jest włączona dla organizacji przez zespół AnyLawyer.
Sekret wygasł (użytkownicy nagle nie mogą się połączyć). Utwórz nowy client secret (Krok 7), wklej jego Value w AnyLawyer i zapisz. Ustaw przypomnienie w kalendarzu na ~2 tygodnie przed datą wygaśnięcia.
Bezpieczeństwo
- Integracja działa w trybie tylko do odczytu — AI nie może modyfikować ani usuwać plików w SharePoint.
- AI działa z uprawnieniami zalogowanego użytkownika (uprawnienia delegowane) — nikt nie zobaczy dokumentów, do których nie ma dostępu w SharePoint.
- Tokeny są przechowywane w zaszyfrowanej bazie, oddzielnie dla każdego użytkownika.
- Dokumenty nie są kopiowane na serwery AnyLawyer — są odczytywane na żądanie.
- Użytkownik może w każdej chwili kliknąć Rozłącz, co usuwa jego tokeny.