Community研究&データ分析github.com

Google BigQuery 自動化(Rube MCP / Composio)

Rube MCP(Composio)経由でGoogle BigQueryタスクを自動化:SQLクエリの実行、データセットとメタデータの探索、Metabase統合によるMBQLクエリの実行を行います。常にツールを先に検索して最新のスキーマを取得してください。

Composio) とは?

このスキルは、Rube MCP(Composio)を介してGoogle BigQueryのデータベース操作を自動化するためのAIエージェントツールです。MetabaseというBIツールを通じてBigQueryにアクセスし、SQLクエリの実行、データベースやテーブル・フィールドのメタデータ探索、MBQL(Metabase独自のクエリ言語)による集計・フィルタリングクエリを実行できます。主なワークフローとして、ネイティブSQLクエリの実行、構造化されたMBQLクエリの実行、クエリメタデータの取得、MBQLからネイティブSQLへの変換、データベース一覧の取得、特定データベースのスキーマメタデータ取得をサポートします。常に最初に`RUBE_SEARCH_TOOLS`を呼び出して現在のツールスキーマを取得することが前提で、MetabaseのデータベースIDは内部的な整数値であり、実際のBigQueryプロジェクト名とは異なる点に注意が必要です。対応プラットフォームはRube MCPが動作するすべてのクライアント(Claude Code、Cursor、Codexなど)で、MCPサーバーとして`https://rube.app/mcp`を追加するだけで利用開始できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ComposioHQ/awesome-codex-skills/tree/main/composio-skills/googlebigquery-automation

Installed? Explore more 研究&データ分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Google BigQuery Automation via Rube MCP

Rube MCP(Composio)を使用して、Metabase統合を介したSQLクエリの実行、データベーススキーマの探索、データセットの分析を行います。

ツールキットドキュメント: composio.dev/toolkits/googlebigquery

前提条件

  • Rube MCPが接続されていること(RUBE_SEARCH_TOOLSが利用可能であること)
  • ツールキットmetabaseを使用したRUBE_MANAGE_CONNECTIONSによるアクティブな接続
  • BigQueryデータソースに接続されたMetabaseインスタンス
  • 常に最初にRUBE_SEARCH_TOOLSを呼び出して、現在のツールスキーマを取得してください。

セットアップ

Rube MCPの入手: https://rube.app/mcpをクライアント設定でMCPサーバーとして追加します。APIキーは不要で、エンドポイントを追加するだけで動作します。

  1. RUBE_SEARCH_TOOLSが応答することを確認して、Rube MCPが利用可能であることを確認します。
  2. ツールキットmetabaseを使用してRUBE_MANAGE_CONNECTIONSを呼び出します。
  3. 接続がACTIVEでない場合は、返された認証リンクに従ってセットアップを完了します。
  4. ワークフローを実行する前に、接続ステータスがACTIVEであることを確認します。

注: BigQueryデータは、BigQueryをデータソースとして接続するビジネスインテリジェンスツールであるMetabaseを介してアクセスされます。以下のツールは、MetabaseのAPIを通じてクエリを実行し、メタデータを取得します。

コアワークフロー

1. ネイティブSQLクエリの実行

METABASE_POST_API_DATASETをtype nativeで使用して、BigQueryデータベースに対して生のSQLクエリを実行します。

Tool: METABASE_POST_API_DATASET
Parameters:
  - database (required): MetabaseデータベースID(整数)
  - type (required): SQLクエリの場合は "native"
  - native (required): "query"文字列を含むオブジェクト
    - query: 生のSQL文字列(例: "SELECT * FROM users LIMIT 10")
    - template_tags: パラメータ化されたクエリ変数(省略可能)
  - constraints: { "max-results": 1000 }(省略可能)

2. 構造化MBQLクエリの実行

METABASE_POST_API_DATASETをtype queryで使用して、組み込みの集計とフィルタリングを備えたMetabaseクエリ言語(MBQL)クエリを実行します。

Tool: METABASE_POST_API_DATASET
Parameters:
  - database (required): MetabaseデータベースID
  - type (required): MBQLの場合は "query"
  - query (required): 以下のフィールドを含むオブジェクト:
    - source-table: テーブルID(整数)
    - aggregation: 例: [["count"]] または [["sum", ["field", 5, null]]]
    - breakout: グループ化フィールド
    - filter: フィルタ条件
    - limit: 最大行数
    - order-by: ソートフィールド

3. クエリメタデータの取得

