OpenAI
Den här sidan har maskinöversatts. Visa den ursprungliga engelska artikeln.

Konfigurera Snowflake-appmallen i ChatGPT

Lär dig hur administratörer för arbetsytor kan konfigurera Snowflake-appmallen i ChatGPT med en Snowflake-hanterad MCP-server.

Uppdaterades: 21 days ago

Använd den här guiden om du är administratör för en ChatGPT-arbetsyta och ska konfigurera Snowflake-appmallen för din organisation. En mall är inte den slutliga appen som medlemmarna använder. Det är ett konfigurationsflöde som skapar en arbetsytespecifik utkastapp efter att du har angett den Snowflake-konfiguration som krävs.

För Snowflake sker det mesta av konfigurationen i Snowflake. Du skapar en Snowflake-hanterad MCP-server, ger rätt roll åtkomst till MCP-servern och dess underliggande objekt och anger sedan den hanterade MCP-serverns URL eller dess komponentfält i konfigurationsflödet för ChatGPT-mallen. När ChatGPT har skapat utkastappen kan du publicera och hantera den som andra appar i arbetsytan.

Vad du konfigurerar

Du skapar en arbetsytespecifik Snowflake-app i ChatGPT. Appen ansluter till en Snowflake-hanterad MCP-server som definierar:

  • Vilka åtgärder ChatGPT kan använda, så kallade verktyg.

  • Vilka Snowflake-data eller -objekt dessa verktyg kan komma åt.

  • Vilken Snowflake-roll användare ska auktorisera med.

  • Vilken Snowflake-databas, vilket schema och vilket MCP-servernamn som identifierar kopplingens slutpunkt.

ChatGPT kan bara hitta och använda de verktyg som exponeras av MCP-servern och tillåts av Snowflake-rollen som användaren auktoriserar med.

Innan du börjar

Du behöver:

  • Administratörs- eller ägaråtkomst till ChatGPT-arbetsytan.

  • Snowflake-åtkomst som kan skapa MCP-serverobjekt och bevilja behörigheter.

  • Snowflake-databasen och schemat där MCP-servern ska finnas.

  • Ett beslut om vad ChatGPT ska få göra, till exempel Cortex Search, Cortex Analyst, skrivskyddad SQL eller en specifik procedur eller funktion.

  • En Snowflake-roll med minsta möjliga behörighet som användare ska använda när de auktoriserar appen.

  • Snowflake-kontots värdprefix, inklusive eventuellt region- eller molnsuffix.

Värden att förbereda

  • Snowflake-värdprefix: allt före .snowflakecomputing.com i Snowflake-kontots URL.

  • Databas: databasen som innehåller MCP-servern.

  • Schema: schemat som innehåller MCP-servern.

  • MCP-servernamn: objektnamnet för Snowflake MCP-servern.

  • Fullständig URL till hanterad MCP-server, om ChatGPT-konfigurationsskärmen ber om en URL.

  • Snowflake-roll: rollen användare ska använda när de auktoriserar appen.

  • Verktygslista: Snowflake-objekten och åtgärderna du vill att ChatGPT ska använda.

Bestäm vad ChatGPT kan göra

Välj bara de funktioner du vill exponera. Vanliga alternativ är:

  • Sök med Cortex Search för att hitta svar i indexerade Snowflake-data eller indexerat innehåll.

  • Frågor och svar med Cortex Analyst via en godkänd semantisk vy.

  • Skrivskyddad SQL för kontrollerad frågeåtkomst.

  • En Snowflake Agent, lagrad procedur eller UDF för specifika arbetsflöden.

Om du aktiverar SQL ska du hålla det skrivskyddat om inte organisationen har granskat och godkänt skrivåtkomst.

Skapa Snowflake MCP-servern

Logga in i Snowflake med en roll som kan skapa MCP-servern och bevilja åtkomst. Öppna ett kalkylblad i databasen och schemat där MCP-servern ska skapas.

Skapa en MCP-server som bara listar de verktyg ChatGPT ska använda. Ersätt objektnamnen med din egen Snowflake-databas, ditt schema, dina tjänster, vyer, ditt warehouse och servernamn.

Exempel:

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"
$$;

Verktygsnamn bör vara stabila och beskrivande så att ChatGPT kan välja rätt verktyg. När du skapar MCP-servern beviljas inte automatiskt åtkomst till de underliggande Snowflake-objekten.

Bevilja rätt Snowflake-behörigheter

Välj Snowflake-rollen som användarna ska auktorisera med och bevilja sedan den rollen åtkomst till databasen, schemat, MCP-servern och alla underliggande objekt som används av verktygen.

