适合谁
- 已经使用 Snowflake 且需要在旧版本/历史配置下临时接入 MCP 客户端做兼容性测试的团队
- 需要研究该项目架构以迁移到官方 Snowflake MCP Server 的开发者
这是 Snowflake Labs 曾经维护的开源 MCP 服务器,用于将 Cortex AI、对象管理、SQL 执行与语义视图查询能力接入 MCP 客户端,但仓库 README 已明确将其标记为废弃(deprecated)且不再维护,官方建议所有新老用户迁移到 Snowflake 官方托管的 MCP Server。功能覆盖面广,但权限模型依赖使用者正确配置 SQL 语句白名单与 Snowflake 角色,配置不当存在执行破坏性 SQL 的风险,且由于停止维护,不适合用于生产或新项目。
本仓库(Snowflake-Labs/mcp)曾是 Snowflake Labs 提供的社区版 MCP 服务器,用于连接 Snowflake 数据平台,暴露 Cortex Search(非结构化数据检索)、Cortex Analyst(结构化数据语义查询)、Cortex Agent(跨数据类型编排)、对象管理(数据库、模式、表、视图、仓库、计算池、角色、Stage、用户、镜像仓库的创建/删除/查看)、通用 SQL 执行(按 sqlglot 语句类型做权限管控)以及 Snowflake 语义视图的发现与查询。README 明确注明该项目已被废弃、不再维护,官方建议迁移到 Snowflake 官方维护的 Snowflake MCP Server(docs.snowflake.com 上的 Cortex Agents MCP 文档)。服务通过 PyPI 包 snowflake-labs-mcp 以 stdio、sse(legacy)或 streamable-http 传输方式运行,依赖 Snowflake Python Connector 支持的多种认证方式(用户名密码、密钥对、MFA、SSO、OAuth、PAT 等)。
1) 通过 pip/uvx 安装包 snowflake-labs-mcp;2) 准备服务配置 YAML 文件(定义 agent_services/search_services/analyst_services 及 other_services 开关和 sql_statement_permissions);3) 通过环境变量或 CLI 参数(如 SNOWFLAKE_ACCOUNT、SNOWFLAKE_USER、SNOWFLAKE_PASSWORD 等)配置 Snowflake 连接凭据;4) 在 MCP 客户端(如 Claude Desktop、Cursor、fast-agent、Codex)配置中指向 uvx 命令并传入 --service-config-file 与 --connection-name 参数;5) 如需容器化部署,使用仓库提供的 Dockerfile 或 docker-compose 以 streamable-http 传输方式在 9000 端口暴露服务。注意:该项目已废弃,新用户应改用 Snowflake 官方维护的 MCP Server。
{"mcpServers":{"mcp-server-snowflake":{"command":"uvx","args":["snowflake-labs-mcp","--service-config-file","<path_to_file>/tools_config.yaml","--connection-name","default"]}}}