googlebigquery-automation

Automate Google BigQuery tasks via Rube MCP (Composio): run SQL queries, explore datasets and metadata, execute MBQL queries via Metabase integration. Always search tools first for current schemas.

Install

Hot:1

Download and extract to your skills directory

Copy command and send to OpenClaw for auto-install:

Download and install this skill https://openskills.cc/api/download?slug=composiohq-composio-skills-googlebigquery-automation&locale=en&source=copy
name:googlebigquery-automationdescription:"Automate Google BigQuery tasks via Rube MCP (Composio): run SQL queries, explore datasets and metadata, execute MBQL queries via Metabase integration. Always search tools first for current schemas."requires:mcp:[rube]

Google BigQuery Automation via Rube MCP

Run SQL queries, explore database schemas, and analyze datasets through the Metabase integration using Rube MCP (Composio).

Toolkit docs: composio.dev/toolkits/googlebigquery

Prerequisites


  • Rube MCP must be connected (RUBE_SEARCH_TOOLS available)

  • Active connection via RUBE_MANAGE_CONNECTIONS with toolkit metabase

  • A Metabase instance connected to your BigQuery data source

  • Always call RUBE_SEARCH_TOOLS first to get current tool schemas
  • Setup


    Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.

  • Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds

  • Call RUBE_MANAGE_CONNECTIONS with toolkit metabase

  • If connection is not ACTIVE, follow the returned auth link to complete setup

  • Confirm connection status shows ACTIVE before running any workflows
  • > Note: BigQuery data is accessed through Metabase, a business intelligence tool that connects to BigQuery as a data source. The tools below execute queries and retrieve metadata through Metabase's API.

    Core Workflows

    1. Run a Native SQL Query


    Use METABASE_POST_API_DATASET with type native to execute raw SQL queries against your BigQuery database.
    Tool: METABASE_POST_API_DATASET
    Parameters:
      - database (required): Metabase database ID (integer)
      - type (required): "native" for SQL queries
      - native (required): Object with "query" string
        - query: Raw SQL string (e.g., "SELECT * FROM users LIMIT 10")
        - template_tags: Parameterized query variables (optional)
      - constraints: { "max-results": 1000 } (optional)

    2. Run a Structured MBQL Query


    Use METABASE_POST_API_DATASET with type query for Metabase Query Language queries with built-in aggregation and filtering.
    Tool: METABASE_POST_API_DATASET
    Parameters:
      - database (required): Metabase database ID
      - type (required): "query" for MBQL
      - query (required): Object with:
        - source-table: Table ID (integer)
        - aggregation: e.g., [["count"]] or [["sum", ["field", 5, null]]]
        - breakout: Group-by fields
        - filter: Filter conditions
        - limit: Max rows
        - order-by: Sort fields

    3. Get Query Metadata


    Use METABASE_POST_API_DATASET_QUERY_METADATA to retrieve metadata about databases, tables, and fields available for querying.
    Tool: METABASE_POST_API_DATASET_QUERY_METADATA
    Parameters:
      - database (required): Metabase database ID
      - type (required): "query" or "native"
      - query (required): Query object (e.g., {"source-table": 1})

    4. Convert Query to Native SQL


    Use METABASE_POST_API_DATASET_NATIVE to convert an MBQL query into its native SQL representation.
    Tool: METABASE_POST_API_DATASET_NATIVE
    Parameters:
      - database (required): Metabase database ID
      - type (required): "native"
      - native (required): Object with "query" and optional "template_tags"
      - parameters: Query parameter values (optional)

    5. List Available Databases


    Use METABASE_GET_API_DATABASE to discover all database connections configured in Metabase.
    Tool: METABASE_GET_API_DATABASE
    Description: Retrieves a list of all Database instances configured in Metabase.
    Note: Call RUBE_SEARCH_TOOLS to get the full schema for this tool.

    6. Get Database Schema Metadata


    Use METABASE_GET_API_DATABASE_ID_METADATA to retrieve complete table and field information for a specific database.
    Tool: METABASE_GET_API_DATABASE_ID_METADATA
    Description: Retrieves complete metadata for a specific database including
      all tables and fields.
    Note: Call RUBE_SEARCH_TOOLS to get the full schema for this tool.

    Common Patterns

  • Discover then query: Use METABASE_GET_API_DATABASE to find database IDs, then METABASE_GET_API_DATABASE_ID_METADATA to explore tables and fields, then METABASE_POST_API_DATASET to run queries.

  • SQL-first approach: Use METABASE_POST_API_DATASET with type: "native" and write standard SQL queries for maximum flexibility.

  • Parameterized queries: Use template_tags in native queries for safe parameterization (e.g., SELECT * FROM users WHERE id = {{user_id}}).

  • Schema exploration: Use METABASE_POST_API_DATASET_QUERY_METADATA to understand table structures before building complex queries.

  • Get parameter values: Use METABASE_POST_API_DATASET_PARAMETER_VALUES to retrieve possible values for filter dropdowns.
  • Known Pitfalls

  • The database parameter is a Metabase-internal integer ID, not the BigQuery project or dataset name. Use METABASE_GET_API_DATABASE to find valid database IDs first.

  • source-table in MBQL queries is also a Metabase-internal integer, not the BigQuery table name. Discover table IDs via metadata tools.

  • Native SQL queries use BigQuery SQL dialect (Standard SQL). Ensure your syntax is BigQuery-compatible.

  • max-results in constraints defaults can limit returned rows. Set explicitly for large result sets.

  • Responses from METABASE_POST_API_DATASET contain results nested under data -- parse carefully as the structure may be deeply nested.

  • Metabase field IDs used in MBQL aggregation, breakout, and filter arrays must be integers obtained from metadata responses.
  • Quick Reference


    ActionToolKey Parameters
    Run SQL queryMETABASE_POST_API_DATASETdatabase, type: "native", native.query
    Run MBQL queryMETABASE_POST_API_DATASETdatabase, type: "query", query
    Get query metadataMETABASE_POST_API_DATASET_QUERY_METADATAdatabase, type, query
    Convert to SQLMETABASE_POST_API_DATASET_NATIVEdatabase, type, native
    Get parameter valuesMETABASE_POST_API_DATASET_PARAMETER_VALUESparameter, field_ids
    List databasesMETABASE_GET_API_DATABASE(see full schema via RUBE_SEARCH_TOOLS)
    Get database metadataMETABASE_GET_API_DATABASE_ID_METADATA(see full schema via RUBE_SEARCH_TOOLS)



    Powered by Composio