Käytä tätä opasta, jos olet ChatGPT-työtilan järjestelmänvalvoja tai ChatGPT Plus- tai ChatGPT Pro -käyttäjä ja haluat yhdistää ChatGPT:n Snowflakeen Snowflaken hallinnoiman MCP-palvelimen kautta.
Suurin osa määrityksistä tehdään Snowflakessa. Kun Snowflake on valmis, viimeistele Snowflake-mallin yhteys ChatGPT:ssä ja ota sitten käyttöön mallia käyttävä Snowflake-lisäosa.
Mitä olet määrittämässä
Luot Snowflaken hallinnoiman MCP-palvelimen, joka toimii ChatGPT-yhdistimen endpointina. MCP-palvelin määrittää seuraavat asiat:
Mitä toimintoja ChatGPT voi käyttää.
Mihin Snowflake-tietoihin tai -objekteihin nämä työkalut voivat päästä.
Millä Snowflake-roolilla kukin käyttäjä valtuuttaa yhteyden.
Mikä Snowflake-tietokanta, skeema ja MCP-palvelimen nimi yksilöivät endpointin.
Määritä sitten ChatGPT:ssä Snowflake – virallinen malli käyttämällä hallinnoidun MCP-palvelimen täydellistä URL-osoitetta. Mallin määritysnäytössä URL-osoite voidaan näyttää neljänä erillisenä kenttänä:
Snowflake-isännän etuliite.
Tietokanta.
Skeema.
MCP-palvelimen nimi.
ChatGPT voi löytää ja käyttää vain työkaluja, jotka MCP-palvelin tuo saataville ja jotka käyttäjän valtuuttama Snowflake-rooli sallii.
Ennen aloittamista
Tarvitset seuraavat:
ChatGPT-työtilan järjestelmänvalvojan tai omistajan käyttöoikeudet taikka ChatGPT Plus- tai ChatGPT Pro -käyttöoikeudet.
Snowflake-käyttöoikeudet, joilla voi luoda MCP-palvelinobjekteja ja myöntää oikeuksia.
Snowflake-tietokanta ja -skeema, joihin MCP-palvelin sijoitetaan.
Päätös siitä, mitä ChatGPT saa tehdä, kuten käyttää Cortex Searchia tai Cortex Analystia, suorittaa vain luku -SQL:ää tai käyttää tiettyä proseduuria tai funktiota.
Vähimpien oikeuksien periaatetta noudattava Snowflake-rooli, jota käyttäjät käyttävät sovelluksen valtuuttamiseen.
Snowflake-tilin isännän etuliite sekä mahdollinen alue- tai pilvipalveluliite.
Jos Snowflake-tilisi rajoittaa käyttöä verkkokäytännöllä tai sallittujen IP-osoitteiden luettelolla, pyydä Snowflake-järjestelmänvalvojaa sallimaan saapuvat yhteydet nykyisiltä ChatGPT-yhdistimen lähtevän liikenteen IP-alueilta. Luettelo muuttuu, joten se on pidettävä ajan tasalla.
Valmisteltavat arvot
Snowflake-isännän etuliite: kaikki Snowflake-tilin URL-osoitteessa ennen osaa .snowflakecomputing.com.
Tietokanta: MCP-palvelimen sisältävä tietokanta.
Skeema: MCP-palvelimen sisältävä skeema.
MCP-palvelimen nimi: Snowflaken MCP-palvelinobjektin nimi.
Hallinnoidun MCP-palvelimen täydellinen URL-osoite, jos ChatGPT:n määritysnäyttö pyytää URL-osoitetta.
Snowflake-rooli: rooli, jota käyttäjien tulee käyttää sovelluksen valtuuttamiseen.
Työkaluluettelo: Snowflake-objektit ja -toiminnot, joita haluat ChatGPT:n käyttävän.
Päätä, mitä ChatGPT voi tehdä
Tuo saataville vain haluamasi ominaisuudet. Yleisiä vaihtoehtoja ovat:
Haku Cortex Searchilla, jotta indeksoiduista Snowflake-tiedoista tai -sisällöstä voidaan etsiä vastauksia.
Kysymykset ja vastaukset Cortex Analystilla hyväksytyn semanttisen näkymän kautta.
Vain luku -SQL hallittuun kyselykäyttöön.
Snowflake-agentti, tallennettu proseduuri tai UDF tiettyä työnkulkua varten.
Jos otat SQL:n käyttöön, salli vain luku, ellei organisaatiosi ole tarkistanut ja hyväksynyt kirjoitusoikeutta.
Avaa Snowflake-laskentataulukko
Kirjaudu Snowflake-sovellukseen.
Vaihda rooliin, joka voi luoda MCP-palvelimen ja myöntää käyttöoikeuksia.
Siirry kohtaan Työtilat.

