Search / io.github.nsphung/mcp-snowflake-server
Snowflake MCP Server
L0· runs locallyA Snowflake MCP server — SQL queries, schema exploration, and data insights for AI assistants
v0.14.4 · active · repository · descriptor JSON · versions
Search / io.github.nsphung/mcp-snowflake-server
L0· runs locallyA Snowflake MCP server — SQL queries, schema exploration, and data insights for AI assistants
v0.14.4 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"mcp-snowflake-server": {
"command": "uvx",
"args": [
"mcp-snowflake-server-nsp==0.14.4",
"--account",
"--user",
"--password",
"--warehouse",
"--database",
"--schema",
"--role",
"--authenticator",
"--private_key_file",
"--private_key_file_pwd",
"--connections-file",
"--connection-name",
"--allow_write",
"--prefetch",
"--exclude_tools",
"--exclude-json-results",
"--log_dir",
"--log_level",
"INFO"
],
"env": {
"SNOWFLAKE_PASSWORD": "${SNOWFLAKE_PASSWORD}",
"SNOWFLAKE_PRIVATE_KEY_FILE_PWD": "${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}",
"SNOWFLAKE_OAUTH_CLIENT_SECRET": "${SNOWFLAKE_OAUTH_CLIENT_SECRET}",
"SNOWFLAKE_TOKEN": "${SNOWFLAKE_TOKEN}"
}
}
}
}claude mcp add mcp-snowflake-server -e "SNOWFLAKE_PASSWORD=${SNOWFLAKE_PASSWORD}" -e "SNOWFLAKE_PRIVATE_KEY_FILE_PWD=${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}" -e "SNOWFLAKE_OAUTH_CLIENT_SECRET=${SNOWFLAKE_OAUTH_CLIENT_SECRET}" -e "SNOWFLAKE_TOKEN=${SNOWFLAKE_TOKEN}" -- uvx mcp-snowflake-server-nsp==0.14.4 --account --user --password --warehouse --database --schema --role --authenticator --private_key_file --private_key_file_pwd --connections-file --connection-name --allow_write --prefetch --exclude_tools --exclude-json-results --log_dir --log_level INFO[mcp_servers.mcp-snowflake-server]
command = "uvx"
args = ["mcp-snowflake-server-nsp==0.14.4", "--account", "--user", "--password", "--warehouse", "--database", "--schema", "--role", "--authenticator", "--private_key_file", "--private_key_file_pwd", "--connections-file", "--connection-name", "--allow_write", "--prefetch", "--exclude_tools", "--exclude-json-results", "--log_dir", "--log_level", "INFO"]
env = { "SNOWFLAKE_PASSWORD" = "${SNOWFLAKE_PASSWORD}", "SNOWFLAKE_PRIVATE_KEY_FILE_PWD" = "${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}", "SNOWFLAKE_OAUTH_CLIENT_SECRET" = "${SNOWFLAKE_OAUTH_CLIENT_SECRET}", "SNOWFLAKE_TOKEN" = "${SNOWFLAKE_TOKEN}" }
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"mcp-snowflake-server": {
"type": "local",
"command": [
"uvx",
"mcp-snowflake-server-nsp==0.14.4",
"--account",
"--user",
"--password",
"--warehouse",
"--database",
"--schema",
"--role",
"--authenticator",
"--private_key_file",
"--private_key_file_pwd",
"--connections-file",
"--connection-name",
"--allow_write",
"--prefetch",
"--exclude_tools",
"--exclude-json-results",
"--log_dir",
"--log_level",
"INFO"
],
"enabled": true,
"environment": {
"SNOWFLAKE_PASSWORD": "{env:SNOWFLAKE_PASSWORD}",
"SNOWFLAKE_PRIVATE_KEY_FILE_PWD": "{env:SNOWFLAKE_PRIVATE_KEY_FILE_PWD}",
"SNOWFLAKE_OAUTH_CLIENT_SECRET": "{env:SNOWFLAKE_OAUTH_CLIENT_SECRET}",
"SNOWFLAKE_TOKEN": "{env:SNOWFLAKE_TOKEN}"
}
}
}
}{
"mcpServers": {
"mcp-snowflake-server": {
"command": "uvx",
"args": [
"mcp-snowflake-server-nsp==0.14.4",
"--account",
"--user",
"--password",
"--warehouse",
"--database",
"--schema",
"--role",
"--authenticator",
"--private_key_file",
"--private_key_file_pwd",
"--connections-file",
"--connection-name",
"--allow_write",
"--prefetch",
"--exclude_tools",
"--exclude-json-results",
"--log_dir",
"--log_level",
"INFO"
],
"env": {
"SNOWFLAKE_PASSWORD": "${SNOWFLAKE_PASSWORD}",
"SNOWFLAKE_PRIVATE_KEY_FILE_PWD": "${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}",
"SNOWFLAKE_OAUTH_CLIENT_SECRET": "${SNOWFLAKE_OAUTH_CLIENT_SECRET}",
"SNOWFLAKE_TOKEN": "${SNOWFLAKE_TOKEN}"
}
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=mcp-snowflake-server&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyJtY3Atc25vd2ZsYWtlLXNlcnZlci1uc3A9PTAuMTQuNCIsIi0tYWNjb3VudCIsIi0tdXNlciIsIi0tcGFzc3dvcmQiLCItLXdhcmVob3VzZSIsIi0tZGF0YWJhc2UiLCItLXNjaGVtYSIsIi0tcm9sZSIsIi0tYXV0aGVudGljYXRvciIsIi0tcHJpdmF0ZV9rZXlfZmlsZSIsIi0tcHJpdmF0ZV9rZXlfZmlsZV9wd2QiLCItLWNvbm5lY3Rpb25zLWZpbGUiLCItLWNvbm5lY3Rpb24tbmFtZSIsIi0tYWxsb3dfd3JpdGUiLCItLXByZWZldGNoIiwiLS1leGNsdWRlX3Rvb2xzIiwiLS1leGNsdWRlLWpzb24tcmVzdWx0cyIsIi0tbG9nX2RpciIsIi0tbG9nX2xldmVsIiwiSU5GTyJdLCJlbnYiOnsiU05PV0ZMQUtFX1BBU1NXT1JEIjoiJHtTTk9XRkxBS0VfUEFTU1dPUkR9IiwiU05PV0ZMQUtFX1BSSVZBVEVfS0VZX0ZJTEVfUFdEIjoiJHtTTk9XRkxBS0VfUFJJVkFURV9LRVlfRklMRV9QV0R9IiwiU05PV0ZMQUtFX09BVVRIX0NMSUVOVF9TRUNSRVQiOiIke1NOT1dGTEFLRV9PQVVUSF9DTElFTlRfU0VDUkVUfSIsIlNOT1dGTEFLRV9UT0tFTiI6IiR7U05PV0ZMQUtFX1RPS0VOfSJ9fQ%3D%3D"
}{
"servers": {
"mcp-snowflake-server": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-snowflake-server-nsp==0.14.4",
"--account",
"--user",
"--password",
"--warehouse",
"--database",
"--schema",
"--role",
"--authenticator",
"--private_key_file",
"--private_key_file_pwd",
"--connections-file",
"--connection-name",
"--allow_write",
"--prefetch",
"--exclude_tools",
"--exclude-json-results",
"--log_dir",
"--log_level",
"INFO"
],
"env": {
"SNOWFLAKE_PASSWORD": "${SNOWFLAKE_PASSWORD}",
"SNOWFLAKE_PRIVATE_KEY_FILE_PWD": "${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}",
"SNOWFLAKE_OAUTH_CLIENT_SECRET": "${SNOWFLAKE_OAUTH_CLIENT_SECRET}",
"SNOWFLAKE_TOKEN": "${SNOWFLAKE_TOKEN}"
}
}
}
}{
"mcpServers": {
"mcp-snowflake-server": {
"command": "uvx",
"args": [
"mcp-snowflake-server-nsp==0.14.4",
"--account",
"--user",
"--password",
"--warehouse",
"--database",
"--schema",
"--role",
"--authenticator",
"--private_key_file",
"--private_key_file_pwd",
"--connections-file",
"--connection-name",
"--allow_write",
"--prefetch",
"--exclude_tools",
"--exclude-json-results",
"--log_dir",
"--log_level",
"INFO"
],
"env": {
"SNOWFLAKE_PASSWORD": "${SNOWFLAKE_PASSWORD}",
"SNOWFLAKE_PRIVATE_KEY_FILE_PWD": "${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}",
"SNOWFLAKE_OAUTH_CLIENT_SECRET": "${SNOWFLAKE_OAUTH_CLIENT_SECRET}",
"SNOWFLAKE_TOKEN": "${SNOWFLAKE_TOKEN}"
}
}
}
}extensions:
"mcp-snowflake-server":
enabled: true
name: "mcp-snowflake-server"
type: stdio
cmd: "uvx"
args:
- "mcp-snowflake-server-nsp==0.14.4"
- "--account"
- "--user"
- "--password"
- "--warehouse"
- "--database"
- "--schema"
- "--role"
- "--authenticator"
- "--private_key_file"
- "--private_key_file_pwd"
- "--connections-file"
- "--connection-name"
- "--allow_write"
- "--prefetch"
- "--exclude_tools"
- "--exclude-json-results"
- "--log_dir"
- "--log_level"
- "INFO"
envs:
"SNOWFLAKE_PASSWORD": "${SNOWFLAKE_PASSWORD}"
"SNOWFLAKE_PRIVATE_KEY_FILE_PWD": "${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}"
"SNOWFLAKE_OAUTH_CLIENT_SECRET": "${SNOWFLAKE_OAUTH_CLIENT_SECRET}"
"SNOWFLAKE_TOKEN": "${SNOWFLAKE_TOKEN}"
timeout: 300
Placeholders to fill from your own secret store: ${SNOWFLAKE_PASSWORD}, ${SNOWFLAKE_PRIVATE_KEY_FILE_PWD}, ${SNOWFLAKE_OAUTH_CLIENT_SECRET}, ${SNOWFLAKE_TOKEN}. The registry never accepts secret values.
This is a local package: the command runs on your machine.
Not scored: fewer than three checks apply, usually because no remote answered a credential-free probe or the server is a local package.
protocol.modern, protocol.stateless, protocol.transport, protocol.list_ttlno remote answered a protocol handshake (not probed yet, unreachable, or local-only)auth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptions, tools.description_length, tools.schemas, tools.annotations, tools.directory_hints, tools.token_cost, tools.api_dumptool list unknown (behind auth, not probed, or empty)stability.changes, stability.rug_pulltool list unknowndeps.known_vulns1 advisory of lower severity or without a published fix: GHSA-qqj6-54q6-cxv6 in [email protected] (direct, fixed in 4.7.3)deps.mcp_sdk_versionmcp 1.28.1 has 1 known advisory of lower severity or without a fix (GHSA-84m7-p3x7-pcfv)deps.resolvable[email protected] resolved: 60 packagesNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo ~liveness-unmeasured +updated-26d-ago -unpinned-packages(1)
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
[email protected] PyPI59 dependencies, resolved · MCP SDK mcp 1.28.1 · advisories checked 2026-10-19
| advisory | severity | package | fixed in |
|---|---|---|---|
| GHSA-84m7-p3x7-pcfvMCP Python SDK: Unbounded Session Accumulation in StreamableHTTP Transport Enables Resource Exhaustion | moderate | [email protected]MCP SDK, direct | fixed in 1.30.0 |
| GHSA-qqj6-54q6-cxv6Snowflake drivers writes sensitive information to logs | moderate | [email protected]direct | fixed in 4.7.3 |
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
mcp-snowflake-server-nsp | pypi | 0.14.4 | uvx | SNOWFLAKE_PASSWORD, SNOWFLAKE_PRIVATE_KEY_FILE_PWD, SNOWFLAKE_OAUTH_CLIENT_SECRET, SNOWFLAKE_TOKEN |
docker.io/nsphung/mcp-snowflake-server-nsp:0.14.4 | oci | unpinned | docker | SNOWFLAKE_PASSWORD, SNOWFLAKE_PRIVATE_KEY_FILE_PWD, SNOWFLAKE_OAUTH_CLIENT_SECRET, SNOWFLAKE_TOKEN |
No tools observed. Local packages are never executed by the registry.
Schemas: list_tools.
{
"name": "io.github.nsphung/mcp-snowflake-server",
"title": "Snowflake MCP Server",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"version": "0.14.4",
"packages": [
{
"version": "0.14.4",
"transport": {
"type": "stdio"
},
"identifier": "mcp-snowflake-server-nsp",
"runtimeHint": "uvx",
"registryType": "pypi",
"registryBaseUrl": "https://pypi.org",
"packageArguments": [
{
"name": "--account",
"type": "named",
"description": "Snowflake account identifier"
},
{
"name": "--user",
"type": "named",
"description": "Snowflake username"
},
{
"name": "--password",
"type": "named",
"description": "Password (not required for key-pair / SSO)"
},
{
"name": "--warehouse",
"type": "named",
"description": "Virtual warehouse to use"
},
{
"name": "--database",
"type": "named",
"description": "Default database"
},
{
"name": "--schema",
"type": "named",
"description": "Default schema"
},
{
"name": "--role",
"type": "named",
"description": "Role to assume"
},
{
"name": "--authenticator",
"type": "named",
"description": "Authentication method. Defaults to 'snowflake' if not set. Valid values: snowflake, externalbrowser, snowflake_jwt, oauth, oauth_client_credentials"
},
{
"name": "--private_key_file",
"type": "named",
"description": "Absolute path to .p8 private key file"
},
{
"name": "--private_key_file_pwd",
"type": "named",
"description": "Passphrase for encrypted private key"
},
{
"name": "--connections-file",
"type": "named",
"description": "Path to TOML connections file"
},
{
"name": "--connection-name",
"type": "named",
"description": "Connection profile name in TOML file (required with --connections-file)"
},
{
"name": "--allow_write",
"type": "named",
"description": "Enable write_query and create_table tools"
},
{
"name": "--prefetch",
"type": "named",
"description": "Pre-load table schema as context://table/* resources (disables list_tables / describe_table)"
},
{
"name": "--exclude_tools",
"type": "named",
"description": "Space-separated list of tool names to disable"
},
{
"name": "--exclude-json-results",
"type": "named",
"description": "Omit embedded JSON resources from responses (reduces context window usage)"
},
{
"name": "--log_dir",
"type": "named",
"description": "Directory for log file output"
},
{
"name": "--log_level",
"type": "named",
"choices": [
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"default": "INFO",
"description": "Log verbosity: DEBUG, INFO, WARNING, ERROR, CRITICAL"
}
],
"environmentVariables": [
{
"name": "SNOWFLAKE_ACCOUNT",
"format": "string",
"description": "Snowflake account identifier"
},
{
"name": "SNOWFLAKE_USER",
"format": "string",
"description": "Snowflake username"
},
{
"name": "SNOWFLAKE_PASSWORD",
"format": "string",
"isSecret": true,
"description": "Password (not required for key-pair / SSO)"
},
{
"name": "SNOWFLAKE_WAREHOUSE",
"format": "string",
"description": "Virtual warehouse to use"
},
{
"name": "SNOWFLAKE_DATABASE",
"format": "string",
"description": "Default database"
},
{
"name": "SNOWFLAKE_SCHEMA",
"format": "string",
"description": "Default schema"
},
{
"name": "SNOWFLAKE_ROLE",
"format": "string",
"description": "Role to assume"
},
{
"name": "SNOWFLAKE_AUTHENTICATOR",
"format": "string",
"description": "Authentication method. Defaults to 'snowflake' if not set. Valid values: snowflake, externalbrowser, snowflake_jwt, oauth, oauth_client_credentials"
},
{
"name": "SNOWFLAKE_PRIVATE_KEY_FILE",
"format": "string",
"description": "Absolute path to .p8 private key file"
},
{
"name": "SNOWFLAKE_PRIVATE_KEY_FILE_PWD",
"format": "string",
"isSecret": true,
"description": "Passphrase for encrypted private key"
},
{
"name": "SNOWFLAKE_OAUTH_CLIENT_ID",
"format": "string",
"description": "OAuth 2.0 client ID (required for oauth_client_credentials authenticator)"
},
{
"name": "SNOWFLAKE_OAUTH_CLIENT_SECRET",
"format": "string",
"isSecret": true,
"description": "OAuth 2.0 client secret (required for oauth_client_credentials authenticator)"
},
{
"name": "SNOWFLAKE_OAUTH_TOKEN_REQUEST_URL",
"format": "string",
"description": "OAuth 2.0 token endpoint URL (required for oauth_client_credentials authenticator)"
},
{
"name": "SNOWFLAKE_OAUTH_SCOPE",
"format": "string",
"description": "OAuth 2.0 scope (optional, e.g. session:role:MY_ROLE)"
},
{
"name": "SNOWFLAKE_TOKEN",
"format": "string",
"isSecret": true,
"description": "Pre-fetched OAuth bearer token (required for oauth authenticator)"
}
]
},
{
"transport": {
"type": "stdio"
},
"identifier": "docker.io/nsphung/mcp-snowflake-server-nsp:0.14.4",
"runtimeHint": "docker",
"registryType": "oci",
"packageArguments": [
{
"name": "--account",
"type": "named",
"description": "Snowflake account identifier"
},
{
"name": "--user",
"type": "named",
"description": "Snowflake username"
},
{
"name": "--password",
"type": "named",
"description": "Password (not required for key-pair / SSO)"
},
{
"name": "--warehouse",
"type": "named",
"description": "Virtual warehouse to use"
},
{
"name": "--database",
"type": "named",
"description": "Default database"
},
{
"name": "--schema",
"type": "named",
"description": "Default schema"
},
{
"name": "--role",
"type": "named",
"description": "Role to assume"
},
{
"name": "--authenticator",
"type": "named",
"description": "Authentication method. Defaults to 'snowflake' if not set. Valid values: snowflake, externalbrowser, snowflake_jwt, oauth, oauth_client_credentials"
},
{
"name": "--private_key_file",
"type": "named",
"description": "Absolute path to .p8 private key file"
},
{
"name": "--private_key_file_pwd",
"type": "named",
"description": "Passphrase for encrypted private key"
},
{
"name": "--connections-file",
"type": "named",
"description": "Path to TOML connections file"
},
{
"name": "--connection-name",
"type": "named",
"description": "Connection profile name in TOML file (required with --connections-file)"
},
{
"name": "--allow_write",
"type": "named",
"description": "Enable write_query and create_table tools"
},
{
"name": "--prefetch",
"type": "named",
"description": "Pre-load table schema as context://table/* resources (disables list_tables / describe_table)"
},
{
"name": "--exclude_tools",
"type": "named",
"description": "Space-separated list of tool names to disable"
},
{
"name": "--exclude-json-results",
"type": "named",
"description": "Omit embedded JSON resources from responses (reduces context window usage)"
},
{
"name": "--log_dir",
"type": "named",
"description": "Directory for log file output"
},
{
"name": "--log_level",
"type": "named",
"choices": [
"DEBUG",
"INFO",
"WARNING",
"ERROR",
"CRITICAL"
],
"default": "INFO",
"description": "Log verbosity: DEBUG, INFO, WARNING, ERROR, CRITICAL"
}
],
"runtimeArguments": [
{
"type": "positional",
"value": "--rm"
},
{
"type": "positional",
"value": "-i"
}
],
"environmentVariables": [
{
"name": "SNOWFLAKE_ACCOUNT",
"format": "string",
"description": "Snowflake account identifier"
},
{
"name": "SNOWFLAKE_USER",
"format": "string",
"description": "Snowflake username"
},
{
"name": "SNOWFLAKE_PASSWORD",
"format": "string",
"isSecret": true,
"description": "Password (not required for key-pair / SSO)"
},
{
"name": "SNOWFLAKE_WAREHOUSE",
"format": "string",
"description": "Virtual warehouse to use"
},
{
"name": "SNOWFLAKE_DATABASE",
"format": "string",
"description": "Default database"
},
{
"name": "SNOWFLAKE_SCHEMA",
"format": "string",
"description": "Default schema"
},
{
"name": "SNOWFLAKE_ROLE",
"format": "string",
"description": "Role to assume"
},
{
"name": "SNOWFLAKE_AUTHENTICATOR",
"format": "string",
"description": "Authentication method. Defaults to 'snowflake' if not set. Valid values: snowflake, externalbrowser, snowflake_jwt, oauth, oauth_client_credentials"
},
{
"name": "SNOWFLAKE_PRIVATE_KEY_FILE",
"format": "string",
"description": "Absolute path to .p8 private key file"
},
{
"name": "SNOWFLAKE_PRIVATE_KEY_FILE_PWD",
"format": "string",
"isSecret": true,
"description": "Passphrase for encrypted private key"
},
{
"name": "SNOWFLAKE_OAUTH_CLIENT_ID",
"format": "string",
"description": "OAuth 2.0 client ID (required for oauth_client_credentials authenticator)"
},
{
"name": "SNOWFLAKE_OAUTH_CLIENT_SECRET",
"format": "string",
"isSecret": true,
"description": "OAuth 2.0 client secret (required for oauth_client_credentials authenticator)"
},
{
"name": "SNOWFLAKE_OAUTH_TOKEN_REQUEST_URL",
"format": "string",
"description": "OAuth 2.0 token endpoint URL (required for oauth_client_credentials authenticator)"
},
{
"name": "SNOWFLAKE_OAUTH_SCOPE",
"format": "string",
"description": "OAuth 2.0 scope (optional, e.g. session:role:MY_ROLE)"
},
{
"name": "SNOWFLAKE_TOKEN",
"format": "string",
"isSecret": true,
"description": "Pre-fetched OAuth bearer token (required for oauth authenticator)"
}
]
}
],
"repository": {
"url": "https://github.com/nsphung/mcp-snowflake-server",
"source": "github"
},
"description": "A Snowflake MCP server — SQL queries, schema exploration, and data insights for AI assistants"
}