Snowflake MCP服务器

一个智能MCP服务器,将自然语言转换为可操作的Snowflake数据查询和即时可视化。

  • by MrJohn91
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 MrJohn91/Snowflake-MCP-Server-with-Kiro-CLI-Integration

使用说明

集成Kiro的雪花MCP服务器

用简单的英语提问→ 获取安全的雪花数据→ 查看即时可视化.

Kiro CLI的智能MCP服务器,将自然语言转化为可操作的见解。


项目目标

通过允许用户使用简单的英语查询安全的Snowflake数据并立即接收交互式可视化,弥合业务问题和数据洞察力之间的差距。


问题

业务用户和团队在试图获得数据见解时经常面临摩擦:

  • SQL屏障: 他们不知道如何编写复杂的SQL查询。
  • 时间延迟: 等待分析师生成报告需要时间。
  • 可视化差距: 获取原始数据往往是不够的;他们需要直观地看到趋势。

解决方案

此项目实现了自定义 MCP 服务器 它将Kiro CLI连接到Snowflake:

  1. 了解: Kiro将自然语言翻译成优化的SQL。
  2. 安全: 查询是针对策划的 黄金 视图以确保安全性和数据质量。
  3. 可视化: 当您请求图表时,服务器会生成交互式 Chart.js 在浏览器中立即打开的可视化。

运作原理

与其编写SQL,你只需问:

“按类别显示销售额”

服务器:

  1. 将您的问题转换为SQL
  2. 查询Snowflake GOLD视图
  3. 以简明英语返回数据

如果你想要一个可视化:

“创建此数据的条形图”

图表会立即在浏览器中打开。


快速开始

步骤1:克隆并安装

git clone https://github.com/MrJohn91/Snowflake-MCP-Server-with-Kiro-CLI-Integration.git
cd Snowflake-MCP-Server-with-Kiro-CLI-Integration
uv sync

注: 由于您没有我的Snowflake凭据,服务器会自动使用 模拟数据 这反映了真实的生产模式。

第二步:使用Kiro进行测试

  1. 打开基洛:

    kiro .
    

    (Kiro自动检测MCP配置)

  2. 查找聊天面板 在Kiro中(侧边栏或Cmd+L)

  3. 提问:

    • “有哪些可用的视图?”
    • “按类别显示销售数据”
    • “创建收入柱状图”
    • “描述DAILY_SALES_SUMMARY视图”

MCP工具

工具 它做什么
snowflake_list_views 列出GOLD模式中的可用视图
snowflake_describe_view 显示视图的列和数据类型
snowflake_query 对Snowflake执行SQL查询
create_chart 生成Chart.js可视化

项目结构

├── src/
│   ├── main.py           # MCP server & tool definitions
│   ├── tools/            # Snowflake query logic
│   ├── visualize.py      # Chart generation
│   ├── config.py         # Configuration & mock mode
│   └── mock_data.py      # Simulated data for testing
├── charts/               # Generated chart files
├── skills/               # AI Best Practice Guides
├── .kiro/                # Kiro configuration
│   ├── steering/         # Product context & architecture docs
│   ├── prompts/          # Workflow prompts
│   └── settings/         # MCP configuration
├── tests/
│   ├── test_cli_mock.py  # Automation CLI test script
│   └── test_manual.py    # Interactive test runner
├── README.md

模拟模式(工作原理)

当您没有Snowflake凭据时(否 .env 文件),服务器自动:

  1. 检测丢失的凭据
  2. 启用 模拟模式
  3. 返回与真实模式匹配的真实示例数据

这使您无需访问数据库即可测试完整的工作流程。

模拟数据包括:

  • 2浏览次数: DAILY_SALES_SUMMARY, CUSTOMER_PRODUCT_AFFINITY_MONTHLY
  • 5产品类别:电子产品,花园,食品,家居,服装
  • 用于生成图表的收入数据

致谢

该项目使用了 MCP技能构建器 Anthropic确保高质量、合规的MCP服务器实施。


故障排除

Kiro看不到MCP服务器?

  • 确保从项目根文件夹(其中 .kiro 存在)
  • 更改配置后重新启动Kiro

测试因MFA错误而失败?

  • 当真实凭证存在时,就会发生这种情况。测试脚本强制模拟模式,因此这不应该发生在 test_mcp_cli.py

图表无法打开?

  • 检查 charts/ 用于生成HTML文件的文件夹
  • 在浏览器中手动打开它们

专为

动态Kiro黑客马拉松2026-演示MCP服务器如何连接自然语言和企业数据系统。