Usa esta guía si administras un Área de trabajo de ChatGPT o usas ChatGPT Plus o Pro y quieres conectar ChatGPT a Snowflake a través de un servidor MCP gestionado por Snowflake.
La mayor parte de la configuración se realiza en Snowflake. Cuando Snowflake esté listo, completa la conexión de la plantilla de Snowflake en ChatGPT y, después, habilita el complemento de Snowflake que usa esa plantilla.
OAuth integrado: si está disponible para tu cuenta de Snowflake y en ChatGPT, usa la aplicación de socio de ChatGPT habilitada por un administrador de Snowflake. Inicia sesión en Snowflake con el SSO de tu organización, si está configurado. No necesitas introducir un ID de cliente ni un secreto de cliente en ChatGPT. Sigue las instrucciones de la sección «OAuth integrado» que aparece más abajo.
Cliente OAuth personalizado: usa esta opción si tu organización requiere su propio cliente OAuth o si OAuth integrado no está disponible. Sigue las instrucciones de la sección «Cliente OAuth personalizado» que aparece más abajo.
Ambas opciones de OAuth requieren la configuración común del servidor MCP, los permisos sobre los objetos subyacentes y el acceso de red que se describen a continuación. Antes de configurar OAuth, completa la configuración común hasta la sección «Introduce los datos del servidor de Snowflake en ChatGPT», incluida.
Qué vas a configurar
Vas a crear un servidor MCP gestionado por Snowflake que actúa como punto de acceso del conector para ChatGPT. El servidor MCP define:
Qué acciones puede usar ChatGPT.
A qué datos u objetos de Snowflake pueden acceder esas herramientas.
Con qué rol de Snowflake autoriza la conexión cada usuario.
Qué base de datos, esquema y nombre de servidor MCP de Snowflake identifican el punto de acceso.
Después, configura Snowflake - Plantilla oficial en ChatGPT con la URL completa del servidor MCP gestionado. La pantalla de configuración de la plantilla puede mostrar la URL dividida en cuatro campos:
Prefijo de host de Snowflake.
Base de datos.
Esquema.
Nombre del servidor MCP.
ChatGPT solo puede detectar y usar las herramientas expuestas por el servidor MCP y permitidas por el rol de Snowflake con el que el usuario autoriza la conexión.
Antes de empezar
Necesitas:
Acceso como administrador o propietario de un Área de trabajo de ChatGPT, o acceso a ChatGPT Plus o Pro.
Acceso a Snowflake que permita crear objetos de servidor MCP y conceder permisos.
La base de datos y el esquema de Snowflake donde se alojará el servidor MCP.
Haber decidido qué podrá hacer ChatGPT, como usar Cortex Search, Cortex Analyst, SQL de solo lectura o un procedimiento o función específicos.
Un rol de Snowflake con los privilegios mínimos necesarios que los usuarios usarán al autorizar la aplicación.
El prefijo de host de la cuenta de Snowflake, incluido cualquier sufijo de región o nube.
Si tu cuenta de Snowflake restringe el acceso mediante una política de red o una lista de IP permitidas, pide a un administrador de Snowflake que permita las conexiones entrantes desde los rangos de IP de salida de los conectores de ChatGPT vigentes. La lista es dinámica y debe mantenerse actualizada.
Valores que debes preparar
Prefijo de host de Snowflake: todo lo que precede a .snowflakecomputing.com en la URL de la cuenta de Snowflake.
Base de datos: la base de datos que contiene el servidor MCP.
Esquema: el esquema que contiene el servidor MCP.
Nombre del servidor MCP: el nombre del objeto de servidor MCP de Snowflake.
URL completa del servidor MCP gestionado, si la pantalla de configuración de ChatGPT pide una URL.
Rol de Snowflake: el rol que los usuarios deben usar al autorizar la aplicación.
Lista de herramientas: los objetos y las acciones de Snowflake que quieres que use ChatGPT.
Decide qué puede hacer ChatGPT
Selecciona solo las capacidades que quieras exponer. Estas son algunas de las opciones habituales:
Búsqueda con Cortex Search para encontrar respuestas en datos o contenido indexados de Snowflake.
Preguntas y respuestas con Cortex Analyst a través de una vista semántica aprobada.
SQL de solo lectura para un acceso controlado a las consultas.
Un agente de Snowflake, un procedimiento almacenado o una UDF para un flujo de trabajo específico.
Si habilitas SQL, mantenlo en modo de solo lectura, a menos que tu organización haya revisado y aprobado el acceso de escritura.
Abre una hoja de trabajo de Snowflake
Inicia sesión en la aplicación de Snowflake.
Cambia a un rol que permita crear el servidor MCP y conceder acceso.
Ve a Espacios de trabajo.

Crea un espacio de trabajo con un archivo SQL.

Establece como contexto del espacio de trabajo la base de datos y el esquema donde se creará el servidor MCP.

Crea el servidor MCP de Snowflake
En Snowflake, inicia sesión con un rol que permita crear el servidor MCP y conceder acceso. Abre una hoja de trabajo en la base de datos y el esquema donde se deba crear el servidor MCP.
Ejecuta una sentencia como la del siguiente ejemplo. Sustituye los nombres por los de tu base de datos, esquema, servicios, vistas, almacén virtual y servidor de 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" $$;

Los nombres de herramientas y los objetos de Snowflake de esta sentencia son ejemplos:
support-searchexpone el servicio de Cortex Search especificado.revenue-analystexpone la vista semántica especificada. Añade herramientas para otras vistas según sea necesario.sql-readonlyexpone SQL de solo lectura con el almacén virtual especificado.
Usa nombres de herramientas estables y descriptivos para que ChatGPT pueda elegir la herramienta adecuada. Crear el servidor MCP no concede acceso automáticamente a los objetos subyacentes de Snowflake.
Para ver más opciones de especificación, consulta Crear un servidor MCP gestionado por Snowflake.
Concede los permisos adecuados de Snowflake
Elige el rol de Snowflake con el que los usuarios autorizarán la conexión y, después, concede a ese rol acceso a:
La base de datos y el esquema.
El servidor MCP.
Todos los objetos subyacentes que usan las herramientas, como un servicio de búsqueda, una vista semántica o un almacén virtual.
Ejemplo:
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;
Si el servidor MCP expone una UDF, un procedimiento almacenado o un agente de Cortex, concede también los permisos necesarios para ese objeto.
Comprueba que Snowflake esté listo
Ejecuta:
SHOW MCP SERVERS IN SCHEMA CHATGPT_APPS.TOOLS;
Después, ejecuta:
DESCRIBE MCP SERVER CHATGPT_APPS.TOOLS.CHATGPT_SNOWFLAKE_MCP;
Comprueba lo siguiente:
El servidor existe en la base de datos y el esquema previstos.
La lista de herramientas es la que querías.
El
identifierde cada herramienta apunta al objeto correcto de Snowflake.El rol usado para la conexión tiene el permiso
USAGEsobre el servidor MCP.El rol usado para la conexión tiene los permisos necesarios sobre cada objeto subyacente.
Introduce los datos del servidor de Snowflake en ChatGPT
Para configurar un Área de trabajo, abre admin.openai.com, selecciona el Área de trabajo de ChatGPT correspondiente y abre Complementos. Para obtener información sobre la navegación por el Área de trabajo y el acceso a aplicaciones heredadas, consulta Controles de administración, seguridad y cumplimiento para complementos y aplicaciones.
En ChatGPT, cambia a la cuenta o al Área de trabajo donde deba estar disponible la aplicación.
Ve a Configuración > Complementos para una configuración personal o a Consola de administración > Complementos como administrador del Área de trabajo para configurarla en ella.
Busca Snowflake.
Habilita Snowflake - Plantilla oficial.
Abre Snowflake - Plantilla oficial, introduce un nombre claro para la conexión y selecciona Conectar.
Introduce la URL completa del servidor MCP gestionado:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
Ejemplo:
https://myorg-myaccount.azure.snowflakecomputing.com/api/v2/databases/CHATGPT_APPS/schemas/TOOLS/mcp-servers/CHATGPT_SNOWFLAKE_MCP

