snowflake-analytics-mcp-server
Provides tools for querying and exploring a Snowflake data warehouse, including listing databases, schemas, tables, and warehouses, describing table schemas, sampling data, and executing SQL queries (read-only by default).
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@snowflake-analytics-mcp-serverlist the tables in the ANALYTICS_DB.PUBLIC schema"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
snowflake-analytics-mcp-server
A Model Context Protocol server for Snowflake, built for the Analytics Model platform. It connects to Snowflake via the official snowflake-sdk driver (pure Node — no client binary needed, unlike the Oracle server) and exposes table-discovery and query tools over stdio. Runnable directly with npx.
The list_tables tool returns the platform's exact table-discovery envelope, so it drops straight into the same fetchMcpTables flow as the Clio, Dropbox and Shopify servers.
Install
npm install -g snowflake-analytics-mcp-server
# or run directly (no install):
npx -y snowflake-analytics-mcp-serverRelated MCP server: IcebergMCP
Configuration
All credentials come from environment variables.
Variable | Required | Default | Description |
| ✅ | — | Account identifier, e.g. |
| ✅ | — | Login name |
| ✅ (password auth) | — | Password (required unless using key-pair/OAuth) |
| — | — | Virtual warehouse to use |
| recommended | — | Default database (used by |
| recommended | — | Default schema |
| — | — | Role to assume |
| — |
|
|
| key-pair | — | PEM private key contents |
| key-pair | — | Path to a PEM private key file (alternative to above) |
| — | — | Passphrase, if the key is encrypted |
| OAuth | — | OAuth access token (with |
| — |
| Blocks writes/DDL in |
| — |
| Hard cap on returned rows |
| — |
| Client-side query timeout |
Account identifier tip
Use hyphens, not underscores, in the account identifier if a client has trouble connecting (e.g. orgname-account-name).
Claude Desktop config
Add to claude_desktop_config.json:
{
"mcpServers": {
"snowflake": {
"command": "npx",
"args": ["-y", "snowflake-analytics-mcp-server"],
"env": {
"SNOWFLAKE_ACCOUNT": "xy12345.eu-central-1",
"SNOWFLAKE_USERNAME": "ANALYTICS_USER",
"SNOWFLAKE_PASSWORD": "••••••••",
"SNOWFLAKE_WAREHOUSE": "COMPUTE_WH",
"SNOWFLAKE_DATABASE": "ANALYTICS_DB",
"SNOWFLAKE_SCHEMA": "PUBLIC",
"SNOWFLAKE_ROLE": "ANALYST"
}
}
}
}Key-pair auth example
"env": {
"SNOWFLAKE_ACCOUNT": "xy12345.eu-central-1",
"SNOWFLAKE_USERNAME": "ANALYTICS_USER",
"SNOWFLAKE_AUTHENTICATOR": "SNOWFLAKE_JWT",
"SNOWFLAKE_PRIVATE_KEY_PATH": "/path/to/rsa_key.p8",
"SNOWFLAKE_PRIVATE_KEY_PASSPHRASE": "••••••••",
"SNOWFLAKE_DATABASE": "ANALYTICS_DB",
"SNOWFLAKE_SCHEMA": "PUBLIC"
}Tools
Tool | Args | Description |
|
| Platform contract. Returns |
| — | Returns version, account, user, role, warehouse, database, schema |
| — | Databases visible to the current role |
|
| Schemas in a database |
| — | Warehouses with size/state |
|
| Columns, types, nullability, defaults |
|
| Preview rows from a table |
|
| Run SQL. Read-only unless |
Platform integration note
list_tables matches the confirmed envelope used by the Shopify/Clio servers:
{
"is_success": true,
"status_code": 200,
"data": "[{\"table_name\":\"ORDERS\"},{\"table_name\":\"CUSTOMERS\"}]", // double-stringified
"message": "Found 2 table(s).",
"requestedPayload": { "database": "ANALYTICS_DB", "schema": "PUBLIC", "include_views": true }
}Because Snowflake exposes arbitrary user tables (unlike Clio's fixed resource categories, which each had a list_<resource> tool), there is no per-table tool. When a user selects a table in the platform, the backend should fetch its rows via get_table_sample (preview) or execute_query (SELECT * FROM <table>), rather than calling a tool named after the table. Confirm this mapping with the backend before wiring the row-fetch step.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides access to Snowflake databases for any MCP-compatible client, allowing execution of SQL queries with automatic connection management.5MIT
- AlicenseCqualityDmaintenanceAn MCP server that enables natural language interaction with Apache Iceberg data lakehouses, allowing users to query table metadata, schemas, and properties through Claude, Cursor, or other MCP clients.541Apache 2.0
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables natural language interaction with Snowflake databases through AI guidance, supporting core database operations, warehouse management, and AI-powered data analysis features.132MIT
- AlicenseAqualityAmaintenanceA Snowflake MCP server — SQL queries, schema exploration, and data insights for AI assistants62MIT
Related MCP Connectors
GibsonAI MCP server: manage your databases with natural language
Official Microsoft MCP Server to query Microsoft Entra data using natural language
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Analytics-model-LTD/snowflake-analytics-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server