Gamitin ang gabay na ito kung isa kang admin ng ChatGPT workspace o user ng ChatGPT Plus o Pro na gustong ikonekta ang ChatGPT sa Snowflake sa pamamagitan ng MCP server na pinamamahalaan ng Snowflake.
Sa Snowflake ginagawa ang karamihan sa pag-set up. Kapag handa na ang Snowflake, kumpletuhin sa ChatGPT ang koneksyon ng template ng Snowflake, pagkatapos ay i-enable ang Snowflake plugin na gumagamit sa template na iyon.
Ang ise-set up mo
Gagawa ka ng MCP server na pinamamahalaan ng Snowflake at magsisilbing connector endpoint para sa ChatGPT. Tinutukoy ng MCP server ang:
Mga pagkilos na magagamit ng ChatGPT
Data o mga object ng Snowflake na maa-access ng mga tool na iyon.
Role sa Snowflake na gagamitin ng bawat user sa pag-authorize.
Database, schema, at pangalan ng MCP server sa Snowflake na tumutukoy sa endpoint.
Pagkatapos, iko-configure mo ang Snowflake - Opisyal na Template sa ChatGPT gamit ang buong URL ng pinamamahalaang MCP server. Maaaring ipakita ng screen sa pag-set up ng template ang URL bilang apat na magkakahiwalay na field:
Host prefix ng Snowflake.
Database.
Schema.
Pangalan ng MCP server.
Ang mga tool lang na inilalantad ng MCP server at pinapayagan ng role sa Snowflake na ginagamit ng user sa pag-authorize ang mahahanap at magagamit ng ChatGPT.
Bago ka magsimula
Kailangan mo ng:
Access bilang admin o may-ari ng ChatGPT workspace, o access sa ChatGPT Plus o Pro.
Access sa Snowflake na makakagawa ng mga object ng MCP server at makakapagbigay ng mga pahintulot.
Ang database at schema sa Snowflake kung saan ilalagay ang MCP server.
Desisyon tungkol sa mga dapat payagang gawin ng ChatGPT, gaya ng Cortex Search, Cortex Analyst, read-only na SQL, o partikular na procedure o function.
Isang role sa Snowflake na may pinakakaunting pribilehiyo at gagamitin ng mga user kapag ina-authorize ang app.
Ang host prefix ng Snowflake account, kasama ang anumang suffix ng rehiyon o cloud.
Kung nililimitahan ng iyong Snowflake account ang access sa pamamagitan ng network policy o IP allowlist, hilingin sa isang admin ng Snowflake na payagan ang mga papasok na koneksyon mula sa kasalukuyang mga hanay ng egress IP ng connector ng ChatGPT. Nagbabago ang listahan at dapat itong panatilihing napapanahon.
Mga value na ihahanda
Host prefix ng Snowflake: lahat ng nasa unahan ng .snowflakecomputing.com sa URL ng Snowflake account.
Database: ang database na naglalaman sa MCP server.
Schema: ang schema na naglalaman sa MCP server.
Pangalan ng MCP server: ang pangalan ng object ng MCP server sa Snowflake.
Buong URL ng pinamamahalaang MCP server, kung URL ang hinihingi ng screen sa pag-set up ng ChatGPT.
Role sa Snowflake: ang role na dapat gamitin ng mga user kapag ina-authorize ang app.
Listahan ng mga tool: ang mga object at pagkilos sa Snowflake na gusto mong gamitin ng ChatGPT.
Magpasya kung ano ang magagawa ng ChatGPT
Piliin lang ang mga kakayahang gusto mong ilantad. Kabilang sa mga karaniwang opsyon ang:
Paghahanap gamit ang Cortex Search para makakita ng mga sagot sa naka-index na data o content ng Snowflake.
Tanong at sagot gamit ang Cortex Analyst sa pamamagitan ng isang aprubadong semantic view.
Read-only na SQL para sa kontroladong access sa query.
Isang Snowflake Agent, stored procedure, o UDF para sa partikular na workflow.
Kung ie-enable mo ang SQL, panatilihin itong read-only maliban kung nasuri at naaprubahan ng iyong organisasyon ang access sa pagsusulat.
Magbukas ng Snowflake worksheet
Mag-sign in sa Snowflake app.
Lumipat sa isang role na makakagawa ng MCP server at makakapagbigay ng access.
Pumunta sa Mga Workspace.

