Skorzystaj z tego przewodnika, jeśli jesteś administratorem przestrzeni roboczej ChatGPT i konfigurujesz szablon aplikacji Snowflake dla swojej organizacji. Szablon nie jest gotową aplikacją, z której korzystają członkowie. To proces konfiguracji, który tworzy wersję roboczą aplikacji właściwą dla przestrzeni roboczej po podaniu wymaganej konfiguracji Snowflake.
W przypadku Snowflake większość konfiguracji odbywa się w Snowflake. Tworzysz serwer MCP zarządzany przez Snowflake, przyznajesz odpowiedniej roli dostęp do serwera MCP i jego obiektów bazowych, a następnie wprowadzasz adres URL zarządzanego serwera MCP lub jego pola składowe w procesie konfiguracji szablonu ChatGPT. Gdy ChatGPT utworzy wersję roboczą aplikacji, możesz ją opublikować i zarządzać nią tak jak innymi aplikacjami przestrzeni roboczej.
Co konfigurujesz
Tworzysz w ChatGPT aplikację Snowflake właściwą dla przestrzeni roboczej. Aplikacja łączy się z serwerem MCP zarządzanym przez Snowflake, który definiuje:
Których działań, zwanych narzędziami, może używać ChatGPT.
Do których danych lub obiektów Snowflake te narzędzia mogą uzyskiwać dostęp.
Za pomocą której roli Snowflake użytkownicy powinni się autoryzować.
Która baza danych, schemat i nazwa serwera MCP Snowflake identyfikują punkt końcowy konektora.
ChatGPT może wykrywać i używać tylko tych narzędzi, które są udostępniane przez serwer MCP i dozwolone przez rolę Snowflake, za pomocą której autoryzuje się użytkownik.
Zanim zaczniesz
Potrzebujesz:
Dostępu administratora lub właściciela przestrzeni roboczej ChatGPT.
Dostępu do Snowflake umożliwiającego tworzenie obiektów serwera MCP i przyznawanie uprawnień.
Bazy danych i schematu Snowflake, w których będzie znajdować się serwer MCP.
Decyzji, co ChatGPT ma mieć pozwolenie robić, na przykład Cortex Search, Cortex Analyst, SQL tylko do odczytu albo określona procedura lub funkcja.
Roli Snowflake z minimalnymi uprawnieniami, której użytkownicy będą używać podczas autoryzowania aplikacji.
Prefiksu hosta konta Snowflake, w tym ewentualnego sufiksu regionu lub chmury.
Wartości do przygotowania
Prefiks hosta Snowflake: wszystko przed .snowflakecomputing.com w adresie URL konta Snowflake.
Baza danych: baza danych zawierająca serwer MCP.
Schemat: schemat zawierający serwer MCP.
Nazwa serwera MCP: nazwa obiektu serwera MCP Snowflake.
Pełny adres URL zarządzanego serwera MCP, jeśli ekran konfiguracji ChatGPT prosi o adres URL.
Rola Snowflake: rola, której użytkownicy powinni używać podczas autoryzowania aplikacji.
Lista narzędzi: obiekty i działania Snowflake, których ma używać ChatGPT.
Zdecyduj, co może robić ChatGPT
Wybierz tylko te funkcje, które chcesz udostępnić. Typowe opcje obejmują:
Wyszukiwanie za pomocą Cortex Search w celu znajdowania odpowiedzi w zindeksowanych danych lub treściach Snowflake.
Pytania i odpowiedzi z Cortex Analyst przez zatwierdzony widok semantyczny.
SQL tylko do odczytu zapewniający kontrolowany dostęp do zapytań.
Agent Snowflake, procedura składowana lub UDF dla określonych przepływów pracy.
Jeśli włączysz SQL, pozostaw go w trybie tylko do odczytu, chyba że Twoja organizacja przejrzała i zatwierdziła dostęp do zapisu.
Utwórz serwer MCP Snowflake
W Snowflake zaloguj się z rolą, która może utworzyć serwer MCP i przyznać dostęp. Otwórz arkusz w bazie danych i schemacie, w których ma zostać utworzony serwer MCP.
Utwórz serwer MCP, który wymienia tylko narzędzia, których powinien używać ChatGPT. Zastąp nazwy obiektów własnymi nazwami bazy danych, schematu, usług, widoków, magazynu i serwera Snowflake.
Przykład:
CREATE MCP SERVER CHATGPT_SNOWFLAKE_MCP FROM SPECIFICATION $$ tools: - name: "support-search" type: "CORTEX_SEARCH_SERVICE_QUERY" identifier: "CHATGPT_APPS.TOOLS.SUPPORT_SEARCH_SERVICE" title: "Support Search" description: "Search support content for relevant customer issues." - name: "sql-readonly" type: "SYSTEM_EXECUTE_SQL" title: "Read-only SQL" description: "Run read-only SQL queries against approved Snowflake data." config: read_only: true query_timeout: 600 warehouse: "CHATGPT_WH" $$;
Nazwy narzędzi powinny być stabilne i opisowe, aby ChatGPT mógł wybrać właściwe narzędzie. Utworzenie serwera MCP nie przyznaje automatycznie dostępu do bazowych obiektów Snowflake.
Przyznaj odpowiednie uprawnienia Snowflake
Wybierz rolę Snowflake, za pomocą której użytkownicy będą się autoryzować, a następnie przyznaj tej roli dostęp do bazy danych, schematu, serwera MCP i każdego obiektu bazowego używanego przez narzędzia.
Przykład:
GRANT USAGE ON DATABASE CHATGPT_APPS TO ROLE CHATGPT_CONNECTOR_ROLE;GRANT USAGE ON SCHEMA CHATGPT_APPS.TOOLS TO ROLE CHATGPT_CONNECTOR_ROLE;GRANT USAGE ON MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP TO ROLE CHATGPT_CONNECTOR_ROLE;GRANT USAGE ON CORTEX SEARCH SERVICE CHATGPT_APPS.TOOLS.SUPPORT_SEARCH_SERVICE TO ROLE CHATGPT_CONNECTOR_ROLE;GRANT USAGE ON WAREHOUSE CHATGPT_WH TO ROLE CHATGPT_CONNECTOR_ROLE;
Jeśli serwer MCP udostępnia widok semantyczny, UDF, procedurę składowaną lub Cortex Agent, przyznaj również wymagane uprawnienia do tych obiektów.
Sprawdź, czy Snowflake jest gotowy
Uruchom:
SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;
Następnie uruchom:
DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;
Potwierdź:
Serwer istnieje w oczekiwanej bazie danych i schemacie.
Lista narzędzi jest zgodna z Twoimi założeniami.
Każdy identyfikator narzędzia wskazuje właściwy obiekt Snowflake.
Rola łącząca ma uprawnienie USAGE do serwera MCP.
Rola łącząca ma wymagane uprawnienia do każdego obiektu bazowego.
Rozpocznij konfigurację szablonu w ChatGPT
W ChatGPT przełącz się do przestrzeni roboczej, w której aplikacja ma być dostępna.
Otwórz Ustawienia przestrzeni roboczej > Aplikacje.
Wybierz Katalog.
Wyszukaj Snowflake.
Wybierz szablon aplikacji Snowflake i rozpocznij konfigurację.
Wprowadź jasną nazwę i opis aplikacji, na przykład Snowflake lub Snowflake - Analytics.
Wprowadź szczegóły zarządzanego serwera MCP wymagane przez proces konfiguracji.
Jeśli ekran konfiguracji prosi o pełny adres URL zarządzanego serwera MCP, użyj tego formatu:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
Jeśli ekran konfiguracji prosi o osobne pola, użyj tych samych wartości z tego adresu URL:
Prefiks hosta Snowflake.
Baza danych.
Schemat.
Nazwa serwera MCP.
Utwórz i opublikuj wersję roboczą aplikacji
Zapisz konfigurację szablonu Snowflake w ChatGPT.
Utwórz wersję roboczą aplikacji.
Przejrzyj szczegóły wersji roboczej aplikacji, ustawienia uwierzytelniania i dostępne działania.
Opublikuj wersję roboczą aplikacji, gdy będzie gotowa.
Potwierdź, że aplikacja pojawia się w Ustawienia przestrzeni roboczej > Aplikacje > Włączone.
Skonfiguruj Dostęp użytkowników dla ról, które powinny jej używać.
Przejrzyj Kontrolę działań dla udostępnionych narzędzi.
Przejrzyj Uprawnienia aplikacji, aby wybrać, kiedy ChatGPT pyta członków przed użyciem aplikacji.
Te uprawnienia aplikacji dotyczą rozmów w ChatGPT. Agenty przestrzeni roboczej używają mechanizmów kontroli dla poszczególnych agentów, ustawionych przez konstruktora agenta, aby określić, które działania aplikacji są dostępne i kiedy użytkownicy końcowi są proszeni o ich zatwierdzenie. Informacje o zachowaniu agentów znajdziesz tutaj: Agenty przestrzeni roboczej ChatGPT dla Enterprise i Business.
Przetestuj aplikację
Rozpocznij proces łączenia z ChatGPT jako dozwolony użytkownik testowy.
Zaloguj się do Snowflake i wybierz zamierzoną rolę, jeśli pojawi się monit.
Potwierdź, że ChatGPT wykrywa oczekiwane narzędzia z serwera MCP.
Najpierw uruchom działanie odczytu o niskim ryzyku, takie jak wyszukiwanie lub zapytanie tylko do odczytu na zatwierdzonych danych.
Potwierdź, że uprawnienia Snowflake uniemożliwiają dostęp poza zatwierdzoną rolą i obiektami.
Adres URL serwera MCP i działanie OAuth
ChatGPT łączy się z pełnym adresem URL serwera MCP zarządzanego przez Snowflake. ChatGPT używa prefiksu hosta Snowflake z tego adresu URL, aby rozpoznać punkty końcowe OAuth Snowflake.
Nie wklejaj adresu URL Snowsight, samego głównego adresu URL konta Snowflake ani żadnego adresu URL z dodatkowymi segmentami ścieżki. Adres URL MCP musi zawierać bazę danych, schemat i ścieżkę serwera MCP oraz musi dokładnie odpowiadać Twoim obiektom Snowflake.
Rozwiązywanie problemów
Nie znaleziono serwera MCP: ponownie sprawdź pełny adres URL serwera MCP albo osobne pola prefiksu hosta, bazy danych, schematu i serwera.
W ChatGPT nie pojawiają się żadne narzędzia: potwierdź, że specyfikacja serwera MCP zawiera narzędzia, a rola ma uprawnienie USAGE do serwera MCP.
Narzędzie pojawia się, ale kończy się niepowodzeniem podczas użycia: potwierdź, że rola ma odpowiednie uprawnienie do bazowego obiektu Snowflake.
Narzędzie SQL kończy się niepowodzeniem: potwierdź, że nazwa magazynu jest poprawna, magazyn jest dostępny, rola ma do niego uprawnienie USAGE, a read_only ma wartość true, jeśli zamierzony był dostęp tylko do odczytu.
Autoryzacja kończy się niepowodzeniem: potwierdź, że użytkownik może zalogować się do Snowflake i użyć zamierzonej roli.
Problem z połączeniem z nazwą hosta: użyj prawidłowego prefiksu hosta Snowflake. Nazwy hostów Snowflake z podkreśleniami mogą powodować problemy; preferuj łączniki.
