π
Snowflake MCP
Repo To Showcase MCP
0 installs
Trust: 34 β Low
Data
Ask AI about Snowflake MCP
Powered by Claude Β· Grounded in docs
I know everything about Snowflake MCP. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Loading tools...
Reviews
Documentation
MCP Ski Resort
Install
pip install -e ".[dev]"
# For async support (httpx)
pip install -e ".[async]"
Architecture
The notebooks are the source of truth for both the library code and documentation.
Snowflake-MCP/
βββ 00_core.ipynb # Library: JWT auth, SSE streaming, normalization, threads
βββ 01_async.ipynb # Library: Async transport (httpx)
βββ 02_mcp_client.ipynb # Library: MCP JSON-RPC client & display helpers
βββ 03_agent_streaming.ipynb # Demo: Cortex Agent SSE streaming
βββ 04_see_pattern.ipynb # Demo: Search-Enrich-Execute pattern
βββ 05_mcp_client_demo.ipynb # Demo: Full MCP client walkthrough
βββ index.ipynb # This file β README.md
βββ mcp_ski_resort/ # Python package (auto-generated by nbdev-export)
β βββ core.py
β βββ astream.py
β βββ mcp_client.py
βββ sql/ # DDL scripts for Snowflake setup
βββ tests/ # Integration test scripts
Notebooks 00β02 export the mcp_ski_resort library via #| export
directives.
Notebooks 03β04 are demo notebooks that showcase the library API.
Library Modules
| Module | Notebook | Highlights |
|---|---|---|
mcp_ski_resort.core | 00_core | JWT auth, SnowflakeSession, stream_agent_sse, normalize_event, run_agent, AgentChat, create_thread, thread-mode conversations |
mcp_ski_resort.astream | 01_async | Async equivalents via httpx: async_run_agent, AsyncAgentChat, async_stream_agent_sse. Install with pip install mcp-ski-resort[async] |
mcp_ski_resort.mcp_client | 02_mcp_client | MCP JSON-RPC client (MCPClient, mcp_call, display_mcp_result) |
MCP Server Tools
The Alpine Mountain MCP Server (SKI_RESORT_MCP) exposes 10 tools
across 5 Snowflake tool types:
| Tool Name | Type | Description |
|---|---|---|
daily-summary-analyst | CORTEX_ANALYST_TEXT_TO_SQL | Natural-language queries over daily operations |
revenue-analyst | CORTEX_ANALYST_TEXT_TO_SQL | Revenue and financial analytics |
operations-analyst | CORTEX_ANALYST_TEXT_TO_SQL | Operational metrics and staffing |
resort-executive-agent | CORTEX_AGENT_RUN | Executive-level analysis with multi-step reasoning |
ski-ops-assistant | CORTEX_AGENT_RUN | Operational assistant for ski patrol and lifts |
feedback-search | CORTEX_SEARCH_SERVICE_QUERY | Semantic search over 3,937 guest feedback records |
incident-search | CORTEX_SEARCH_SERVICE_QUERY | Semantic search over 2,834 safety incidents |
execute-sql | SYSTEM_EXECUTE_SQL | Run ad-hoc SQL against AM_SKI_RESORT |
resort-kpi-summary | GENERIC | KPI dashboard UDF (season parameter) |
weather-impact-report | GENERIC | Weather impact analysis UDF (date range) |
weather-impact-report | GENERIC | Weather impact analysis UDF |
Quick Start
Sync β Agent streaming
from mcp_ski_resort.core import run_agent, AgentChat
# One-shot call
result = run_agent("RESORT_EXECUTIVE", "How did we perform this season?")
print(result.answer)
# Multi-turn conversation (local history)
chat = AgentChat("RESORT_EXECUTIVE")
chat.ask("What are our top KPIs?")
chat.ask("Compare with last season") # history sent automatically
# Multi-turn with server-side threads
from mcp_ski_resort.core import create_thread
tid = create_thread()
chat = AgentChat("RESORT_EXECUTIVE", thread_id=tid)
chat.ask("What are our top KPIs?") # server owns continuity
Async
from mcp_ski_resort.astream import async_run_agent, AsyncAgentChat
result = await async_run_agent("RESORT_EXECUTIVE", "Season summary")
MCP client
from mcp_ski_resort.mcp_client import mcp_tools_list, mcp_call, display_mcp_result
tools = mcp_tools_list()
resp = mcp_call("resort-executive-agent", {"message": "Season summary"})
display_mcp_result(resp, label="Executive Summary")
Prerequisites
See PREREQUISITES.md for full setup instructions including:
- Snowflake account with Cortex Agents, Search, and Analyst
- RSA key-pair authentication configured
- SQL setup scripts in
sql/for creating search services, UDFs, and the MCP server
