snowflake
MCP server from snowflake-mcp/snowflake-mcp-server
claude mcp add --transport stdio snowflake-mcp-snowflake-mcp-server ~/venv/bin/python3.13 path/to/snowflake_mcp_server/main.py \ --env SNOWFLAKE_ROLE="your_role" \ --env SNOWFLAKE_USER="your_snowflake_username" \ --env SNOWFLAKE_SCHEMA="your_schema" \ --env SNOWFLAKE_ACCOUNT="account.region" \ --env SNOWFLAKE_DATABASE="your_database" \ --env SNOWFLAKE_PASSWORD="your_snowflake_password" \ --env SNOWFLAKE_WAREHOUSE="your_warehouse"
How to use
Snowflake MCP Server serves as a bridge between your AI applications and your Snowflake data warehouse. It exposes a set of tools that enable chat-based interaction with Snowflake, letting you execute queries, inspect schemas, analyze query performance, check data quality, and run batches of queries without leaving your development environment. You can interact with these tools via an MCP client, sending natural language requests that get translated into Snowflake operations. The server supports both password-based authentication and SSO, giving you flexible and secure access to your data.
To use it, connect your MCP client to the snowflake MCP server using the configured command and arguments. Then invoke the available tools (execute_query, inspect_schema, Analyse the performance, Check_data_quality, and execute_batch) to perform database operations. For example, you can ask the assistant to fetch the schema of a table, run a complex query, assess how a given query will perform, verify data quality metrics, or run multiple queries in a single batch. This setup reduces the back-and-forth between coding in an IDE and manually querying Snowflake, enabling more conversational and iterative data analysis workflows.
How to install
Prerequisites:
- Python 3.8+ installed on your system
- Git installed
- Access to the Snowflake account with appropriate permissions
- A Python virtual environment tool (venv) available
- Clone the MCP server repository:
git clone https://github.com/your-org/snowflake-mcp-server.git
cd snowflake-mcp-server
- Create and activate a virtual environment:
python -m venv venv
# macOS/Linux
source venv/bin/activate
# Windows
venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Prepare the MCP server configuration (adjust paths as needed):
# Example mcpServers config (save as config.json or integrate into your preferred config method)
{
"mcpServers": {
"snowflake": {
"command": "~/venv/bin/python3.13",
"args": ["path/to/snowflake_mcp_server/main.py"]
}
}
}
-
Start the MCP server using your environment’s usual method (depending on how you run the server). Ensure environment variables for Snowflake credentials are set if not using prompts or SSO.
-
In Cursor IDE or your MCP client, add the Snowflake MCP server by pointing to the configured Python path and main.py as shown in the config example above.
Additional notes
Tips and considerations:
- If you switch between password-based and SSO authentication, ensure the corresponding credentials are configured in the environment or via your Snowflake profile.
- The tool set includes: execute_query (run a single Snowflake query), inspect_schema (describe the structure of a table), Analyse the performance (evaluate query performance), Check_data_quality (assess data quality metrics), and execute_batch (run multiple queries in sequence).
- Keep your Snowflake credentials secure. Use environment variables or a secrets manager where possible.
- If you encounter path or permission issues, verify that the Python interpreter in the config matches the active virtual environment and that main.py is executable.
- When testing, try simple queries first to validate connectivity before using more complex batch operations.
- If using SSO, ensure the environment is set up to support token-based authentication or browser-based sign-in as required by your Snowflake setup.
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP