Skip to main content

Snowflake MCP server

Snowflake is a cloud-native data warehouse that provides unlimited scalability, flexible compute, and native support for semi-structured data. With this MCP server, AI agents can execute SQL queries, manage databases and schemas, handle data sharing, and manage warehouse resources through natural language commands.

Setting up an MCP server

This article covers the standard steps for creating an MCP server in AI Gateway and connecting it to an AI client. The steps are the same for every integration — application-specific details (API credentials, OAuth endpoints, and scopes) are covered in the Authentication section on this page.

Before you begin

You'll need:

  • Access to AI Gateway with permission to create MCP servers.
  • API credentials for the application you're connecting (see the Authentication section on this page for what to collect).

Create an MCP server

Find the app in the catalog

  1. Sign in to AI Gateway and select App Catalog from the left navigation.
  2. Search for the application you want to connect, then select it from the catalog.
  3. Select Create MCP Server to start the wizard.

App Configuration

Confirm the Base URL for the API, then, under Tools, select the endpoints you want to expose. Select Next.

MCP Server Setup

  1. Enter a Name for your server — something descriptive that identifies both the application and its purpose.
  2. Enter a Description so your team knows what the server is for.
  3. Set the log level: choose Production Mode for terser logs, or Non-Production Mode for more verbose logs that can help with debugging.
  4. Select Next.

Authentication

Enter the authentication details for the application. This varies by service — see the Authentication section on this page for the specific credentials, OAuth URLs, and scopes to use.

Review

Look over the summary of your MCP server configuration, then select Create & Deploy. AI Gateway provisions the server and provides a server URL you'll use when configuring your AI client.


Connect to an AI client

Once your server is deployed, you'll need to add it to the AI client your team uses. Select your client for setup instructions:

Tips

  • You can create multiple MCP servers for the same application — for example, a read-only server for reporting agents and a read-write server for automation workflows.
  • If you're unsure which OAuth scopes to request, start with the minimum read-only set and add write scopes only when needed. Most application pages include scope recommendations.

Authentication

Snowflake supports OAuth 2.0 authentication through security integrations. Create an OAuth security integration in your Snowflake account to obtain credentials. Replace {org-name} and {account-name} with your actual Snowflake organization and account names. In Snowflake, run a CREATE SECURITY INTEGRATION SQL command with your OAuth settings to register the integration and retrieve your client credentials.

ValueSetting
Auth endpointhttps://{org-name}-{account-name}.snowflakecomputing.com/oauth/authorize
Token endpointhttps://{org-name}-{account-name}.snowflakecomputing.com/oauth/token

Available tools

The Snowflake MCP server exposes SQL query execution, database and schema management, data sharing, warehouse operations, and user/role management APIs.

ToolPurpose
SQL Query ExecutionExecute SELECT, INSERT, UPDATE, DELETE queries; run multi-statement transactions; get query results
Database ManagementCreate and drop databases; list databases; manage database properties; configure sharing
Schema OperationsCreate and manage schemas; handle schema objects; configure schema-level permissions
Data SharingShare databases with other accounts; manage share objects; configure data reader accounts
Warehouse ManagementCreate and scale warehouses; manage warehouse lifecycle; configure auto-suspend and auto-scale
User & Role ManagementCreate users and roles; manage permissions; configure password policies

Tips

Use clustering keys on large tables to improve query performance and leverage result caching for frequently-run queries — this reduces both latency and credit consumption.

Choose warehouse sizes based on workload complexity and enable auto-suspend to avoid paying for idle compute.

When loading data, batch small files together and use COPY INTO with transformations rather than loading raw and transforming after.

Create separate databases for different projects or environments and use schema-level permissions to control access without granting broad account-level rights.

Periodically review warehouse utilization in the Query History view to identify underused resources and resize accordingly.