Gumawa ng workspace na may SQL file.

Itakda ang konteksto ng workspace sa database at schema kung saan gagawin ang MCP server.

Gawin ang Snowflake MCP server
Sa Snowflake, mag-sign in gamit ang role na makakagawa ng MCP server at makakapagbigay ng access. Magbukas ng worksheet sa database at schema kung saan dapat gawin ang MCP server.
Patakbuhin ang isang statement gaya ng sumusunod na halimbawa. Palitan ang mga pangalan ng sarili mong database, schema, mga serbisyo, mga view, warehouse, at pangalan ng server sa 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" $$;

Mga halimbawa ang mga pangalan ng tool at object ng Snowflake sa statement na ito:
Inilalantad ng
support-searchang tinukoy na serbisyo ng Cortex Search.Inilalantad ng
revenue-analystang tinukoy na semantic view. Magdagdag ng mga tool para sa iba pang view kung kailangan.Inilalantad ng
sql-readonlyang read-only na SQL gamit ang tinukoy na warehouse.
Gumamit ng matatag at malinaw na mga pangalan ng tool para mapili ng ChatGPT ang tamang tool. Ang paggawa ng MCP server ay hindi awtomatikong nagbibigay ng access sa mga pinagbabatayang object ng Snowflake.
Para sa mga karagdagang opsyon sa specification, tingnan ang: Gumawa ng MCP server na pinamamahalaan ng Snowflake.
Ibigay ang mga tamang pahintulot sa Snowflake
Piliin ang role sa Snowflake na gagamitin ng mga user sa pag-authorize, pagkatapos ay bigyan ang role na iyon ng access sa
Database at schema.
MCP server.
Bawat pinagbabatayang object na ginagamit ng mga tool, gaya ng serbisyo sa paghahanap, semantic view, o warehouse.
Halimbawa:
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;
Kung naglalantad ang MCP server ng UDF, stored procedure, o Cortex Agent, ibigay din ang mga kinakailangang pahintulot para sa object na iyon.
Tiyaking handa na ang Snowflake
Patakbuhin ang:
SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;
Pagkatapos, patakbuhin ang:
DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;
Kumpirmahin na:
Umiiral ang server sa inaasahang database at schema.
Ang listahan ng mga tool ang siyang nilayon mo.
Nakaturo ang
identifierng bawat tool sa tamang object ng Snowflake.May
USAGEang role na kumokonekta sa MCP server.May mga kinakailangang pahintulot ang role na kumokonekta sa bawat pinagbabatayang object.
Ilagay ang mga detalye ng Snowflake server sa ChatGPT
Sa ChatGPT, lumipat sa account o workspace kung saan dapat maging available ang app.
Buksan ang Mga Setting. Para sa pag-set up sa buong workspace, buksan ang Mga setting ng workspace bilang admin ng workspace.
Pumunta sa Mga Plugin.
Hanapin ang Snowflake.
I-enable ang Snowflake - Opisyal na Template.
Buksan ang Snowflake - Opisyal na Template, maglagay ng malinaw na pangalan ng koneksyon, at piliin ang Kumonekta.
Ilagay ang buong URL ng pinamamahalaang MCP server:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
Halimbawa:
https://myorg-myaccount.azure.snowflakecomputing.com/api/v2/databases/CHATGPT_APPS/schemas/TOOLS/mcp-servers/CHATGPT_SNOWFLAKE_MCP

