Skip to main content

A simple Snowflake MCP server

Project description

Snowflake MCP Server

smithery badge PyPI - Version

Overview

A Model Context Protocol (MCP) server implementation that provides database interaction with Snowflake. This server enables running SQL queries with tools and intereacting with a memo of data insights presented as a resource.

Components

Resources

The server exposes a single dynamic resource:

  • memo://insights: A continuously updated data insights memo that aggregates discovered insights during analysis
    • Auto-updates as new insights are discovered via the append-insight tool

Tools

The server offers six core tools:

Query Tools

  • read_query

    • Execute SELECT queries to read data from the database
    • Input:
      • query (string): The SELECT SQL query to execute
    • Returns: Query results as array of objects
  • write_query (with --allow-write flag)

    • Execute INSERT, UPDATE, or DELETE queries
    • Input:
      • query (string): The SQL modification query
    • Returns: { affected_rows: number }
  • create_table (with --allow-write flag)

    • Create new tables in the database
    • Input:
      • query (string): CREATE TABLE SQL statement
    • Returns: Confirmation of table creation

Schema Tools

  • list_tables

    • Get a list of all tables in the database
    • No input required
    • Returns: Array of table names
  • describe-table

    • View column information for a specific table
    • Input:
      • table_name (string): Name of table to describe (can be fully qualified)
    • Returns: Array of column definitions with names and types

Analysis Tools

  • append_insight
    • Add new data insights to the memo resource
    • Input:
      • insight (string): data insight discovered from analysis
    • Returns: Confirmation of insight addition
    • Triggers update of memo://insights resource

Usage with Claude Desktop

Installing via Smithery

To install Snowflake Server for Claude Desktop automatically via Smithery:

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

Installing via UVX

# Add the server to your claude_desktop_config.json
"mcpServers": {
  "snowflake_pip": {
      "command": "uvx",
      "args": [
          "mcp_snowflake_server",
          "--account",
          "the_account",
          "--warehouse",
          "the_warehouse",
          "--user",
          "the_user",
          "--password",
          "their_password",
          "--role",
          "the_role"
          "--database",
          "the_database",
          "--schema",
          "the_schema",
          # Optionally: "--allow_write" (but not recommended)
          # Optionally: "--log_dir", "/absolute/path/to/logs"
          # Optionally: "--log_level", "DEBUG"/"INFO"/"WARNING"/"ERROR"/"CRITICAL"
          # Optionally: "--exclude_tools", "{tool name}", ["{other tool name}"]
      ]
  }
}

Installing locally

# Add the server to your claude_desktop_config.json
"mcpServers": {
  "snowflake_local": {
      "command": "uv",
      "args": [
          "--directory",
          "/absolute/path/to/mcp_snowflake_server",
          "run",
          "mcp_snowflake_server",
          "--account",
          "the_account",
          "--warehouse",
          "the_warehouse",
          "--user",
          "the_user",
          "--password",
          "their_password",
          "--role",
          "the_role"
          "--database",
          "the_database",
          "--schema",
          "the_schema",
          # Optionally: "--allow_write" (but not recommended)
          # Optionally: "--log_dir", "/absolute/path/to/logs"
          # Optionally: "--log_level", "DEBUG"/"INFO"/"WARNING"/"ERROR"/"CRITICAL"
          # Optionally: "--exclude_tools", "{tool name}", ["{other tool name}"]
      ]
  }
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_server_snowflake-0.3.7.tar.gz (19.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_server_snowflake-0.3.7-py3-none-any.whl (21.3 kB view details)

Uploaded Python 3

File details

Details for the file mcp_server_snowflake-0.3.7.tar.gz.

File metadata

File hashes

Hashes for mcp_server_snowflake-0.3.7.tar.gz
Algorithm Hash digest
SHA256 23161106b28abb8bd80119f9a4338f3b8f49bd23cad19df4bb48c51021983e16
MD5 a541e9e7f734c5b2a3bce6623a9c4876
BLAKE2b-256 23fb06bcebcc98ded326006b6da0265d0df842e1746972be2033332b3c1b77d2

See more details on using hashes here.

File details

Details for the file mcp_server_snowflake-0.3.7-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_server_snowflake-0.3.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d343f768a2b4c9f1859745f5d73b663ccaad286c588a7d90925cf413c9d07558
MD5 f5fe86c4930f0afdbc204a22329dc5b2
BLAKE2b-256 7b3b21e2355158c61d5baee999d6f8d780f4cdca5be8b97678d23b8660c70a52

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page