A Snowflake MCP server lets an AI explore your warehouse — list databases and schemas, inspect tables and run analytical SQL. The cleanest route in 2026 is Google's open-source MCP Toolbox for Databases, which supports Snowflake among many engines. Here is the setup.
Use the MCP Toolbox for Databases
The open-source mcp-toolbox server connects to Snowflake via a source configuration (account, warehouse, database, user and credentials). You run the toolbox locally (default port 5000) and point your AI client at it over HTTP. Because it is the same server used for Postgres, MySQL and BigQuery, one tool covers a mixed data estate.
Provide the connection details Snowflake needs:
- account identifier (e.g.
orgname-accountname) - user and authentication (key-pair auth is preferred over a raw password)
- warehouse, database, schema
- role — use a dedicated read-only role (see below)
Create a read-only role first
Do not connect with ACCOUNTADMIN. Create a role that can only read the objects in scope:
CREATE ROLE ai_readonly;
GRANT USAGE ON WAREHOUSE my_wh TO ROLE ai_readonly;
GRANT USAGE ON DATABASE analytics TO ROLE ai_readonly;
GRANT USAGE ON ALL SCHEMAS IN DATABASE analytics TO ROLE ai_readonly;
GRANT SELECT ON ALL TABLES IN DATABASE analytics TO ROLE ai_readonly;
Connect the MCP server as a user assigned this role. The AI can analyse but never mutate. This is the least-privilege rule from MCP security best practices.
Verify
Ask: "List the schemas in the analytics database and describe the orders table." Real metadata back confirms it works.
Common problems
Insufficient privileges— the role is missing aUSAGE/SELECTgrant on that object.Warehouse not active— the warehouse is suspended; grantOPERATEor resume it.- Auth failures — prefer key-pair auth; check the account identifier format.
- Port 5000 in use — start the toolbox on another port and update the client URL.
Going further
For BigQuery, the same toolbox applies — see BigQuery MCP setup. Choosing between them? Read MCP for BigQuery vs Snowflake and the databases category.