Kung ipinapakita ng screen sa pag-set up ang configuration ng Snowflake bilang magkakahiwalay na field, gamitin ang parehong mga value mula sa URL:
Host prefix ng Snowflake
Gamitin ang lahat ng nasa unahan ng .snowflakecomputing.com sa URL ng iyong Snowflake account, kasama ang anumang suffix ng rehiyon o cloud.
Halimbawa, kung nagsisimula ang URL ng account sa:
https://myorg-myaccount.azure.snowflakecomputing.com
Ang host prefix ay:
myorg-myaccount.azure
Database
Ilagay ang database na naglalaman sa MCP server, gaya ng:
CHATGPT_APPS
Schema
Ilagay ang schema na naglalaman sa MCP server, gaya ng:
TOOLS
Pangalan ng MCP server
Ilagay ang pangalan ng object ng Snowflake MCP server, gaya ng:
CHATGPT_SNOWFLAKE_MCP
I-configure ang OAuth client
Kailangan mo ng Client ID at Client Secret mula sa Snowflake para makakonekta.
Kapag ginamit mo ang session:role:all, ginagamit ng Snowflake ang default na role ng bawat user. Dapat pahintulutan ng allowlist ng mga role sa OAuth integration ang default na role, kung naka-configure ito, at hindi dapat naka-block ang role. Ang pagkakaroon ng isa pang aprubadong role ay hindi awtomatikong pipili rito.
Sa modal sa pag-set up ng ChatGPT, buksan ang Mga advanced na setting ng OAuth, piliin ang OAuth Client na Tinukoy ng User, at kopyahin ang Callback URL na ipinapakita sa ChatGPT.
Gumawa ng custom na OAuth security integration na may
OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'at nakatakda angOAUTH_REDIRECT_URIsa eksaktong callback URL na iyon.Patakbuhin ang sumusunod na statement sa Snowflake gamit ang pangalan ng integration na naka-uppercase:
SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('YOUR_INTEGRATION_NAME');Mula sa resultang JSON, i-paste ang
oauth_client_idsa OAuth client ID at angoauth_client_secretsa OAuth client secret sa ChatGPT.Itakda ang Paraan ng pag-authenticate sa token endpoint sa
client_secret_basic.
Ikonekta at pamahalaan ang Snowflake
Sa parehong modal sa pag-set up ng ChatGPT, piliin ang Magpatuloy, mag-sign in sa Snowflake, at i-authorize ang koneksyon.
Para sa pag-set up ng workspace, i-configure ang patakaran sa pag-install ng plugin at ang access ayon sa role o grupo para sa mga miyembrong dapat gumamit nito. Tiyaking parehong naka-enable ang Snowflake at Snowflake - Opisyal na Template.
Responsable ang mga admin ng workspace sa pag-configure ng Access ng user para sa mga role na dapat gumamit ng Snowflake.
Responsable ang mga admin ng workspace sa pagsusuri sa Kontrol sa pagkilos para sa mga inilantad na tool.
Responsable ang mga admin ng workspace sa pagsusuri sa Mga pahintulot ng app upang piliin kung kailan hihingi ng pahintulot ang ChatGPT sa mga miyembro bago gamitin ang app.
Nalalapat ang mga pahintulot na ito ng app sa mga pag-uusap sa ChatGPT. Gumagamit ang mga Workspace Agent ng mga kontrol para sa bawat agent na itinakda ng gumawa nito upang matukoy kung aling mga pagkilos ng app ang available at kung kailan hihingan ng pag-apruba ang mga end user. Para sa gawi ng agent, tingnan ang: Mga ChatGPT Workspace Agent para sa Enterprise at Business.
Subukan ang app
Magbukas ng chat, piliin ang Snowflake, at subukan ang koneksyon.
Kumpirmahing nahahanap ng ChatGPT ang mga tool na na-configure mo.
Magpatakbo muna ng read action na mababa ang panganib, gaya ng paghahanap o read-only na query sa aprubadong data.
Kumpirmahing pinipigilan ng mga pahintulot sa Snowflake ang access sa labas ng aprubadong role at mga object.
Para sa pag-set up ng workspace, subukan ito gamit ang mga pinapayagang miyembrong hindi admin at may magkakaibang default na role sa Snowflake. Hindi pinatutunayan ng matagumpay na koneksyon ng admin na makakakonekta ang bawat miyembro.
Para sa mga admin ng workspace, hindi sapat na Snowflake lang ang i-enable. Kung hindi pa na-enable at naikonekta ang Snowflake - Opisyal na Template, maaaring lumabas sa mga miyembro na naka-disable ang plugin.
URL ng MCP server at gawi ng OAuth
Kumokonekta ang ChatGPT sa buong URL ng MCP server na pinamamahalaan ng Snowflake:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
Ginagamit ng ChatGPT ang host prefix ng Snowflake mula sa URL na iyon upang matukoy ang mga Snowflake OAuth endpoint na ito:
Authorization:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/authorizeToken:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/token-request
Huwag mag-paste ng Snowsight URL, ng root URL lang ng Snowflake account, o ng URL na may mga karagdagang path segment. Dapat kasama sa MCP URL ang /api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server} at eksaktong tumugma ito sa iyong mga object sa Snowflake.
Pag-troubleshoot
Naka-enable ang Snowflake para sa admin ngunit naka-disable para sa miyembro
Tiyaking parehong naka-enable ang Snowflake at Snowflake - Opisyal na Template sa Mga setting ng workspace > Mga Plugin.
Buksan ang Snowflake - Opisyal na Template at kumpletuhin ang proseso nitong Kumonekta. Hindi sapat na i-enable ang template nang hindi ito ikinokonekta.
Buksan ang Snowflake at tiyaking lumalabas ang template bilang kinakailangan nitong app.
Tiyaking pinapayagan ng patakaran sa pag-install ng plugin ang role o grupo ng apektadong miyembro.
Hindi makita ang MCP server
Suriing muli ang buong URL ng MCP server, o ang apat na field ng template kung hinihingi ang mga iyon ng iyong screen sa pag-set up.
Tiyaking umiiral ang MCP server sa eksaktong database at schema na iyon.
Walang lumalabas na tool sa ChatGPT
Tiyaking may kasamang mga tool ang specification ng MCP server.
Tiyaking may
USAGEang role sa MCP server.
Lumalabas ang tool ngunit pumapalya kapag ginagamit
Tiyaking may kinakailangang pahintulot ang role sa pinagbabatayang object ng Snowflake, gaya ng serbisyo sa paghahanap, semantic view, warehouse, procedure, o UDF.
Pumapalya ang SQL tool
Tiyaking tama ang pangalan ng warehouse at tumatakbo ang warehouse.
Tiyaking may
USAGEang role sa warehouse.Tiyaking nakatakda ang
read_only: truekung read-only na access ang nilayon mo.
Tahasang na-block ang hiniling na role na ALL
Hilingin sa iyong admin ng Snowflake na ihambing ang default mong role sa mga pinapayagan at naka-block na role ng OAuth integration. Ang pagkakaroon ng isa pang pinapayagang role ay hindi awtomatikong pipili rito. Kung naaangkop, palitan ang default na role ng aprubadong role at muling kumonekta. Makakaapekto rin sa iyong mga session sa Snowflake sa labas ng ChatGPT ang pagbabago sa default mong role.
Pumapalya ang authorization
Tiyaking makakapag-sign in sa Snowflake ang user.
Kapag ginagamit ang
session:role:all, tiyaking pinapayagan ng OAuth integration ang default na role ng user.Tiyaking ginagamit sa pag-set up ang daloy ng MCP OAuth na pinamamahalaan ng Snowflake.
Tiyaking tumutugma ang Client ID at Client Secret sa Snowflake OAuth integration at tumutugma ang redirect URI nito sa Callback URL na ipinapakita sa ChatGPT.
Bina-block ng network policy o IP allowlist ng Snowflake ang connector
Hilingin sa isang admin ng Snowflake na i-update ang network policy o mga panuntunan sa access ng Snowflake.
Payagan ang mga papasok na koneksyon mula sa kasalukuyang mga hanay ng egress IP ng connector ng ChatGPT.
I-configure ang allowlisting na ito sa Snowflake. Hiwalay ito sa IP allowlisting ng ChatGPT workspace.
Kung posible, i-automate ang mga update mula sa naka-publish na JSON dahil maaaring magbago ang mga hanay.
Problema sa pagkonekta gamit ang hostname
Gamitin ang tamang host prefix ng Snowflake. Maaaring magdulot ng problema ang mga hostname ng Snowflake na may underscore; mas mainam ang mga gitling.
