snowflake-analytics-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SNOWFLAKE_ROLE | No | Role to assume | |
| SNOWFLAKE_TOKEN | No | OAuth access token (with `SNOWFLAKE_AUTHENTICATOR=OAUTH`) | |
| QUERY_TIMEOUT_MS | No | Client-side query timeout | 60000 |
| SNOWFLAKE_SCHEMA | No | Default schema | |
| SNOWFLAKE_ACCOUNT | Yes | Account identifier, e.g. `xy12345.eu-central-1` or `orgname-account_name` | |
| SNOWFLAKE_DATABASE | No | Default database (used by `list_tables`, and as the fallback when a caller passes an inaccessible database) | |
| SNOWFLAKE_PASSWORD | No | Password (required unless using key-pair/OAuth) | |
| SNOWFLAKE_USERNAME | Yes | Login name | |
| SNOWFLAKE_READ_ONLY | No | Blocks writes/DDL in `execute_query`. Set `false` to allow them | true |
| SNOWFLAKE_ROW_LIMIT | No | Hard cap on returned rows | 1000 |
| SNOWFLAKE_WAREHOUSE | No | Virtual warehouse to use | |
| SNOWFLAKE_PRIVATE_KEY | No | PEM private key contents | |
| SNOWFLAKE_CORTEX_MODEL | No | Default model for Cortex AI_COMPLETE / text-to-SQL | llama3.1-8b |
| SNOWFLAKE_AUTHENTICATOR | No | Authentication method: `SNOWFLAKE` (password), `SNOWFLAKE_JWT` (key-pair), `OAUTH` | SNOWFLAKE |
| SNOWFLAKE_CORTEX_ENABLED | No | Register the Cortex AI tools. Set `false` to hide them | true |
| SNOWFLAKE_PRIVATE_KEY_PATH | No | Path to a PEM private key file (alternative to above) | |
| SNOWFLAKE_PRIVATE_KEY_PASSPHRASE | No | Passphrase, if the key is encrypted |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_tablesA | List available Snowflake tables (and views) for analytics table discovery. Returns a flat array of { table_name } objects. Scoped to the connection's database/schema unless overridden. |
| test_connectionA | Verify connectivity and return the current Snowflake version, account, user, role, warehouse, database and schema. |
| list_databasesA | List all databases the current role can access. |
| list_schemasA | List schemas in a database. Defaults to SNOWFLAKE_DATABASE when |
| list_warehousesA | List virtual warehouses the current role can see, with size and state. |
| describe_tableA | Return column names, data types, nullability and defaults for a table (or view). |
| get_table_sampleA | Fetch a sample of rows from a table. Use this to preview data for a selected table. |
| execute_queryA | Run a SQL query and return rows as JSON. Read-only by default (SELECT/SHOW/DESCRIBE/WITH). Set SNOWFLAKE_READ_ONLY=false to allow writes/DDL. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |