跳转到内容

Snowflake 集成

通过 Snowflake 托管的 MCP 服务器 将你的 CrewAI 智能体直接连接到 Snowflake 数据。Snowflake 集成让你的智能体可以使用 Cortex Analyst 查询结构化数据,使用 Cortex Search 搜索非结构化数据,并在仓库上运行受治理的 SQL,而无需编写或托管任何连接器代码。

在底层,Snowflake 集成是 CrewAI 自定义 MCP 服务器 支持之上的托管封装。Snowflake 通过 Model Context Protocol 端点公开其 Cortex AI 能力,而 CrewAI 会代表你安全地连接到该端点。你在 Snowflake 侧公开的任何工具,例如 Cortex Analyst、Cortex Search、SQL 执行、Cortex Agents 或你自己的自定义工具,都会对你的团队可用。

Cortex Analyst

通过自然语言提问,并让 Cortex Analyst 使用丰富的语义模型针对你的 结构化 数据生成并运行 SQL。

Cortex Search

使用 Cortex Search 这项 Snowflake 全托管搜索服务,为 RAG 和知识工作流检索相关的 非结构化 数据。

SQL 执行

直接在 Snowflake 仓库上运行受治理的 SQL 查询,并可配置只读模式、超时和仓库选择。

由于该集成会暴露你的 MCP 服务器发布的全部工具,因此你也可以将 Cortex Agents自定义工具(用户定义函数和存储过程)公开给你的 CrewAI 智能体。

在使用 Snowflake 集成之前,请确保你已具备:

  • 一个拥有有效订阅的 CrewAI AMP 账户
  • 一个可访问 Cortex AI 功能的 Snowflake 账户
  • 一个已配置好你想公开的工具的 Snowflake 托管 MCP 服务器
  • MCP 服务器及其底层对象上适当的 Snowflake 权限(USAGE/SELECT)

Snowflake 托管的 MCP 服务器运行在你的 Snowflake 账户中,并定义哪些工具可供 CrewAI 等外部客户端使用。你可以通过 CREATE MCP SERVER 命令创建一个服务器,并列出你想公开的 Cortex Search 服务、Cortex Analyst 语义视图以及 SQL 工具。

CREATE MCP SERVER my_mcp_server
FROM SPECIFICATION $$
tools:
- name: "sales_analyst"
type: "CORTEX_ANALYST"
identifier: "MY_DATABASE.MY_SCHEMA.sales_semantic_view"
description: "Answer questions about sales metrics"
- name: "docs_search"
type: "CORTEX_SEARCH_SERVICE_QUERY"
identifier: "MY_DATABASE.MY_SCHEMA.support_docs_search"
description: "Search internal support documentation"
- name: "run_sql"
type: "SQL_EXECUTION"
description: "Execute read-only SQL queries"
$$;

有关完整规范,包括 Cortex Agents、自定义工具、响应大小限制和治理选项,请参阅 Snowflake 托管 MCP 服务器文档

在 CrewAI AMP 中配置 Snowflake 集成
  1. 打开工具与集成

    在 CrewAI AMP 左侧边栏中进入 Tools & Integrations,在应用列表中找到 Snowflake,然后打开它的配置面板。

  2. 提供连接详情

    填写 CrewAI 用于连接你的 Snowflake MCP 服务器的字段:

    FieldRequiredDescription
    NameYes该连接的描述性名称(默认值为 Snowflake)。
    DescriptionNo该连接提供内容的可选摘要。
    Account URLYes你的 Snowflake 账户 URL,例如 xy12345.us-east-1.snowflakecomputing.com
    DatabaseYes包含 MCP 服务器的数据库(例如 MY_DATABASE)。
    SchemaYes包含 MCP 服务器的 schema(例如 MY_SCHEMA)。
    MCP Server NameYes你在 Snowflake 中创建的 MCP 服务器对象名称(例如 MY_MCP_SERVER)。
  3. 选择认证方式

    选择 CrewAI 如何向 Snowflake 进行身份验证。OAuth 是推荐方式。

    • Use OAuth — 使用 OAuth 2.0 进行安全连接,以基于令牌的认证方式完成授权,而无需共享凭据。CrewAI 会处理完整授权流程并自动刷新令牌。将表单中显示的 Redirect URI (https://oauth.crewai.com/oauth/add) 复制到你的 Snowflake OAuth security integration 中,并将其注册为允许的重定向 URI。
    • Use personal access token — 使用从你的 Snowflake 账户设置中生成的 programmatic access token 进行认证。为该令牌分配最小权限角色,以限制暴露范围。
  4. 认证

    点击 Authenticate。如果使用 OAuth,你会被重定向到 Snowflake 以授权访问。认证完成后,Snowflake 服务器会出现在你的 Connections 中,其工具也会对你的团队可用。

连接后,你的 MCP 服务器公开的工具会与 Tools & Integrations 页面上的内置连接一起显示。你可以:

  • 像使用其他 CrewAI 工具一样,将工具分配给团队中的智能体。
  • 管理可见性,控制哪些团队成员可以使用该连接。
  • 随时在 Connections 列表中编辑或移除该连接。

现在,你的智能体可以请求 Cortex Analyst 获取指标、对文档运行 Cortex Search,并执行 SQL,结果会自动流回它们的推理过程。

需要帮助?

联系我们的支持团队,获取 Snowflake 集成设置或故障排查方面的帮助。