Folosește acest ghid dacă ești administrator al unui spațiu de lucru ChatGPT sau utilizator ChatGPT Plus ori Pro și vrei să conectezi ChatGPT la Snowflake printr-un server MCP gestionat de Snowflake.
Cea mai mare parte a configurării se face în Snowflake. După ce Snowflake este pregătit, finalizează conectarea șablonului Snowflake în ChatGPT, apoi activează pluginul Snowflake care folosește acel șablon.
OAuth integrat: Când este disponibilă pentru contul tău Snowflake și în ChatGPT, folosește aplicația parteneră ChatGPT activată de un administrator Snowflake. Autentifică-te în Snowflake folosind SSO-ul organizației tale, dacă este configurat. Nu trebuie să introduci un ID de client sau un secret de client în ChatGPT. Urmează instrucțiunile din secțiunea „OAuth integrat” de mai jos.
Client OAuth personalizat: Folosește această variantă dacă organizația ta necesită propriul client OAuth sau dacă OAuth integrat nu este disponibil. Urmează instrucțiunile din secțiunea „Client OAuth personalizat” de mai jos.
Ambele variante OAuth necesită configurarea comună a serverului MCP, permisiunile pentru obiectele utilizate și accesul la rețea descrise mai jos. Parcurge configurarea comună până la secțiunea „Introdu detaliile serverului Snowflake în ChatGPT” inclusiv, înainte de a configura OAuth.
Ce configurezi
Creezi un server MCP gestionat de Snowflake, care servește drept punct final MCP pentru ChatGPT. Serverul MCP definește:
Ce acțiuni poate folosi ChatGPT.
Ce date sau obiecte Snowflake pot accesa acele instrumente.
Ce rol Snowflake folosește fiecare utilizator pentru autorizare.
Ce bază de date, schemă și nume de server MCP din Snowflake identifică punctul final.
Apoi configurezi Snowflake - Șablon oficial în ChatGPT, folosind adresa URL completă a serverului MCP gestionat. Ecranul de configurare a șablonului poate afișa adresa URL sub forma a patru câmpuri separate:
Prefixul numelui de gazdă Snowflake.
Baza de date.
Schema.
Numele serverului MCP.
ChatGPT poate descoperi și folosi doar instrumentele expuse de serverul MCP și permise de rolul Snowflake pe care utilizatorul îl folosește pentru autorizare.
Înainte de a începe
Ai nevoie de:
Acces de administrator sau proprietar al spațiului de lucru ChatGPT ori acces la ChatGPT Plus sau Pro.
Acces la Snowflake cu drepturi de creare a obiectelor de tip server MCP și de acordare a permisiunilor.
Baza de date și schema Snowflake în care va fi găzduit serverul MCP.
O decizie privind acțiunile pe care le vei permite în ChatGPT, cum ar fi utilizarea Cortex Search, Cortex Analyst, SQL doar pentru citire sau a unei anumite proceduri ori funcții.
Un rol Snowflake cu privilegii minime, pe care utilizatorii îl vor folosi la autorizarea aplicației.
Prefixul numelui de gazdă al contului Snowflake, inclusiv orice sufix de regiune sau cloud.
Dacă accesul la contul tău Snowflake este restricționat printr-o politică de rețea sau o listă de adrese IP permise, cere unui administrator Snowflake să permită conexiunile de intrare din intervalele de adrese IP de ieșire ale aplicațiilor ChatGPT aflate în uz. Lista este dinamică și trebuie menținută la zi.
Valori de pregătit
Prefixul gazdei Snowflake: tot ce precedă .snowflakecomputing.com în adresa URL a contului Snowflake.
Bază de date: baza de date care conține serverul MCP.
Schemă: schema care conține serverul MCP.
Numele serverului MCP: numele obiectului server MCP din Snowflake.
Adresa URL completă a serverului MCP gestionat, dacă ecranul de configurare ChatGPT solicită o adresă URL.
Rol Snowflake: rolul pe care utilizatorii trebuie să îl folosească la autorizarea aplicației.
Lista de instrumente: obiectele și acțiunile Snowflake pe care vrei să le folosească ChatGPT.
Stabilește ce poate face ChatGPT
Alege doar funcționalitățile pe care vrei să le pui la dispoziție. Printre opțiunile uzuale se numără:
Căutare cu Cortex Search pentru a găsi răspunsuri în datele sau conținutul indexat din Snowflake.
Întrebări și răspunsuri cu Cortex Analyst printr-o vizualizare semantică aprobată.
SQL doar pentru citire, pentru acces controlat la interogări.
Un agent Snowflake, o procedură stocată sau o funcție UDF pentru un anumit flux de lucru.
Dacă activezi SQL, păstrează-l în modul doar pentru citire, cu excepția cazului în care organizația ta a analizat și a aprobat accesul de scriere.
Deschide o foaie de lucru Snowflake
Autentifică-te în aplicația Snowflake.
Comută la un rol care poate crea serverul MCP și acorda acces.
Accesează Spații de lucru.

Creează un spațiu de lucru cu un fișier SQL.

Setează contextul spațiului de lucru la baza de date și schema în care va fi creat serverul MCP.

Creează serverul MCP Snowflake
În Snowflake, autentifică-te cu un rol care poate crea serverul MCP și acorda acces. Deschide o foaie de lucru în baza de date și schema în care trebuie creat serverul MCP.
Execută o instrucțiune ca în exemplul următor. Înlocuiește numele cu cele ale bazei de date, schemei, serviciilor, vizualizărilor, depozitului de calcul și serverului tău Snowflake.
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: "revenue-analyst" type: "CORTEX_ANALYST_MESSAGE" identifier: "CHATGPT_APPS.TOOLS.REVENUE_SEMANTIC_VIEW" title: "Revenue Analyst" description: "Answer revenue questions using the approved semantic view." - 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" $$;

Numele instrumentelor și obiectele Snowflake din această instrucțiune sunt exemple:
support-searchpune la dispoziție serviciul Cortex Search specificat.revenue-analystpune la dispoziție vizualizarea semantică specificată. Adaugă instrumente pentru alte vizualizări, după cum este necesar.sql-readonlypune la dispoziție SQL doar pentru citire, folosind depozitul de calcul specificat.
Folosește nume stabile și descriptive pentru instrumente, astfel încât ChatGPT să poată alege instrumentul potrivit. Crearea serverului MCP nu acordă automat acces la obiectele Snowflake utilizate.
Pentru opțiuni suplimentare ale specificației, consultă: Crearea unui server MCP gestionat de Snowflake.
Acordă permisiunile Snowflake potrivite
Alege rolul Snowflake pe care utilizatorii îl vor folosi pentru autorizare, apoi acordă-i acces la:
Baza de date și schema.
Serverul MCP.
Fiecare obiect utilizat de instrumente, cum ar fi un serviciu de căutare, o vizualizare semantică sau un depozit de calcul.
Exemplu:
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 SELECT ON SEMANTIC VIEW CHATGPT_APPS.TOOLS.REVENUE_SEMANTIC_VIEW TO ROLE CHATGPT_CONNECTOR_ROLE;GRANT USAGE ON WAREHOUSE CHATGPT_WH TO ROLE CHATGPT_CONNECTOR_ROLE;
Dacă serverul MCP pune la dispoziție o funcție UDF, o procedură stocată sau un agent Cortex, acordă permisiunile necesare și pentru acel obiect.
Verifică dacă Snowflake este pregătit
Execută:
SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;
Apoi execută:
DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;
Verifică următoarele:
Serverul există în baza de date și schema prevăzute.
Lista de instrumente este cea dorită.
Valoarea
identifiera fiecărui instrument indică obiectul Snowflake corect.Rolul folosit pentru conectare are permisiunea
USAGEpentru serverul MCP.Rolul folosit pentru conectare are permisiunile necesare pentru fiecare obiect utilizat.
Introdu detaliile serverului Snowflake în ChatGPT
Pentru configurarea unui spațiu de lucru, deschide admin.openai.com, selectează spațiul de lucru ChatGPT dorit și deschide secțiunea Pluginuri. Pentru navigarea în spațiul de lucru și accesul la aplicațiile vechi, consultă Controale de administrare, securitate și conformitate pentru pluginuri și aplicații.
În ChatGPT, comută la contul sau spațiul de lucru în care trebuie să fie disponibilă aplicația.
Accesează Setări > Pluginuri pentru o configurare personală sau Consola de administrare > Pluginuri, ca administrator, pentru configurarea unui spațiu de lucru.
Caută Snowflake.
Activează Snowflake - Șablon oficial.
Deschide Snowflake - Șablon oficial, introdu un nume clar pentru conexiune și selectează Conectează.
Introdu adresa URL completă a serverului MCP gestionat:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
Exemplu:
https://myorg-myaccount.azure.snowflakecomputing.com/api/v2/databases/CHATGPT_APPS/schemas/TOOLS/mcp-servers/CHATGPT_SNOWFLAKE_MCP

Dacă ecranul de configurare afișează configurația Snowflake în câmpuri separate, folosește aceleași valori din adresa URL:
Prefixul gazdei Snowflake
Folosește tot ce precedă .snowflakecomputing.com în adresa URL a contului tău Snowflake, inclusiv orice sufix de regiune sau cloud.
De exemplu, dacă adresa URL a contului începe cu:
https://myorg-myaccount.azure.snowflakecomputing.com
Prefixul gazdei este:
myorg-myaccount.azure
Bază de date
Introdu baza de date care conține serverul MCP, de exemplu:
CHATGPT_APPS
Schemă
Introdu schema care conține serverul MCP, de exemplu:
TOOLS
Numele serverului MCP
Introdu numele obiectului server MCP din Snowflake, de exemplu:
CHATGPT_SNOWFLAKE_MCP
Configurează OAuth
Alege varianta OAuth disponibilă pentru contul tău și care îndeplinește cerințele organizației tale. Ambele variante folosesc configurarea comună a serverului MCP de mai sus, precum și testele de conectare și controalele de acces de mai jos.
În oricare dintre variantele OAuth, când folosești session:role:all, Snowflake utilizează rolul implicit al fiecărui utilizator. Rolul implicit trebuie să figureze în lista de roluri permise a integrării OAuth, dacă aceasta este configurată, și nu trebuie să fie blocat. Faptul că ai un alt rol aprobat nu înseamnă că acesta este selectat automat.
OAuth integrat
Înainte de a continua, parcurge secțiunile comune de mai sus pentru a crea serverul MCP, a acorda permisiuni, a verifica serverul și a introduce detaliile acestuia în ChatGPT. Acest lucru este necesar chiar dacă ai ajuns direct la această secțiune.
Folosește această variantă doar dacă aplicația parteneră ChatGPT este disponibilă pentru contul tău Snowflake și OAuth integrat este disponibil în fereastra de configurare ChatGPT.
Roagă un administrator Snowflake să activeze integrarea parteneră ChatGPT în același cont Snowflake care găzduiește serverul MCP. Reutilizează o integrare parteneră ChatGPT existentă și activată.
În fereastra de configurare ChatGPT, folosește OAuth integrat. Nu trebuie să introduci un ID de client sau un secret de client și nici să înregistrezi o adresă URL de callback.
Continuă cu secțiunea „Conectează și gestionează Snowflake” de mai jos pentru a te autentifica, a-ți da acordul și a configura accesul. Apoi parcurge secțiunea „Testează aplicația”, inclusiv testele cu membri autorizați, fără drepturi de administrator.
Regulile descrise mai sus privind rolul implicit, lista de roluri permise și rolurile blocate se aplică și acestei variante.
Client OAuth personalizat
Înainte de a continua, parcurge secțiunile comune de mai sus pentru a crea serverul MCP, a acorda permisiuni, a verifica serverul și a introduce detaliile acestuia în ChatGPT. Acest lucru este necesar chiar dacă ai ajuns direct la această secțiune.
Pentru un client OAuth personalizat, ai nevoie de un ID de client și un secret de client din Snowflake. Regulile descrise mai sus privind rolul implicit, lista de roluri permise și rolurile blocate se aplică și acestei variante.
În fereastra de configurare ChatGPT, selectează Setări OAuth avansate > Client OAuth definit de utilizator și copiază exact adresa URL de callback afișată în ChatGPT.
Creează o integrare de securitate OAuth personalizată cu
OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'șiOAUTH_REDIRECT_URIsetat exact la acea adresă URL de callback.Execută următoarea instrucțiune în Snowflake, folosind numele integrării scris cu majuscule:
SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('YOUR_INTEGRATION_NAME');Din rezultatul JSON, lipește valoarea
oauth_client_idîn ID-ul clientului OAuth și valoareaoauth_client_secretîn Secretul clientului OAuth din ChatGPT.Setează Metoda de autentificare la punctul final pentru tokenuri la
client_secret_basic.
După ce introduci datele de autentificare ale clientului personalizat, continuă cu secțiunile „Conectează și gestionează Snowflake” și „Testează aplicația” de mai jos.
Conectează și gestionează Snowflake
Pentru oricare dintre cele două variante OAuth, în aceeași fereastră de configurare din ChatGPT, selectează Continuă, conectează-te la Snowflake și autorizează conexiunea. Poți folosi SSO-ul organizației tale, dacă este configurat.
Pentru configurarea unui spațiu de lucru, verifică dacă sunt activate atât Snowflake, cât și Snowflake - Șablon oficial. În Enterprise și Edu, configurează politica de instalare a pluginului și setarea Accesul utilizatorilor pentru fiecare aplicație inclusă, în funcție de rolurile atribuite membrilor sau grupurilor vizate. În Business, gestionează politica de instalare a pluginului și disponibilitatea aplicațiilor în întregul spațiu de lucru.
Administratorii spațiului de lucru au responsabilitatea de a verifica setarea Controlul acțiunilor pentru instrumentele expuse.
Administratorii spațiului de lucru au responsabilitatea de a verifica setarea Permisiunile aplicației pentru a stabili când le cere ChatGPT acordul membrilor înainte de a folosi aplicația.
Aceste permisiuni ale aplicației se aplică în conversațiile ChatGPT. Agenții spațiului de lucru folosesc setări individuale, definite de creatorul fiecărui agent, pentru a determina ce acțiuni ale aplicației sunt disponibile și când li se cere utilizatorilor finali să le aprobe. Pentru detalii despre comportamentul agenților, consultă: Agenții spațiului de lucru ChatGPT pentru Enterprise și Business.
Testează aplicația
Deschide o conversație, selectează Snowflake și testează conexiunea.
Verifică dacă ChatGPT descoperă instrumentele pe care le-ai configurat.
Execută mai întâi o acțiune de citire cu risc scăzut, cum ar fi o căutare sau o interogare doar pentru citire a datelor aprobate.
Verifică dacă permisiunile Snowflake împiedică accesul în afara rolului și obiectelor aprobate.
Pentru configurarea unui spațiu de lucru, testează cu membri autorizați, fără drepturi de administrator, care au roluri implicite Snowflake diferite. Conectarea reușită a unui administrator nu confirmă că fiecare membru se poate conecta.
Pentru administratorii spațiului de lucru, activarea doar a Snowflake nu este suficientă. Dacă Snowflake - Șablon oficial nu a fost activat și conectat, pluginul poate apărea ca dezactivat pentru membri.
Adresa URL a serverului MCP și funcționarea OAuth
ChatGPT se conectează la adresa URL completă a serverului MCP gestionat de Snowflake:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
ChatGPT folosește prefixul gazdei Snowflake din acea adresă URL pentru a determina aceste puncte finale OAuth Snowflake:
Autorizare:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/authorizeToken:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/token-request
Nu lipi o adresă URL Snowsight, doar adresa URL rădăcină a contului Snowflake sau o adresă URL cu segmente suplimentare de cale. Adresa URL MCP trebuie să includă /api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server} și să corespundă exact obiectelor tale Snowflake.
Depanare
Snowflake este activat pentru un administrator, dar dezactivat pentru un membru
Verifică dacă atât Snowflake, cât și Snowflake - Șablon oficial sunt activate în Consola de administrare > Pluginuri.
Deschide Snowflake - Șablon oficial și parcurge fluxul Conectează. Activarea șablonului fără conectarea lui nu este suficientă.
Deschide Snowflake și verifică dacă șablonul apare ca aplicație necesară pentru acesta.
Verifică dacă rolul sau grupul membrului afectat este permis de politica de instalare a pluginurilor.
Serverul MCP nu a fost găsit
Verifică din nou adresa URL completă a serverului MCP sau cele patru câmpuri ale șablonului, dacă ecranul de configurare le solicită.
Verifică dacă serverul MCP există exact în acea bază de date și schemă.
Nu apare niciun instrument în ChatGPT
Verifică dacă specificația serverului MCP include instrumente.
Verifică dacă rolul are permisiunea
USAGEpentru serverul MCP.
Un instrument apare, dar nu funcționează când este folosit
Verifică dacă rolul are permisiunea necesară pentru obiectul Snowflake utilizat, cum ar fi serviciul de căutare, vizualizarea semantică, depozitul de calcul, procedura sau funcția UDF.
Instrumentul SQL nu funcționează
Verifică dacă numele depozitului de calcul este corect și dacă acesta rulează.
Verifică dacă rolul are permisiunea
USAGEpentru depozitul de calcul.Verifică dacă este setat
read_only: trueatunci când dorești acces doar pentru citire.
Rolul ALL solicitat a fost blocat explicit
Roagă administratorul Snowflake să compare rolul tău implicit cu rolurile permise și blocate ale integrării OAuth. Faptul că ai un alt rol permis nu înseamnă că acesta este selectat automat. Dacă este cazul, schimbă rolul implicit cu un rol aprobat și reconectează-te. Schimbarea rolului implicit afectează și sesiunile tale Snowflake din afara ChatGPT.
Autorizarea eșuează
Verifică dacă utilizatorul se poate autentifica în Snowflake.
Când folosești
session:role:all, verifică dacă rolul implicit al utilizatorului este permis de integrarea OAuth.Verifică dacă configurația folosește fluxul OAuth pentru MCP gestionat de Snowflake.
Dacă folosești un client OAuth personalizat, verifică dacă ID-ul clientului și Secretul clientului corespund integrării OAuth Snowflake și dacă URI-ul de redirecționare al acesteia corespunde exact adresei URL de callback afișate în ChatGPT.
Dacă folosești OAuth integrat, roagă un administrator Snowflake să verifice dacă integrarea parteneră ChatGPT este disponibilă și activată în contul care găzduiește serverul MCP.
Politica de rețea sau lista de adrese IP permise din Snowflake blochează aplicația
Cere unui administrator Snowflake să actualizeze politica de rețea sau regulile de acces din Snowflake.
Permite conexiunile de intrare din intervalele de adrese IP de ieșire ale aplicațiilor ChatGPT aflate în uz.
Configurează această listă de adrese IP permise în Snowflake. Aceasta este separată de lista de adrese IP permise a spațiului de lucru ChatGPT.
Automatizează actualizările pe baza fișierului JSON publicat, atunci când este posibil, deoarece intervalele se pot schimba.
Problemă de conectare legată de numele gazdei
Folosește prefixul corect al gazdei Snowflake. Numele gazdelor Snowflake care conțin linii de subliniere pot cauza probleme; folosește de preferință cratime.