Luo työtila, jossa on SQL-tiedosto.

Aseta työtilan kontekstiksi tietokanta ja skeema, joihin MCP-palvelin luodaan.

Luo Snowflake-MCP-palvelin
Kirjaudu Snowflakeen roolilla, joka voi luoda MCP-palvelimen ja myöntää käyttöoikeuksia. Avaa laskentataulukko siinä tietokannassa ja skeemassa, joihin MCP-palvelin on tarkoitus luoda.
Suorita seuraavan esimerkin kaltainen lause. Korvaa nimet omilla Snowflake-tietokannan, skeeman, palveluiden, näkymien, varaston ja palvelimen nimilläsi.
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" $$;

Tämän lauseen työkalujen nimet ja Snowflake-objektit ovat esimerkkejä:
support-searchtuo määritetyn Cortex Search -palvelun saataville.revenue-analysttuo määritetyn semanttisen näkymän saataville. Lisää tarvittaessa työkaluja muita näkymiä varten.sql-readonlytuo vain luku -SQL:n saataville määritetyllä varastolla.
Käytä vakaita ja kuvaavia työkalunimiä, jotta ChatGPT voi valita oikean työkalun. MCP-palvelimen luominen ei myönnä automaattisesti käyttöoikeuksia taustalla oleviin Snowflake-objekteihin.
Lisää määritysvaihtoehtoja on ohjeessa Snowflaken hallinnoiman MCP-palvelimen luominen.
Myönnä oikeat Snowflake-oikeudet
Valitse Snowflake-rooli, jolla käyttäjät valtuuttavat yhteyden, ja myönnä roolille käyttöoikeus seuraaviin:
Tietokanta ja skeema.
MCP-palvelin.
Kaikki työkalujen käyttämät taustalla olevat objektit, kuten hakupalvelu, semanttinen näkymä tai varasto.
Esimerkki:
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;
Jos MCP-palvelin tuo saataville UDF:n, tallennetun proseduurin tai Cortex-agentin, myönnä myös kyseisen objektin edellyttämät oikeudet.
Varmista, että Snowflake on valmis
Suorita:
SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;
Suorita sitten:
DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;
Varmista seuraavat asiat:
Palvelin on odotetussa tietokannassa ja skeemassa.
Työkaluluettelo vastaa suunnitelmaasi.
Kunkin työkalun
identifierviittaa oikeaan Snowflake-objektiin.Yhteyteen käytettävällä roolilla on MCP-palvelimen
USAGE-oikeus.Yhteyteen käytettävällä roolilla on tarvittavat oikeudet kuhunkin taustalla olevaan objektiin.
Anna Snowflake-palvelimen tiedot ChatGPT:ssä
Vaihda ChatGPT:ssä tilille tai työtilaan, jossa sovelluksen halutaan olevan käytettävissä.
Avaa Asetukset. Jos määrität koko työtilan, avaa järjestelmänvalvojana Työtilan asetukset.
Siirry kohtaan Lisäosat.
Hae nimellä Snowflake.
Ota Snowflake – virallinen malli käyttöön.
Avaa Snowflake – virallinen malli, anna yhteydelle selkeä nimi ja valitse Yhdistä.
Anna hallinnoidun MCP-palvelimen täydellinen URL-osoite:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
Esimerkki:
https://myorg-myaccount.azure.snowflakecomputing.com/api/v2/databases/CHATGPT_APPS/schemas/TOOLS/mcp-servers/CHATGPT_SNOWFLAKE_MCP

Jos määritysnäyttö näyttää Snowflake-määrityksen erillisinä kenttinä, käytä samoja arvoja kuin URL-osoitteessa:
Snowflake-isännän etuliite
Käytä Snowflake-tilisi URL-osoitteesta kaikkea ennen osaa .snowflakecomputing.com, myös mahdollista alue- tai pilvipalveluliitettä.
Jos tilin URL-osoite alkaa esimerkiksi näin:
https://myorg-myaccount.azure.snowflakecomputing.com
Isännän etuliite on:
myorg-myaccount.azure
Tietokanta
Anna MCP-palvelimen sisältävä tietokanta, esimerkiksi:
CHATGPT_APPS
Skeema
Anna MCP-palvelimen sisältävä skeema, esimerkiksi:
TOOLS
MCP-palvelimen nimi
Anna Snowflaken MCP-palvelinobjektin nimi, esimerkiksi:
CHATGPT_SNOWFLAKE_MCP
Määritä OAuth-asiakasohjelma
Yhteyttä varten tarvitset Snowflakesta asiakastunnuksen ja asiakassalaisuuden.
Kun käytät arvoa session:role:all, Snowflake käyttää kunkin käyttäjän oletusroolia. Oletusroolin on oltava OAuth-integraation sallittujen roolien luettelossa, jos sellainen on määritetty, eikä rooli saa olla estetty. Toista hyväksyttyä roolia ei valita automaattisesti.
Avaa ChatGPT:n määritysikkunassa OAuth-lisäasetukset, valitse Käyttäjän määrittämä OAuth-asiakasohjelma ja kopioi ChatGPT:ssä näkyvä Takaisinkutsu-URL.
Luo mukautettu OAuth-suojausintegraatio, jonka
OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'ja jonkaOAUTH_REDIRECT_URI-arvoksi asetetaan täsmälleen kyseinen takaisinkutsu-URL.Suorita Snowflakessa seuraava lause käyttäen integraation nimeä suuraakkosin:
SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('YOUR_INTEGRATION_NAME');Liitä JSON-tuloksen
oauth_client_idChatGPT:n OAuth-asiakastunnus-kenttään jaoauth_client_secretOAuth-asiakassalaisuus-kenttään.Aseta Token-endpointin todennusmenetelmä -arvoksi
client_secret_basic.
Yhdistä Snowflake ja hallitse sitä
Valitse samassa ChatGPT:n määritysikkunassa Jatka, kirjaudu Snowflakeen ja valtuuta yhteys.
Jos määrität työtilaa, määritä lisäosan asennuskäytäntö sekä rooli- tai ryhmäkohtaiset käyttöoikeudet jäsenille, joiden tulee käyttää sitä. Varmista, että sekä Snowflake että Snowflake – virallinen malli ovat käytössä.
Työtilan järjestelmänvalvojat vastaavat Käyttäjien käyttöoikeudet -asetuksen määrittämisestä rooleille, joiden tulee käyttää Snowflakea.
Työtilan järjestelmänvalvojat vastaavat saataville tuotujen työkalujen Toimintojen hallinta -asetusten tarkistamisesta.
Työtilan järjestelmänvalvojat vastaavat Sovelluksen käyttöoikeudet -asetusten tarkistamisesta ja päättävät, milloin ChatGPT pyytää jäseniltä luvan ennen sovelluksen käyttöä.
Nämä sovelluksen käyttöoikeudet koskevat ChatGPT-keskusteluja. Työtilan agentit määrittävät käytettävissä olevat sovellustoiminnot ja loppukäyttäjiltä pyydettävät hyväksynnät agentin luojan asettamilla agenttikohtaisilla hallinta-asetuksilla. Lisätietoja agentin toiminnasta: ChatGPT-työtilan agentit Enterprise- ja Business-tilauksissa.
Testaa sovellus
Avaa keskustelu, valitse Snowflake ja testaa yhteys.
Varmista, että ChatGPT löytää määrittämäsi työkalut.
Suorita ensin vähäriskinen lukutoiminto, kuten haku tai vain luku -kysely hyväksyttyihin tietoihin.
Varmista, että Snowflake-oikeudet estävät hyväksytyn roolin ja hyväksyttyjen objektien ulkopuolisen käytön.
Jos määrität työtilaa, testaa yhteyttä sallituilla jäsenillä, jotka eivät ole järjestelmänvalvojia ja joilla on eri Snowflake-oletusrooleja. Järjestelmänvalvojan onnistunut yhteys ei takaa, että kaikki jäsenet voivat muodostaa yhteyden.
Työtilan järjestelmänvalvojille ei riitä, että vain Snowflake otetaan käyttöön. Jos Snowflake – virallinen malli ei ole käytössä ja yhdistetty, lisäosa voi näkyä jäsenille poistettuna käytöstä.
MCP-palvelimen URL-osoite ja OAuthin toiminta
ChatGPT muodostaa yhteyden Snowflaken hallinnoiman MCP-palvelimen täydelliseen URL-osoitteeseen:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
ChatGPT käyttää kyseisen URL-osoitteen Snowflake-isännän etuliitettä seuraavien Snowflake OAuth -endpointien selvittämiseen:
Valtuutus:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/authorizeToken:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/token-request
Älä liitä Snowsight-URL-osoitetta, pelkkää Snowflake-tilin juuri-URL-osoitetta tai URL-osoitetta, jossa on ylimääräisiä polkuosia. MCP-URL-osoitteen on sisällettävä /api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}, ja sen on vastattava Snowflake-objektejasi täsmälleen.
Vianmääritys
Snowflake on käytössä järjestelmänvalvojalla mutta ei jäsenellä
Varmista, että sekä Snowflake että Snowflake – virallinen malli ovat käytössä kohdassa Työtilan asetukset > Lisäosat.
Avaa Snowflake – virallinen malli ja suorita sen Yhdistä-prosessi loppuun. Pelkkä mallin käyttöönotto ilman yhdistämistä ei riitä.
Avaa Snowflake ja varmista, että malli näkyy sen edellyttämänä sovelluksena.
Varmista, että lisäosan asennuskäytäntö sallii ongelmasta kärsivän jäsenen roolin tai ryhmän.
MCP-palvelinta ei löydy
Tarkista MCP-palvelimen täydellinen URL-osoite tai mallin neljä kenttää, jos määritysnäyttö pyytää niitä.
Varmista, että MCP-palvelin on juuri kyseisessä tietokannassa ja skeemassa.
ChatGPT:ssä ei näy työkaluja
Varmista, että MCP-palvelimen määritys sisältää työkaluja.
Varmista, että roolilla on MCP-palvelimen
USAGE-oikeus.
Työkalu näkyy, mutta sen käyttö epäonnistuu
Varmista, että roolilla on tarvittava oikeus taustalla olevaan Snowflake-objektiin, kuten hakupalveluun, semanttiseen näkymään, varastoon, proseduuriin tai UDF:ään.
SQL-työkalu ei toimi
Varmista, että varaston nimi on oikein ja että varasto on käynnissä.
Varmista, että roolilla on varaston
USAGE-oikeus.Jos tarkoitit sallia vain luku -käytön, varmista, että
read_only: trueon asetettu.
Pyydetty ALL-rooli on estetty nimenomaisesti
Pyydä Snowflake-järjestelmänvalvojaa vertaamaan oletusrooliasi OAuth-integraation sallittuihin ja estettyihin rooleihin. Toista sallittua roolia ei valita automaattisesti. Vaihda tarvittaessa oletusrooliksi hyväksytty rooli ja muodosta yhteys uudelleen. Oletusroolin vaihtaminen vaikuttaa myös ChatGPT:n ulkopuolisiin Snowflake-istuntoihisi.
Valtuutus epäonnistuu
Varmista, että käyttäjä voi kirjautua Snowflakeen.
Kun käytät arvoa
session:role:all, varmista, että OAuth-integraatio sallii käyttäjän oletusroolin.Varmista, että määritys käyttää Snowflaken hallinnoiman MCP:n OAuth-prosessia.
Varmista, että asiakastunnus ja asiakassalaisuus vastaavat Snowflake OAuth -integraatiota ja että sen uudelleenohjauksen URI vastaa ChatGPT:ssä näkyvää Takaisinkutsu-URL-osoitetta.
Snowflaken verkkokäytäntö tai sallittujen IP-osoitteiden luettelo estää yhdistimen
Pyydä Snowflake-järjestelmänvalvojaa päivittämään Snowflaken verkkokäytäntö tai käyttösäännöt.
Salli saapuvat yhteydet nykyisiltä ChatGPT-yhdistimen lähtevän liikenteen IP-alueilta.
Määritä sallittujen osoitteiden luettelo Snowflakessa. Se on erillinen ChatGPT-työtilan sallittujen IP-osoitteiden luettelosta.
Automatisoi päivitykset julkaistusta JSON-tiedostosta mahdollisuuksien mukaan, sillä alueet voivat muuttua.
Yhteysongelma isäntänimessä
Käytä oikeaa Snowflake-isännän etuliitettä. Alaviivoja sisältävät Snowflake-isäntänimet voivat aiheuttaa ongelmia. Käytä mieluummin yhdysmerkkejä.
