mcp -snowflake
MCP server for integrating Snowflake with Claude and other LLMs
claude mcp add --transport stdio patrickfreyer-mcp-server-snowflake node /absolute/path/to/mcp-server-snowflake/dist/index.js \ --env SNOWFLAKE_ROLE="YOUR_ROLE" \ --env SNOWFLAKE_USER="your-email@domain.com" \ --env SNOWFLAKE_SCHEMA="YOUR_SCHEMA" \ --env SNOWFLAKE_ACCOUNT="your-account.region.provider" \ --env SNOWFLAKE_DATABASE="YOUR_DATABASE" \ --env SNOWFLAKE_PASSWORD="your-password" \ --env SNOWFLAKE_WAREHOUSE="YOUR_WAREHOUSE"
How to use
This MCP server exposes Snowflake operations to any MCP-compatible client (such as Claude Desktop, Cursor, or other LLM tools). It runs as a Node.js-based TypeScript server that connects to Snowflake via the official Snowflake Node.js driver, enabling LLM-driven data access, schema exploration, and table inspection. Tools include read_query for executing SELECT statements, list_databases to enumerate databases, list_schemas to enumerate schemas, list_tables to enumerate tables within a schema, and describe_table to fetch detailed metadata about a specific table. To use it, configure your MCP client to point at the local or remote Node.js process (via the provided index.js entrypoint) and supply the necessary Snowflake credentials through environment variables. After setup, you can issue natural-language prompts that translate into these Snowflake operations for interactive data interrogation and analysis.
How to install
Prerequisites:
- Node.js 18 or higher
- npm or yarn
- Access to a Snowflake account
- An MCP-compatible client (Claude Desktop, Cursor, etc.)
Option A: Manual installation (development or local testing)
- Clone the repository
git clone https://github.com/patrickfreyer/mcp-server-snowflake.git
cd mcp-server-snowflake
- Install dependencies
npm install
- Build the server
npm run build
Option B: Run directly in development mode
- Ensure dependencies are installed
npm install
- Run in development mode
npm run dev
Option C: Prepare MCPB package for Claude Desktop (optional)
- Build the server
npm run build
- Create MCPB package (requires build-mcpb.sh)
./build-mcpb.sh
- Use the generated snowflake-mcp-<version>.mcpb in Claude Desktop as described in the README.
Additional notes
Environment variables are the recommended method for credentials. For production, consider using Snowflake key-pair authentication and securely managing keys. Ensure your environment variables are not committed to source control. If you switch installation methods (manual vs MCPB), update the runtime path to dist/index.js accordingly. The MCPB package contains a manifest.json that defines configuration and environment mapping; if you customize the server entry point, keep the environment variable names consistent with SNOWFLAKE_* to ensure proper loading.
Related MCP Servers
zen
Selfhosted notes app. Single golang binary, notes stored as markdown within SQLite, full-text search, very low resource usage
MCP -Deepseek_R1
A Model Context Protocol (MCP) server implementation connecting Claude Desktop with DeepSeek's language models (R1/V3)
mcp-fhir
A Model Context Protocol implementation for FHIR
mcp
Inkdrop Model Context Protocol Server
mcp-appium-gestures
This is a Model Context Protocol (MCP) server providing resources and tools for Appium mobile gestures using Actions API..
dubco -npm
The (Unofficial) dubco-mcp-server enables AI assistants to manage Dub.co short links via the Model Context Protocol. It provides three MCP tools: create_link for generating new short URLs, update_link for modifying existing links, and delete_link for removing short links.