Si la pantalla de configuración muestra la configuración de Snowflake en campos separados, usa los mismos valores de la URL:
Prefijo de host de Snowflake
Usa todo lo que precede a .snowflakecomputing.com en la URL de tu cuenta de Snowflake, incluido cualquier sufijo de región o nube.
Por ejemplo, si la URL de la cuenta empieza por:
https://myorg-myaccount.azure.snowflakecomputing.com
El prefijo de host es:
myorg-myaccount.azure
Base de datos
Introduce la base de datos que contiene el servidor MCP, por ejemplo:
CHATGPT_APPS
Esquema
Introduce el esquema que contiene el servidor MCP, por ejemplo:
TOOLS
Nombre del servidor MCP
Introduce el nombre del objeto de servidor MCP de Snowflake, por ejemplo:
CHATGPT_SNOWFLAKE_MCP
Configura OAuth
Elige la opción de OAuth que esté disponible para tu cuenta y cumpla los requisitos de tu organización. Ambas opciones usan la configuración común del servidor MCP descrita anteriormente y las pruebas de conexión y los controles de acceso que se describen a continuación.
Con cualquiera de las opciones de OAuth, cuando usas session:role:all, Snowflake usa el rol predeterminado de cada usuario. El rol predeterminado debe figurar en la lista de roles permitidos de la integración OAuth, si está configurada, y no debe estar bloqueado. Tener otro rol aprobado no hace que se seleccione automáticamente.
OAuth integrado
Antes de continuar, completa las secciones comunes anteriores para crear el servidor MCP, conceder permisos, verificar el servidor e introducir sus datos en ChatGPT. Es obligatorio aunque hayas accedido directamente a esta sección.
Usa esta opción solo si la aplicación de socio de ChatGPT está disponible para tu cuenta de Snowflake y OAuth integrado está disponible en el cuadro de diálogo de configuración de ChatGPT.
Pide a un administrador de Snowflake que habilite la integración de socio de ChatGPT en la misma cuenta de Snowflake que aloja el servidor MCP. Reutiliza una integración de socio de ChatGPT que ya esté habilitada.
En el cuadro de diálogo de configuración de ChatGPT, usa OAuth integrado. No necesitas introducir un ID de cliente ni un secreto de cliente, ni registrar una URL de devolución de llamada.
Continúa con la sección «Conecta y gestiona Snowflake» que aparece más abajo para iniciar sesión, dar tu consentimiento y configurar el acceso. Después, completa la sección «Prueba la aplicación», incluidas las pruebas con miembros autorizados que no sean administradores.
El comportamiento del rol predeterminado, la lista de roles permitidos y los roles bloqueados descrito anteriormente también se aplica a esta opción.
Cliente OAuth personalizado
Antes de continuar, completa las secciones comunes anteriores para crear el servidor MCP, conceder permisos, verificar el servidor e introducir sus datos en ChatGPT. Es obligatorio aunque hayas accedido directamente a esta sección.
Para usar un cliente OAuth personalizado, necesitas un ID de cliente y un secreto de cliente de Snowflake. El comportamiento del rol predeterminado, la lista de roles permitidos y los roles bloqueados descrito anteriormente también se aplica a esta opción.
En el cuadro de diálogo de configuración de ChatGPT, selecciona Configuración avanzada de OAuth > Cliente OAuth definido por el usuario y copia exactamente la URL de devolución de llamada que aparece en ChatGPT.
Crea una integración de seguridad OAuth personalizada con
OAUTH_CLIENT_TYPE = 'CONFIDENTIAL'y estableceOAUTH_REDIRECT_URIen esa misma URL de devolución de llamada, sin modificaciones.Ejecuta la siguiente sentencia en Snowflake con el nombre de la integración en mayúsculas:
SELECT SYSTEM$SHOW_OAUTH_CLIENT_SECRETS('YOUR_INTEGRATION_NAME');Del resultado JSON, copia
oauth_client_idy pégalo en ID de cliente OAuth, y copiaoauth_client_secrety pégalo en Secreto de cliente OAuth en ChatGPT.Establece Método de autenticación del punto de acceso de tokens en
client_secret_basic.
Tras introducir las credenciales del cliente personalizado, continúa con las secciones «Conecta y gestiona Snowflake» y «Prueba la aplicación» que aparecen más abajo.
Conecta y gestiona Snowflake
Con cualquiera de las opciones de OAuth, en el mismo cuadro de diálogo de configuración de ChatGPT, selecciona Continuar, inicia sesión en Snowflake y autoriza la conexión. Puedes usar el SSO de tu organización si está configurado.
Para configurar un Área de trabajo, configura la política de instalación de complementos y el acceso por rol o grupo para los miembros que deban usarlo. Comprueba que tanto Snowflake como Snowflake - Plantilla oficial estén habilitados.
Los administradores del Área de trabajo son responsables de configurar el Acceso de usuarios para los roles que deban usar Snowflake.
Los administradores del Área de trabajo son responsables de revisar el Control de acciones de las herramientas expuestas.
Los administradores del Área de trabajo son responsables de revisar los Permisos de la aplicación para elegir cuándo ChatGPT pide permiso a los miembros antes de usarla.
Estos permisos de la aplicación se aplican a las conversaciones de ChatGPT. Los agentes del Área de trabajo usan controles específicos para cada agente, configurados por su creador, para determinar qué acciones de las aplicaciones están disponibles y cuándo se pide a los usuarios finales que las aprueben. Para obtener información sobre el comportamiento de los agentes, consulta Agentes del Área de trabajo de ChatGPT para Enterprise y Business.
Prueba la aplicación
Abre un chat, selecciona Snowflake y prueba la conexión.
Comprueba que ChatGPT detecte las herramientas que has configurado.
Ejecuta primero una acción de lectura de bajo riesgo, como una búsqueda o una consulta de solo lectura sobre datos aprobados.
Comprueba que los permisos de Snowflake impidan el acceso fuera del rol y los objetos aprobados.
Si configuras un Área de trabajo, haz pruebas con miembros autorizados que no sean administradores y tengan distintos roles predeterminados de Snowflake. Que un administrador pueda conectarse correctamente no confirma que todos los miembros puedan hacerlo.
Si administras un Área de trabajo, no basta con habilitar solo Snowflake. Si Snowflake - Plantilla oficial no se ha habilitado y conectado, el complemento puede aparecer deshabilitado para los miembros.
URL del servidor MCP y funcionamiento de OAuth
ChatGPT se conecta a la URL completa del servidor MCP gestionado por Snowflake:
https://<snowflake_host_prefix>.snowflakecomputing.com/api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server}
ChatGPT usa el prefijo de host de Snowflake de esa URL para resolver estos puntos de acceso OAuth de Snowflake:
Autorización:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/authorizeToken:
https://<snowflake_host_prefix>.snowflakecomputing.com/oauth/token-request
No pegues una URL de Snowsight, solo la URL raíz de la cuenta de Snowflake ni una URL con segmentos de ruta adicionales. La URL de MCP debe incluir /api/v2/databases/{database}/schemas/{schema}/mcp-servers/{server} y coincidir exactamente con tus objetos de Snowflake.
Solución de problemas
Snowflake está habilitado para un administrador, pero deshabilitado para un miembro
Comprueba que tanto Snowflake como Snowflake - Plantilla oficial estén habilitados en Consola de administración > Complementos.
Abre Snowflake - Plantilla oficial y completa el proceso de Conectar. No basta con habilitar la plantilla sin conectarla.
Abre Snowflake y comprueba que la plantilla aparezca como su aplicación requerida.
Comprueba que la política de instalación de complementos permita el rol o grupo del miembro afectado.
No se encuentra el servidor MCP
Vuelve a comprobar la URL completa del servidor MCP o los cuatro campos de la plantilla, si la pantalla de configuración los solicita.
Comprueba que el servidor MCP exista exactamente en esa base de datos y ese esquema.
No aparecen herramientas en ChatGPT
Comprueba que la especificación del servidor MCP incluya herramientas.
Comprueba que el rol tenga el permiso
USAGEsobre el servidor MCP.
Una herramienta aparece, pero falla al usarla
Comprueba que el rol tenga el permiso necesario sobre el objeto subyacente de Snowflake, como el servicio de búsqueda, la vista semántica, el almacén virtual, el procedimiento o la UDF.
La herramienta SQL falla
Comprueba que el nombre del almacén virtual sea correcto y que esté en funcionamiento.
Comprueba que el rol tenga el permiso
USAGEsobre el almacén virtual.Comprueba que se haya establecido
read_only: truesi querías un acceso de solo lectura.
El rol ALL solicitado se ha bloqueado explícitamente
Pide a tu administrador de Snowflake que compare tu rol predeterminado con los roles permitidos y bloqueados de la integración OAuth. Tener otro rol permitido no hace que se seleccione automáticamente. Si procede, cambia el rol predeterminado por un rol aprobado y vuelve a conectarte. Cambiar tu rol predeterminado también afecta a tus sesiones de Snowflake fuera de ChatGPT.
La autorización falla
Comprueba que el usuario pueda iniciar sesión en Snowflake.
Si usas
session:role:all, comprueba que la integración OAuth permita el rol predeterminado del usuario.Comprueba que la configuración use el flujo OAuth para MCP gestionado por Snowflake.
Si usas un cliente OAuth personalizado, comprueba que el ID de cliente y el Secreto de cliente coincidan con los de la integración OAuth de Snowflake y que su URI de redirección coincida exactamente con la URL de devolución de llamada que aparece en ChatGPT.
Si usas OAuth integrado, pide a un administrador de Snowflake que compruebe que la integración de socio de ChatGPT esté disponible y habilitada en la cuenta que aloja el servidor MCP.
La política de red o la lista de IP permitidas de Snowflake bloquea el conector
Pide a un administrador de Snowflake que actualice la política de red o las reglas de acceso de Snowflake.
Permite las conexiones entrantes desde los rangos de IP de salida de los conectores de ChatGPT vigentes.
Configura esta lista de IP permitidas en Snowflake. Es independiente de la lista de IP permitidas del Área de trabajo de ChatGPT.
Siempre que sea posible, automatiza las actualizaciones a partir del JSON publicado, ya que los rangos pueden cambiar.
Problema de conexión con el nombre de host
Usa el prefijo de host correcto de Snowflake. Los nombres de host de Snowflake con guiones bajos pueden causar problemas; es preferible usar guiones.
