Skip to main content
Glama
Analytics-model-LTD

snowflake-analytics-mcp-server

snowflake-analytics-mcp-server

Ein Model Context Protocol-Server für Snowflake, entwickelt für die Analytics-Model-Plattform. Er verbindet sich über den offiziellen snowflake-sdk-Treiber mit Snowflake (reines Node — kein Client-Binary erforderlich, anders als beim Oracle-Server) und stellt Tabellen-Erkennungs- und Abfragetools über stdio bereit. Direkt mit npx ausführbar.

Das list_tables-Tool gibt die exakte Tabellen-Erkennungs-Envelope der Plattform zurück, sodass es direkt in denselben fetchMcpTables-Ablauf wie die Clio-, Dropbox- und Shopify-Server passt.

Installation

npm install -g snowflake-analytics-mcp-server
# or run directly (no install):
npx -y snowflake-analytics-mcp-server

Konfiguration

Alle Anmeldedaten stammen aus Umgebungsvariablen.

Variable

Erforderlich

Standard

Beschreibung

SNOWFLAKE_ACCOUNT

Konto-Kennung, z. B. xy12345.eu-central-1 oder orgname-account_name

SNOWFLAKE_USERNAME

Anmeldename

SNOWFLAKE_PASSWORD

✅ (Passwort-Auth)

Passwort (erforderlich, sofern nicht Key-Pair/OAuth verwendet wird)

SNOWFLAKE_WAREHOUSE

Zu verwendendes virtuelles Warehouse

SNOWFLAKE_DATABASE

empfohlen

Standard-Datenbank (von list_tables verwendet, wenn kein Argument angegeben wird)

SNOWFLAKE_SCHEMA

empfohlen

Standard-Schema

SNOWFLAKE_ROLE

Zu übernehmende Rolle

SNOWFLAKE_AUTHENTICATOR

SNOWFLAKE

SNOWFLAKE (Passwort), SNOWFLAKE_JWT (Key-Pair), OAUTH

SNOWFLAKE_PRIVATE_KEY

Key-Pair

Inhalt des PEM-Private-Keys

SNOWFLAKE_PRIVATE_KEY_PATH

Key-Pair

Pfad zu einer PEM-Private-Key-Datei (Alternative zu oben)

SNOWFLAKE_PRIVATE_KEY_PASSPHRASE

Passphrase, falls der Schlüssel verschlüsselt ist

SNOWFLAKE_TOKEN

OAuth

OAuth-Zugriffstoken (mit SNOWFLAKE_AUTHENTICATOR=OAUTH)

SNOWFLAKE_READ_ONLY

true

Blockiert Schreibvorgänge/DDL in execute_query. Auf false setzen, um sie zu erlauben

SNOWFLAKE_ROW_LIMIT

1000

Obergrenze für zurückgegebene Zeilen

QUERY_TIMEOUT_MS

60000

Clientseitiges Abfrage-Timeout

Tipp zur Konto-Kennung

Verwenden Sie Bindestriche statt Unterstrichen in der Konto-Kennung, wenn ein Client Verbindungsprobleme hat (z. B. orgname-account-name).

Claude-Desktop-Konfiguration

Zu claude_desktop_config.json hinzufügen:

{
  "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"
      }
    }
  }
}

Beispiel für Key-Pair-Authentifizierung

"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

Beschreibung

list_tables

database?, schema?, include_views?

Plattform-Vertrag. Gibt { table_name }[] in der doppelt umschlossenen Envelope für fetchMcpTables zurück

test_connection

Gibt Version, Konto, Benutzer, Rolle, Warehouse, Datenbank, Schema zurück

list_databases

Datenbanken, die für die aktuelle Rolle sichtbar sind

list_schemas

database?

Schemas in einer Datenbank

list_warehouses

Warehouses mit Größe/Status

describe_table

table, database?, schema?

Spalten, Typen, Nullbarkeit, Standardwerte

get_table_sample

table, database?, schema?, limit?

Vorschauzeilen aus einer Tabelle

execute_query

query

SQL ausführen. Schreibgeschützt, außer SNOWFLAKE_READ_ONLY=false

Hinweis zur Plattform-Integration

list_tables entspricht der bestätigten Envelope, die von den Shopify/Clio-Servern verwendet wird:

{
  "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 }
}

Da Snowflake beliebige Benutzertabellen bereitstellt (anders als Clios feste Ressourcenkategorien, die jeweils ein list_<resource>-Tool hatten), gibt es kein Tool pro Tabelle. Wenn ein Benutzer in der Plattform eine Tabelle auswählt, sollte das Backend deren Zeilen über get_table_sample (Vorschau) oder execute_query (SELECT * FROM <table>) abrufen, anstatt ein nach der Tabelle benanntes Tool aufzurufen. Bestätigen Sie dieses Mapping mit dem Backend, bevor Sie den Zeilenabruf-Schritt verdrahten.

Lizenz

MIT

-
license - not tested
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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