Exempel:

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;

Om MCP-servern exponerar en semantisk vy, UDF, lagrad procedur eller Cortex Agent ska du även bevilja de behörigheter som krävs för dessa objekt.

Kontrollera att Snowflake är redo

Kör:

SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;

Kör sedan:

DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;

Bekräfta:

  • Servern finns i den förväntade databasen och det förväntade schemat.

  • Verktygslistan är som du avsåg.

  • Varje verktygsidentifierare pekar på rätt Snowflake-objekt.

  • Den anslutande rollen har USAGE på MCP-servern.

  • Den anslutande rollen har de behörigheter som krävs för varje underliggande objekt.

Starta mallkonfigurationen i ChatGPT

  1. I ChatGPT växlar du till arbetsytan där appen ska vara tillgänglig.

  2. Öppna Arbetsyteinställningar > Appar.

  3. Välj Katalog.

  4. Sök efter Snowflake.

  5. Välj Snowflake-appmallen och starta konfigurationen.

  6. Ange ett tydligt appnamn och en beskrivning, till exempel Snowflake eller Snowflake – Analys.

  7. Ange de uppgifter om den hanterade MCP-servern som konfigurationsflödet begär.

Om konfigurationsskärmen ber om den fullständiga URL:en till den hanterade MCP-servern använder du detta format:

https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}

Om konfigurationsskärmen ber om separata fält använder du samma värden från den URL:en:

  • Snowflake-värdprefix.

  • Databas.

  • Schema.

  • MCP-servernamn.

Skapa och publicera utkastappen

  1. Spara Snowflake-mallkonfigurationen i ChatGPT.

  2. Skapa utkastappen.

  3. Granska utkastappens information, autentiseringsinställningar och tillgängliga åtgärder.

  4. Publicera utkastappen när den är klar.

  5. Bekräfta att appen visas i Arbetsyteinställningar > Appar > Aktiverade.

  6. Konfigurera Användaråtkomst för de roller som ska använda den.

  7. Granska Åtgärdskontroll för de exponerade verktygen.

  8. Granska Appbehörigheter för att välja när ChatGPT frågar medlemmar innan appen används.

Dessa appbehörigheter gäller för ChatGPT-konversationer. Arbetsyteagenter använder kontroller per Agent, som ställs in av Agentens skapare, för att avgöra vilka appåtgärder som är tillgängliga och när slutanvändare ombeds att godkänna dem. För Agent-beteende, se: ChatGPT-arbetsyteagenter för Enterprise och Business.

Testa appen

  1. Starta anslutningsflödet från ChatGPT som en tillåten testanvändare.

  2. Logga in i Snowflake och välj den avsedda rollen om du uppmanas att göra det.

  3. Bekräfta att ChatGPT hittar de förväntade verktygen från MCP-servern.

  4. Kör först en läsåtgärd med låg risk, till exempel en sökning eller skrivskyddad fråga mot godkända data.

  5. Bekräfta att Snowflake-behörigheter förhindrar åtkomst utanför den godkända rollen och de godkända objekten.

MCP-server-URL och OAuth-beteende

ChatGPT ansluter till den fullständiga URL:en till den Snowflake-hanterade MCP-servern. ChatGPT använder Snowflake-värdprefixet från den URL:en för att hitta Snowflake OAuth-slutpunkter.

Klistra inte in en Snowsight-URL, Snowflake-kontots rot-URL som enda URL eller någon URL med extra sökvägssegment. MCP-URL:en måste innehålla databasen, schemat och MCP-serverns sökväg och måste exakt matcha dina Snowflake-objekt.

Felsökning

  • MCP-servern hittades inte: kontrollera den fullständiga MCP-server-URL:en eller de separata fälten för värdprefix, databas, schema och server igen.

  • Inga verktyg visas i ChatGPT: bekräfta att MCP-serverns specifikation innehåller verktyg och att rollen har USAGE på MCP-servern.

  • Ett verktyg visas men misslyckas när det används: bekräfta att rollen har rätt behörighet för det underliggande Snowflake-objektet.

  • SQL-verktyget misslyckas: bekräfta att warehouse-namnet är korrekt, att warehouse är tillgängligt, att rollen har USAGE på det och att read_only är true om du avsåg skrivskyddad åtkomst.

  • Auktoriseringen misslyckas: bekräfta att användaren kan logga in i Snowflake och använda den avsedda rollen.

  • Problem med värdnamnsanslutning: använd rätt Snowflake-värdprefix. Snowflake-värdnamn med understreck kan orsaka problem; använd hellre bindestreck.

Var den här artikeln till hjälp?