IM

isaacwasserman/mcp-snowflake-server

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

184 stars 84 forks Качество 68 Тренд 17GPL-3.0

isaacwasserman/mcp-snowflake-server — это кандидат на MCP-сервер, импортированный из https://github.com/isaacwasserman/mcp-snowflake-server.

Обзор

isaacwasserman/mcp-snowflake-server — это кандидат на MCP-сервер, импортированный из https://github.com/isaacwasserman/mcp-snowflake-server.

Обзор (машинный перевод)


Обзор

Реализация сервера Model Context Protocol (MCP), обеспечивающая взаимодействие с базой данных с Snowflake. Этот сервер позволяет выполнять SQL-запросы через инструменты и предоставляет данные и контекст схемы в виде ресурсов.


Компоненты

Ресурсы

  • memo://insights
    Постоянно обновляемая записка, объединяющая обнаруженные данные.
    Обновляется автоматически при добавлении новых инсайтов через инструмент append_insight.

  • context://table/{table_name}
    (Если включена предвыборка) Сводки схем по таблицам, включая столбцы и комментарии, отображаются как отдельные ресурсы.


Инструменты

Сервер предоставляет следующие инструменты:

Инструменты запросов

  • read_query
    Выполните запросы SELECT для чтения данных из базы данных.
    Ввод:

  • query (строка): SQL-запрос [SELECT для выполнения Возвращает: Результаты запроса как массив объектов

  • write_query (включено только с помощью --allow-write) Выполните запросы INSERT, UPDATE или DELETE.
    Ввод:

  • query (строка): Запрос на изменение SQL Возвраты: Количество затронутых строк или подтверждения

  • create_table (включено только с помощью --allow-write) Создайте новые таблицы в базе данных.

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

Snowflake MCP Server


Overview

A Model Context Protocol (MCP) server implementation that provides database interaction with Snowflake. This server enables running SQL queries via tools and exposes data insights and schema context as resources.


Components

Resources

  • memo://insights
    A continuously updated memo aggregating discovered data insights.
    Updated automatically when new insights are appended via the append_insight tool.

  • context://table/{table_name}
    (If prefetch enabled) Per-table schema summaries, including columns and comments, exposed as individual resources.


Tools

The server exposes the following 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 (enabled only with --allow-write)
    Execute INSERT, UPDATE, or DELETE queries.
    Input:

    • query (string): The SQL modification query
      Returns: Number of affected rows or confirmation
  • create_table (enabled only with --allow-write)
    Create new tables in the database.
    Input:

    • query (string): CREATE TABLE SQL statement
      Returns: Confirmation of table creation

Schema Tools

  • list_databases
    List all databases in the Snowflake instance.
    Returns: Array of database names

  • list_schemas
    List all schemas within a specific database.
    Input:

    • database (string): Name of the database
      Returns: Array of schema names
  • list_tables
    List all tables within a specific database and schema.
    Input:

    • database (string): Name of the database
    • schema (string): Name of the schema
      Returns: Array of table metadata
  • describe_table
    View column information for a specific table.
    Input:

    • table_name (string): Fully qualified table name (database.schema.table)
      Returns: Array of column definitions with names, types, nullability, defaults, and comments

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
      Effect: 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

Traditional Configuration (Individual Parameters)

"mcpServers": {
Открыть полный README на GitHub

Установка

uvx --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: "--private_key_path your_private_key_absolute_path" // 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}
Новичок в MCP? Начните с руководства на mcpskill.org →

Конфигурация

"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: "--private_key_path", "your_private_key_absolute_path" // 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}"] ] } }