GoogleBigQuery自动化Skill googlebigquery-automation

该技能通过 Rube MCP 自动化 Google BigQuery 任务,包括运行 SQL 查询、探索数据集和元数据、执行 MBQL 查询等,适用于数据分析和商业智能场景。关键词:Google BigQuery, Metabase, Rube MCP, SQL 查询, 数据分析, 商业智能, 自动化, 数据工程。

商业智能 1 次安装 2 次浏览 更新于 3/12/2026

名称: googlebigquery-automation 描述: “通过 Rube MCP (Composio) 自动化 Google BigQuery 任务:运行 SQL 查询、探索数据集和元数据、通过 Metabase 集成执行 MBQL 查询。始终先搜索工具以获取当前模式。” 要求: mcp: [rube]

通过 Rube MCP 实现 Google BigQuery 自动化

通过 Rube MCP (Composio) 运行 SQL 查询、探索数据库模式,并通过 Metabase 集成分析数据集。

工具包文档: composio.dev/toolkits/googlebigquery

前提条件

  • Rube MCP 必须已连接(RUBE_SEARCH_TOOLS 可用)
  • 通过 RUBE_MANAGE_CONNECTIONS 建立 toolkit metabase 的活跃连接
  • 连接到您的 BigQuery 数据源的 Metabase 实例
  • 始终先调用 RUBE_SEARCH_TOOLS 以获取当前工具模式

设置

获取 Rube MCP: 在客户端配置中将 https://rube.app/mcp 添加为 MCP 服务器。无需 API 密钥 — 只需添加端点即可工作。

  1. 通过确认 RUBE_SEARCH_TOOLS 响应来验证 Rube MCP 是否可用
  2. 使用 toolkit metabase 调用 RUBE_MANAGE_CONNECTIONS
  3. 如果连接未处于活跃状态,请遵循返回的身份验证链接完成设置
  4. 在运行任何工作流之前,确认连接状态显示为活跃

注意: BigQuery 数据通过 Metabase 访问,Metabase 是一个商业智能工具,将 BigQuery 作为数据源连接。以下工具通过 Metabase 的 API 执行查询并检索元数据。

核心工作流

1. 运行原生 SQL 查询

使用 METABASE_POST_API_DATASET 和 type native 来针对您的 BigQuery 数据库执行原始 SQL 查询。

工具: METABASE_POST_API_DATASET
参数:
  - database (必需): Metabase 数据库 ID (整数)
  - type (必需): "native" 用于 SQL 查询
  - native (必需): 包含 "query" 字符串的对象
    - query: 原始 SQL 字符串 (例如,"SELECT * FROM users LIMIT 10")
    - template_tags: 参数化查询变量 (可选)
  - constraints: { "max-results": 1000 } (可选)

2. 运行结构化 MBQL 查询

使用 METABASE_POST_API_DATASET 和 type query 来执行具有内置聚合和过滤功能的 Metabase 查询语言查询。

工具: METABASE_POST_API_DATASET
参数:
  - database (必需): Metabase 数据库 ID
  - type (必需): "query" 用于 MBQL
  - query (必需): 包含以下内容的对象:
    - source-table: 表 ID (整数)
    - aggregation: 例如,[["count"]] 或 [["sum", ["field", 5, null]]]
    - breakout: 分组字段
    - filter: 过滤条件
    - limit: 最大行数
    - order-by: 排序字段

3. 获取查询元数据

使用 METABASE_POST_API_DATASET_QUERY_METADATA 来检索可用于查询的数据库、表和字段的元数据。

工具: METABASE_POST_API_DATASET_QUERY_METADATA
参数:
  - database (必需): Metabase 数据库 ID
  - type (必需): "query" 或 "native"
  - query (必需): 查询对象 (例如,{"source-table": 1})

4. 将查询转换为原生 SQL

使用 METABASE_POST_API_DATASET_NATIVE 将 MBQL 查询转换为其原生 SQL 表示形式。

工具: METABASE_POST_API_DATASET_NATIVE
参数:
  - database (必需): Metabase 数据库 ID
  - type (必需): "native"
  - native (必需): 包含 "query" 和可选 "template_tags" 的对象
  - parameters: 查询参数值 (可选)

5. 列出可用数据库

使用 METABASE_GET_API_DATABASE 来发现 Metabase 中配置的所有数据库连接。

工具: METABASE_GET_API_DATABASE
描述: 检索 Metabase 中配置的所有 Database 实例的列表。
注意: 调用 RUBE_SEARCH_TOOLS 以获取此工具的完整模式。

6. 获取数据库模式元数据

使用 METABASE_GET_API_DATABASE_ID_METADATA 来检索特定数据库的完整表和字段信息。

工具: METABASE_GET_API_DATABASE_ID_METADATA
描述: 检索特定数据库的完整元数据,包括所有表和字段。
注意: 调用 RUBE_SEARCH_TOOLS 以获取此工具的完整模式。

常见模式

  • 先发现再查询: 使用 METABASE_GET_API_DATABASE 查找数据库 ID,然后使用 METABASE_GET_API_DATABASE_ID_METADATA 探索表和字段,然后使用 METABASE_POST_API_DATASET 运行查询。
  • SQL 优先方法: 使用 METABASE_POST_API_DATASETtype: "native" 并编写标准 SQL 查询以获得最大灵活性。
  • 参数化查询: 在原生查询中使用 template_tags 进行安全参数化(例如,SELECT * FROM users WHERE id = {{user_id}})。
  • 模式探索: 在构建复杂查询之前,使用 METABASE_POST_API_DATASET_QUERY_METADATA 来了解表结构。
  • 获取参数值: 使用 METABASE_POST_API_DATASET_PARAMETER_VALUES 来检索过滤器下拉列表的可能值。

已知陷阱

  • database 参数是 Metabase 内部的 整数 ID,而不是 BigQuery 项目或数据集名称。首先使用 METABASE_GET_API_DATABASE 查找有效的数据库 ID。
  • MBQL 查询中的 source-table 也是 Metabase 内部的整数,而不是 BigQuery 表名。通过元数据工具发现表 ID。
  • 原生 SQL 查询使用 BigQuery SQL 方言(标准 SQL)。确保语法与 BigQuery 兼容。
  • 约束中的 max-results 默认值可以限制返回的行数。对于大型结果集,请显式设置。
  • 来自 METABASE_POST_API_DATASET 的响应包含嵌套在 data 下的结果 — 仔细解析,因为结构可能深度嵌套。
  • MBQL aggregationbreakoutfilter 数组中使用的 Metabase 字段 ID 必须是从元数据响应中获得的整数。

快速参考

操作 工具 关键参数
运行 SQL 查询 METABASE_POST_API_DATASET database, type: "native", native.query
运行 MBQL 查询 METABASE_POST_API_DATASET database, type: "query", query
获取查询元数据 METABASE_POST_API_DATASET_QUERY_METADATA database, type, query
转换为 SQL METABASE_POST_API_DATASET_NATIVE database, type, native
获取参数值 METABASE_POST_API_DATASET_PARAMETER_VALUES parameter, field_ids
列出数据库 METABASE_GET_API_DATABASE (通过 RUBE_SEARCH_TOOLS 查看完整模式)
获取数据库元数据 METABASE_GET_API_DATABASE_ID_METADATA (通过 RUBE_SEARCH_TOOLS 查看完整模式)

Composio 提供支持