Skip to main content
Glama

Snowflake MCP-Server

Schmiedeabzeichen PyPI - Version


Überblick

Eine Model Context Protocol (MCP)-Serverimplementierung, die die Datenbankinteraktion mit Snowflake ermöglicht. Dieser Server ermöglicht die Ausführung von SQL-Abfragen über Tools und stellt Dateneinblicke und Schemakontext als Ressourcen bereit.


Related MCP server: Datadog MCP Server

Komponenten

Ressourcen

  • memo://insights
    Ein ständig aktualisiertes Memo, das die gewonnenen Datenerkenntnisse zusammenfasst.
    Wird automatisch aktualisiert, wenn neue Erkenntnisse über das Tool append_insight angehängt werden.

  • context://table/{table_name}
    (Wenn Prefetch aktiviert ist) Schemazusammenfassungen pro Tabelle, einschließlich Spalten und Kommentaren, werden als einzelne Ressourcen angezeigt.


Werkzeuge

Der Server stellt die folgenden Tools bereit:

Abfragetools

  • read_query
    Führen Sie SELECT -Abfragen aus, um Daten aus der Datenbank zu lesen.
    Eingang:

    • query (Zeichenfolge): Die auszuführende SELECT SQL-Abfrage
      Gibt zurück: Abfrageergebnisse als Array von Objekten

  • write_query (nur aktiviert mit --allow-write )
    Führen Sie INSERT , UPDATE oder DELETE -Abfragen aus.
    Eingang:

    • query (Zeichenfolge): Die SQL-Änderungsabfrage
      Rückgabe: Anzahl der betroffenen Zeilen oder Bestätigung

  • create_table (nur aktiviert mit --allow-write )
    Erstellen Sie neue Tabellen in der Datenbank.
    Eingang:

    • query (Zeichenfolge): CREATE TABLE SQL-Anweisung
      Rückgabe: Bestätigung der Tabellenerstellung

Schema-Tools

  • list_databases
    Listen Sie alle Datenbanken in der Snowflake-Instanz auf.
    Gibt zurück: Array von Datenbanknamen

  • list_schemas
    Listet alle Schemata innerhalb einer bestimmten Datenbank auf.
    Eingang:

    • database (Zeichenfolge): Name der Datenbank
      Gibt zurück: Array von Schemanamen

  • list_tables
    Listet alle Tabellen innerhalb einer bestimmten Datenbank und eines bestimmten Schemas auf.
    Eingang:

    • database (Zeichenfolge): Name der Datenbank

    • schema (Zeichenfolge): Name des Schemas
      Gibt zurück: Array von Tabellenmetadaten

  • describe_table
    Zeigen Sie Spalteninformationen für eine bestimmte Tabelle an.
    Eingang:

    • table_name (Zeichenfolge): Vollqualifizierter Tabellenname ( database.schema.table )
      Rückgabe: Array von Spaltendefinitionen mit Namen, Typen, Nullbarkeit, Standardwerten und Kommentaren

Analysetools

  • append_insight
    Fügen Sie der Memoressource neue Dateneinblicke hinzu.
    Eingang:

    • insight (Zeichenfolge): Durch Analyse gewonnene Dateneinblicke
      Rücksendungen: Bestätigung der Erkenntnisaufnahme
      Effekt: Löst eine Aktualisierung der Ressource memo://insights aus


Verwendung mit Claude Desktop

Installation über Smithery

So installieren Sie Snowflake Server für Claude Desktop automatisch über Smithery :

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

Installation über UVX

"mcpServers": { "snowflake_pip": { "command": "uvx", "args": [ "--python=3.12", // Optional: specify Python version <=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" // Optionally: "--allow_write" // Optionally: "--log_dir", "/absolute/path/to/logs" // Optionally: "--log_level", "DEBUG"/"INFO"/"WARNING"/"ERROR"/"CRITICAL" // Optionally: "--exclude_tools", "{tool_name}", ["{other_tool_name}"] ] } }

Lokale Installation

  1. Installieren Sie die Claude AI Desktop App

  2. Installieren Sie uv :

curl -LsSf https://astral.sh/uv/install.sh | sh
  1. Erstellen Sie eine .env Datei mit Ihren Snowflake-Anmeldeinformationen:

SNOWFLAKE_USER="xxx@your_email.com" SNOWFLAKE_ACCOUNT="xxx" SNOWFLAKE_ROLE="xxx" SNOWFLAKE_DATABASE="xxx" SNOWFLAKE_SCHEMA="xxx" SNOWFLAKE_WAREHOUSE="xxx" SNOWFLAKE_PASSWORD="xxx" # Alternatively, use external browser authentication: # SNOWFLAKE_AUTHENTICATOR="externalbrowser"
  1. [Optional] Ändern Sie runtime_config.json , um Ausschlussmuster für Datenbanken, Schemas oder Tabellen festzulegen.

  2. Lokal testen:

uv --directory /absolute/path/to/mcp_snowflake_server run mcp_snowflake_server
  1. Fügen Sie den Server zu Ihrer claude_desktop_config.json hinzu:

"mcpServers": { "snowflake_local": { "command": "/absolute/path/to/uv", "args": [ "--python=3.12", // Optional "--directory", "/absolute/path/to/mcp_snowflake_server", "run", "mcp_snowflake_server" // Optionally: "--allow_write" // Optionally: "--log_dir", "/absolute/path/to/logs" // Optionally: "--log_level", "DEBUG"/"INFO"/"WARNING"/"ERROR"/"CRITICAL" // Optionally: "--exclude_tools", "{tool_name}", ["{other_tool_name}"] ] } }

Hinweise

  • Schreibvorgänge sind standardmäßig deaktiviert . Aktivieren Sie sie explizit mit --allow-write .

  • Der Server unterstützt das Herausfiltern bestimmter Datenbanken, Schemata oder Tabellen über Ausschlussmuster.

  • Wenn das Vorablesen aktiviert ist, stellt der Server zusätzliche Kontextressourcen pro Tabelle bereit.

  • Das Tool append_insight aktualisiert die Ressource memo://insights dynamisch.


Lizenz

MIT

One-click Deploy
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

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/isaacwasserman/mcp-snowflake-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server