An MCP server that connects AI assistants to Snowflake so they can run SQL queries, inspect schemas, and gather data insights. It supports multiple authentication methods and can be configured via environment variables or TOML connection files.
From the registry: A Snowflake MCP server — SQL queries, schema exploration, and data insights for AI assistants

$ curl -LsSf https://astral.sh/uv/install.sh | shhttps://astral.sh/uv/install.sh/Please install the `mcp-snowflake-server` MCP server into my current AI client (that's you).
Required prerequisites (do these first if not already done):
- **Install uv** — Install the uv tool, which provides uvx for running the published MCP server package. Run: `curl -LsSf https://astral.sh/uv/install.sh | sh` (https://astral.sh/uv/install.sh/)
- **Install Python 3.13+** — Python 3.13 or newer is required by the package and is used by the recommended uvx invocation. (https://www.python.org/)
- **Create a Snowflake connection configuration** — Create either a TOML connections file (recommended) or set Snowflake authentication environment variables. The recommended setup is a TOML file with one or more named connections, then pass --connections-file and --connection-name. (https://github.com/nsphung/mcp-snowflake-server/blob/main/example_connections.toml)
Canonical MCP server config (stdio transport):
- command: `uvx`
- args: ["--python=3.13","--from","mcp-snowflake-server-nsp","mcp_snowflake_server","--connections-file","<absolute-path-to-snowflake_connections.toml>","--connection-name","<connection-name>"]
- optional environment variables:
- `SNOWFLAKE_ACCOUNT`: Snowflake account identifier when configuring via environment variables instead of a TOML connections file. (example: `<your-snowflake-account>`)
- `SNOWFLAKE_USER`: Snowflake username when configuring via environment variables or for TOML-based profiles that use user authentication. (example: `<your-snowflake-user>`)
- `SNOWFLAKE_PASSWORD`: Snowflake password for password authentication. Required when authenticator is snowflake and not using TOML. (example: `<your-snowflake-password>`)
- `SNOWFLAKE_AUTHENTICATOR`: Authentication method. Examples include snowflake, snowflake_jwt, externalbrowser, oauth_client_credentials, or oauth. (example: `<your-authenticator>`)
- `SNOWFLAKE_WAREHOUSE`: Snowflake virtual warehouse to use when configuring via environment variables. (example: `<your-warehouse>`)
- `SNOWFLAKE_DATABASE`: Default Snowflake database. Required when configuring directly via environment variables. (example: `<your-database>`)
- `SNOWFLAKE_SCHEMA`: Default Snowflake schema. Required when configuring directly via environment variables. (example: `<your-schema>`)
- `SNOWFLAKE_ROLE`: Snowflake role to assume. (example: `<your-role>`)
- `SNOWFLAKE_PRIVATE_KEY_FILE`: Absolute path to a .p8 private key file for key-pair authentication. (example: `<absolute-path-to-private-key-file>`)
- `SNOWFLAKE_PRIVATE_KEY_FILE_PWD`: Passphrase for an encrypted private key file. (example: `<your-private-key-passphrase>`)
- `SNOWFLAKE_OAUTH_CLIENT_ID`: OAuth client ID for oauth_client_credentials authentication. (example: `<your-oauth-client-id>`)
- `SNOWFLAKE_OAUTH_CLIENT_SECRET`: OAuth client secret for oauth_client_credentials authentication. (example: `<your-oauth-client-secret>`)
- `SNOWFLAKE_OAUTH_TOKEN_REQUEST_URL`: OAuth token endpoint URL for oauth_client_credentials authentication. (example: `<your-oauth-token-request-url>`)
- `SNOWFLAKE_OAUTH_SCOPE`: OAuth scope for oauth_client_credentials authentication. (example: `<your-oauth-scope>`)
- `SNOWFLAKE_TOKEN`: Pre-fetched OAuth bearer token for oauth authentication. (example: `<your-oauth-bearer-token>`)
Note: Preferred portable install path is uvx with the published PyPI package mcp-snowflake-server-nsp. The README recommends TOML connection files over direct env/CLI credentials. --connections-file and --connection-name must be provided together. Optional runtime flags include --allow_write, --prefetch/--no-prefetch, --exclude_tools, --exclude-json-results, --log_dir, and --log_level. If not using a TOML file, the server can also be configured with direct CLI flags or SNOWFLAKE_* environment variables; required env vars depend on the chosen authenticator.
Add this MCP server to my current client's config in the correct format for you. If you need secrets or credentials I haven't provided, ASK me — do not invent values or leave raw placeholders. After adding it, tell me how to verify the server is connected.SNOWFLAKE_USERrequiredSnowflake username used for authentication.SNOWFLAKE_ACCOUNTrequiredSnowflake account identifier.SNOWFLAKE_PASSWORDrequiredPassword for Snowflake password authentication.SNOWFLAKE_PRIVATE_KEY_FILErequiredPath to the private key file for key-pair authentication.SNOWFLAKE_OAUTH_CLIENT_IDrequiredOAuth client ID for client-credentials authentication.SNOWFLAKE_OAUTH_CLIENT_SECRETrequiredOAuth client secret for client-credentials authentication.SNOWFLAKE_OAUTH_TOKEN_REQUEST_URLrequiredToken endpoint URL for OAuth client-credentials authentication.SNOWFLAKE_TOKENrequiredAI orchestration with hive-mind swarms, neural networks, and 87 MCP tools for enterprise dev.