METABASE_POST_API_DATASET_QUERY_METADATAを使用して、クエリ可能なデータベース、テーブル、フィールドに関するメタデータを取得します。

Tool: METABASE_POST_API_DATASET_QUERY_METADATA
Parameters:
  - database (required): MetabaseデータベースID
  - type (required): "query" または "native"
  - query (required): クエリオブジェクト(例: {"source-table": 1})

4. クエリをネイティブSQLに変換

METABASE_POST_API_DATASET_NATIVEを使用して、MBQLクエリを対応するネイティブSQL表現に変換します。

Tool: METABASE_POST_API_DATASET_NATIVE
Parameters:
  - database (required): MetabaseデータベースID
  - type (required): "native"
  - native (required): "query"とオプションの"template_tags"を含むオブジェクト
  - parameters: クエリパラメータ値(省略可能)

5. 利用可能なデータベースの一覧表示

METABASE_GET_API_DATABASEを使用して、Metabaseに設定されているすべてのデータベース接続を検出します。

Tool: METABASE_GET_API_DATABASE
Description: Metabaseに設定されているすべてのデータベースインスタンスのリストを取得します。
Note: このツールの完全なスキーマを取得するには、RUBE_SEARCH_TOOLSを呼び出してください。

6. データベーススキーマメタデータの取得

METABASE_GET_API_DATABASE_ID_METADATAを使用して、特定のデータベースの完全なテーブルとフィールド情報を取得します。

Tool: METABASE_GET_API_DATABASE_ID_METADATA
Description: 特定のデータベースの完全なメタデータを取得します。これには、
  すべてのテーブルとフィールドが含まれます。
Note: このツールの完全なスキーマを取得するには、RUBE_SEARCH_TOOLSを呼び出してください。

一般的なパターン

  • 探索してからクエリ: METABASE_GET_API_DATABASEを使用してデータベースIDを見つけ、次にMETABASE_GET_API_DATABASE_ID_METADATAを使用してテーブルとフィールドを探索し、その後METABASE_POST_API_DATASETを使用してクエリを実行します。
  • SQLファーストアプローチ: METABASE_POST_API_DATASETをtype: "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互換であることを確認してください。
  • constraints内のmax-resultsのデフォルト値によって、返される行数が制限される場合があります。大きな結果セットの場合は、明示的に設定してください。
  • METABASE_POST_API_DATASETからの応答には、結果がdataの下にネストされて含まれています。構造が深くネストされている可能性があるため、注意して解析してください。
  • MBQLのaggregation、breakout、filter配列で使用されるMetabaseフィールドIDは、メタデータ応答から取得した整数である必要があります。

クイックリファレンス

アクションツール主なパラメータ
SQLクエリの実行METABASE_POST_API_DATASETdatabase, type: "native", native.query
MBQLクエリの実行METABASE_POST_API_DATASETdatabase, type: "query", query
クエリメタデータの取得METABASE_POST_API_DATASET_QUERY_METADATAdatabase, type, query
SQLへの変換METABASE_POST_API_DATASET_NATIVEdatabase, type, native
パラメータ値の取得METABASE_POST_API_DATASET_PARAMETER_VALUESparameter, field_ids
データベース一覧METABASE_GET_API_DATABASE(完全なスキーマはRUBE_SEARCH_TOOLSを参照)
データベースメタデータの取得METABASE_GET_API_DATABASE_ID_METADATA(完全なスキーマはRUBE_SEARCH_TOOLSを参照)

Powered by Composio

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

ComposioHQ/-21risk-automation

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/-2chat-automation

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/ably-automation

Automate Ably tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abstract-automation

Automate Abstract tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abuselpdb-automation

Automate Abuselpdb tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abyssale-automation

Automate Abyssale tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accelo-automation

Automate Accelo tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accredible-certificates-automation

Automate Accredible Certificates tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/acculynx-automation

Automate Acculynx tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/active-campaign-automation

Automate ActiveCampaign tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/addresszen-automation

Automate Addresszen tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adobe-automation

Automate Adobe tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adrapid-automation

Automate Adrapid tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adyntel-automation

Automate Adyntel tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aeroleads-automation

Automate Aeroleads tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aero-workflow-automation

Automate Aero Workflow tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinda-automation

Automate Affinda tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinity-automation

Automate Affinity tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agencyzoom-automation

Automate Agencyzoom tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agent-deep-links

Build, validate, and troubleshoot deep links for Codex, Cursor, VS Code, Visual Studio, and similar tools. Use when users ask for clickable links (especially in Slack) that open threads, files, folders, or app settings.

関連スキル