Skip to main content
Glama
isaacwasserman

mcp-snowflake-server

Сервер MCP Snowflake

значок кузнеца PyPI - Версия


Обзор

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


Related MCP server: Datadog MCP Server

Компоненты

Ресурсы

  • 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 )
    Создайте новые таблицы в базе данных.
    Вход:

    • query (строка): SQL-оператор CREATE TABLE
      Возврат: Подтверждение создания таблицы

Инструменты схемы

  • list_databases
    Перечислите все базы данных в экземпляре Snowflake.
    Возвращает: Массив имен баз данных.

  • list_schemas
    Перечислите все схемы в определенной базе данных.
    Вход:

    • database (строка): Имя базы данных
      Возвращает: Массив имен схем.

  • list_tables
    Перечислите все таблицы в определенной базе данных и схеме.
    Вход:

    • database (строка): Имя базы данных

    • schema (строка): Имя схемы
      Возвращает: Массив метаданных таблицы.

  • describe_table
    Просмотр информации о столбцах для определенной таблицы.
    Вход:

    • table_name (string): Полное имя таблицы ( database.schema.table )
      Возвращает: Массив определений столбцов с именами, типами, допустимостью значений NULL, значениями по умолчанию и комментариями.

Инструменты анализа

  • append_insight
    Добавьте новые аналитические данные в ресурс памятки.
    Вход:

    • insight (строка): Понимание данных, обнаруженное в результате анализа
      Возврат: Подтверждение добавления инсайта
      Эффект: запускает обновление ресурса memo://insights .


Использование с Claude Desktop

Установка через Smithery

Чтобы автоматически установить Snowflake Server для Claude Desktop через Smithery :

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

Установка через 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}"]
    ]
  }
}

Локальная установка

  1. Установите приложение Claude AI для ПК

  2. Установить uv :

curl -LsSf https://astral.sh/uv/install.sh | sh
  1. Создайте файл .env с вашими учетными данными Snowflake:

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. [Необязательно] Измените runtime_config.json , чтобы задать шаблоны исключения для баз данных, схем или таблиц.

  2. Тестирование локально:

uv --directory /absolute/path/to/mcp_snowflake_server run mcp_snowflake_server
  1. Добавьте сервер в ваш claude_desktop_config.json :

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

Примечания

  • По умолчанию операции записи отключены . Включите их явно с помощью --allow-write .

  • Сервер поддерживает фильтрацию определенных баз данных, схем или таблиц с помощью шаблонов исключения.

  • Сервер предоставляет дополнительные ресурсы контекста для каждой таблицы, если включена предварительная выборка.

  • Инструмент append_insight динамически обновляет ресурс memo://insights .


Лицензия

Массачусетский технологический институт

Install Server
A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Issues opened vs closed

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