Snowflake server for Cortex Agents, structured and unstructured data queries, SQL execution, object management and semantic views.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add snowflake --env SNOWFLAKE_PASSWORD='<SNOWFLAKE_PASSWORD>' --env SNOWFLAKE_PRIVATE_KEY='<SNOWFLAKE_PRIVATE_KEY>' --env SNOWFLAKE_PAT='<SNOWFLAKE_PAT>' --env SNOWFLAKE_ACCOUNT='<SNOWFLAKE_ACCOUNT>' --env SNOWFLAKE_USER='<SNOWFLAKE_USER>' --env SERVICE_CONFIG_FILE='<SERVICE_CONFIG_FILE>' -- uvx snowflake-labs-mcp --service-config-file '<SERVICE_CONFIG_FILE>'~/.codex/config.toml
[mcp_servers.snowflake]
command = "uvx"
args = ["snowflake-labs-mcp", "--service-config-file", "<SERVICE_CONFIG_FILE>"]
env = { SNOWFLAKE_PASSWORD = "<SNOWFLAKE_PASSWORD>", SNOWFLAKE_PRIVATE_KEY = "<SNOWFLAKE_PRIVATE_KEY>", SNOWFLAKE_PAT = "<SNOWFLAKE_PAT>", SNOWFLAKE_ACCOUNT = "<SNOWFLAKE_ACCOUNT>", SNOWFLAKE_USER = "<SNOWFLAKE_USER>", SERVICE_CONFIG_FILE = "<SERVICE_CONFIG_FILE>" }
# codex mcp add snowflake --env SNOWFLAKE_PASSWORD='<SNOWFLAKE_PASSWORD>' --env SNOWFLAKE_PRIVATE_KEY='<SNOWFLAKE_PRIVATE_KEY>' --env SNOWFLAKE_PAT='<SNOWFLAKE_PAT>' --env SNOWFLAKE_ACCOUNT='<SNOWFLAKE_ACCOUNT>' --env SNOWFLAKE_USER='<SNOWFLAKE_USER>' --env SERVICE_CONFIG_FILE='<SERVICE_CONFIG_FILE>' -- uvx snowflake-labs-mcp --service-config-file '<SERVICE_CONFIG_FILE>'~/.cursor/mcp.json
{
"mcpServers": {
"snowflake": {
"command": "uvx",
"args": [
"snowflake-labs-mcp",
"--service-config-file",
"<SERVICE_CONFIG_FILE>"
],
"env": {
"SNOWFLAKE_PASSWORD": "<SNOWFLAKE_PASSWORD>",
"SNOWFLAKE_PRIVATE_KEY": "<SNOWFLAKE_PRIVATE_KEY>",
"SNOWFLAKE_PAT": "<SNOWFLAKE_PAT>",
"SNOWFLAKE_ACCOUNT": "<SNOWFLAKE_ACCOUNT>",
"SNOWFLAKE_USER": "<SNOWFLAKE_USER>",
"SERVICE_CONFIG_FILE": "<SERVICE_CONFIG_FILE>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"snowflake": {
"type": "stdio",
"command": "uvx",
"args": [
"snowflake-labs-mcp",
"--service-config-file",
"<SERVICE_CONFIG_FILE>"
],
"env": {
"SNOWFLAKE_PASSWORD": "<SNOWFLAKE_PASSWORD>",
"SNOWFLAKE_PRIVATE_KEY": "<SNOWFLAKE_PRIVATE_KEY>",
"SNOWFLAKE_PAT": "<SNOWFLAKE_PAT>",
"SNOWFLAKE_ACCOUNT": "<SNOWFLAKE_ACCOUNT>",
"SNOWFLAKE_USER": "<SNOWFLAKE_USER>",
"SERVICE_CONFIG_FILE": "<SERVICE_CONFIG_FILE>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"snowflake": {
"command": "uvx",
"args": [
"snowflake-labs-mcp",
"--service-config-file",
"<SERVICE_CONFIG_FILE>"
],
"env": {
"SNOWFLAKE_PASSWORD": "<SNOWFLAKE_PASSWORD>",
"SNOWFLAKE_PRIVATE_KEY": "<SNOWFLAKE_PRIVATE_KEY>",
"SNOWFLAKE_PAT": "<SNOWFLAKE_PAT>",
"SNOWFLAKE_ACCOUNT": "<SNOWFLAKE_ACCOUNT>",
"SNOWFLAKE_USER": "<SNOWFLAKE_USER>",
"SERVICE_CONFIG_FILE": "<SERVICE_CONFIG_FILE>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"snowflake": {
"command": "uvx",
"args": [
"snowflake-labs-mcp",
"--service-config-file",
"<SERVICE_CONFIG_FILE>"
],
"env": {
"SNOWFLAKE_PASSWORD": "<SNOWFLAKE_PASSWORD>",
"SNOWFLAKE_PRIVATE_KEY": "<SNOWFLAKE_PRIVATE_KEY>",
"SNOWFLAKE_PAT": "<SNOWFLAKE_PAT>",
"SNOWFLAKE_ACCOUNT": "<SNOWFLAKE_ACCOUNT>",
"SNOWFLAKE_USER": "<SNOWFLAKE_USER>",
"SERVICE_CONFIG_FILE": "<SERVICE_CONFIG_FILE>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"snowflake": {
"command": "uvx",
"args": [
"snowflake-labs-mcp",
"--service-config-file",
"<SERVICE_CONFIG_FILE>"
],
"env": {
"SNOWFLAKE_PASSWORD": "<SNOWFLAKE_PASSWORD>",
"SNOWFLAKE_PRIVATE_KEY": "<SNOWFLAKE_PRIVATE_KEY>",
"SNOWFLAKE_PAT": "<SNOWFLAKE_PAT>",
"SNOWFLAKE_ACCOUNT": "<SNOWFLAKE_ACCOUNT>",
"SNOWFLAKE_USER": "<SNOWFLAKE_USER>",
"SERVICE_CONFIG_FILE": "<SERVICE_CONFIG_FILE>"
}
}
}
}Environment variables
SNOWFLAKE_PASSWORDSNOWFLAKE_PRIVATE_KEYSNOWFLAKE_PATSNOWFLAKE_ACCOUNTSNOWFLAKE_USERSERVICE_CONFIG_FILE
Replace the placeholders with your own credentials and keep them out of version control.