IM

isaacwasserman/mcp-snowflake-server

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

184 stars 84 forks 품질 68 트렌드 17GPL-3.0

isaacwasserman/mcp-snowflake-server는 [[T0]에서 가져온 MCP 서버 후보입니다.

개요

isaacwasserman/mcp-snowflake-server는 [[T0]에서 가져온 MCP 서버 후보입니다.

개요(AI 번역)


개요

Snowflake와 데이터베이스 상호작용을 제공하는 모델 컨텍스트 프로토콜(MCP) 서버 구현체입니다. 이 서버는 도구를 통해 SQL 쿼리를 실행할 수 있게 하며, 데이터 인사이트와 스키마 컨텍스트를 리소스로 노출합니다.


구성 요소

자료

  • memo://insights
    발견된 데이터 인사이트를 지속적으로 업데이트한 메모입니다.
    [T1]] 도구를 통해 새로운 인사이트가 추가되면 자동으로 업데이트됩니다.

  • context://table/{table_name}
    (프리페치가 활성화된 경우) 각 테이블 스키마 요약(열과 주석을 포함)이 개별 리소스로 노출됩니다.


도구

서버는 다음과 같은 도구를 제공합니다:

쿼리 도구

  • read_query
    SELECT 쿼리를 실행하여 데이터베이스에서 데이터를 읽습니다.
    입력:

  • query (문자열): 실행할 SELECT SQL 쿼리 반환: 결과를 객체 배열로 쿼리

  • write_query (--allow-write에서만 활성화됨) INSERT, UPDATE 또는 DELETE 쿼리를 실행하세요.
    입력:

  • query (문자열): SQL 수정 쿼리 반환 횟수: 영향을 받는 행 수나 확인

  • create_table (--allow-write에서만 활성화됨) 데이터베이스에 새 테이블을 생성하세요.

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

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": {
GitHub에서 전체 README 보기

설치

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