Back to MCP Catalog

Snowflake Database Connector MCP Server

DatabasesPython
Connect to Snowflake databases and execute SQL queries
Available Tools

read_query

Execute SELECT queries to read data from the database

query

write_query

Execute INSERT, UPDATE, or DELETE queries (enabled only with --allow-write)

query

create_table

Create new tables in the database (enabled only with --allow-write)

query

list_databases

List all databases in the Snowflake instance

list_schemas

List all schemas within a specific database

database

list_tables

List all tables within a specific database and schema

databaseschema

describe_table

View column information for a specific table

table_name

append_insight

Add new data insights to the memo resource

insight

The Snowflake Database Connector provides a seamless interface between Claude and your Snowflake data warehouse. It enables direct SQL query execution, schema exploration, and data analysis capabilities without leaving your AI assistant. With this connector, you can explore database structures, run analytical queries, and collect insights about your data. The server exposes both read and write operations (when enabled), making it suitable for both data analysis and database management tasks.

Overview

The Snowflake Database Connector allows Claude to interact directly with your Snowflake data warehouse. It provides tools for executing SQL queries, exploring database schemas, and analyzing data.

Installation Options

Option 1: Install via Smithery (Recommended)

The easiest way to install is through Smithery:

npx -y @smithery/cli install mcp_snowflake_server --client claude

Option 2: Install via UVX

Add the following configuration to your Claude Desktop config file:

"mcpServers": {
  "snowflake_pip": {
    "command": "uvx",
    "args": [
      "--python=3.12",
      "mcp_snowflake_server",
      "--account", "your_account",
      "--warehouse", "your_warehouse",
      "--user", "your_user",
      "--password", "your_password",
      "--role", "your_role",
      "--database", "your_database",
      "--schema", "your_schema"
    ]
  }
}

Option 3: Manual Installation

  1. Install the UV package manager:

    curl -LsSf https://astral.sh/uv/install.sh | sh
    
  2. Create a .env file with your Snowflake credentials:

    SNOWFLAKE_USER="your_email@example.com"
    SNOWFLAKE_ACCOUNT="your_account"
    SNOWFLAKE_ROLE="your_role"
    SNOWFLAKE_DATABASE="your_database"
    SNOWFLAKE_SCHEMA="your_schema"
    SNOWFLAKE_WAREHOUSE="your_warehouse"
    SNOWFLAKE_PASSWORD="your_password"
    
  3. Add the server to your Claude Desktop configuration:

    "mcpServers": {
      "snowflake_local": {
        "command": "/path/to/uv",
        "args": [
          "--python=3.12",
          "--directory", "/path/to/mcp_snowflake_server",
          "run", "mcp_snowflake_server"
        ]
      }
    }
    

Configuration Options

The server supports several configuration options:

  • --allow-write: Enable write operations (disabled by default for safety)
  • --log_dir: Specify a directory for logs
  • --log_level: Set logging level (DEBUG/INFO/WARNING/ERROR/CRITICAL)
  • --exclude_tools: Disable specific tools

You can also customize database/schema/table exclusion patterns by modifying the runtime_config.json file.

Usage Examples

Once installed, you can ask Claude to:

  1. Query your Snowflake database: "Show me the top 10 customers by revenue from our sales database"

  2. Explore database schema: "What tables are available in the marketing schema?"

  3. Analyze data and collect insights: "Analyze the customer_orders table and tell me about any interesting patterns"

  4. Create new tables (if write access enabled): "Create a new table to store customer feedback data"

Security Notes

  • By default, write operations are disabled for safety. Enable them only when needed.
  • Consider using role-based access control in Snowflake to limit the permissions of the account used.
  • Sensitive credentials should be stored securely and not shared in prompts.
  • The server supports external browser authentication as an alternative to password-based login.

Related MCPs

Milvus Vector Database
DatabasesPython

Connect to Milvus vector database for semantic search and vector operations

MotherDuck DuckDB
DatabasesPython

SQL analytics with DuckDB and MotherDuck for AI assistants

Alibaba Cloud Tablestore
DatabasesJava, Python

Connect to Alibaba Cloud Tablestore for vector search and RAG applications

About Model Context Protocol

Model Context Protocol (MCP) allows AI models to access external tools and services, extending their capabilities beyond their training data.

Generate Cursor Documentation

Save time on coding by generating custom documentation and prompts for Cursor IDE.