snowflake-mcp-server

snowflake-mcp-server

4

The project is a Model Context Protocol server that facilitates read-only operations on Snowflake databases, allowing secure data querying by Claude. It offers various authentication methods, supports connection pooling, and ensures data security by restricting operations to read-only and performing input validation.

MCP Server for Snowflake

A Model Context Protocol (MCP) server designed for read-only operations against Snowflake databases, allowing Claude to securely query Snowflake data.

Features

  • Flexible authentication options: service account with private key or external browser authentication
  • Connection pooling with automatic refresh
  • Support for querying multiple databases and views
  • Compatible with various SQL statements
  • Read-only operations with security checks
  • Compatibility with Python 3.12+

Available Tools

  • List and query databases and views
  • Execute read-only SQL queries

Installation

  • Requires Python 3.12, Snowflake account, and 'uv' package manager

Usage

  • Running the server with 'uv'
  • Integration with Claude Desktop

Authentication Methods

  • Private Key and External Browser authentication available

Security Considerations

  • Enforces read-only operations and input validation

Development

  • Type checking, linting, and testing instructions available

Contributing

  • Contributions are welcome.

Technical Details

  • Uses Snowflake Python Connector, MCP, Pydantic, and python-dotenv.