mcpField
D
datalineage-bigquery-asset-impact-analysis

datalineage-bigquery-asset-impact-analysis

github.com/googleData & databases21.6k6.4k installsUpdated today
Repository

About datalineage-bigquery-asset-impact-analysis

A skill for assessing the downstream impact of changes or failures involving BigQuery tables and views. It uses Google Cloud's Data Lineage MCP Server to map dependent assets and transformation processes.

Key features

  1. 01Resolve BigQuery asset names
  2. 02Search downstream lineage
  3. 03Identify direct and indirect impacts
  4. 04Trace transformation processes
  5. 05Present blast-radius findings

Use cases

  1. 01Assessing impact of a broken table
  2. 02Planning changes to a BigQuery view
  3. 03Finding assets affected by paused updates

MCP support

Requires an active connection to the Data Lineage MCP Server and uses its search_lineage tool to retrieve downstream relationships.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/google/skills --skill datalineage-bigquery-asset-impact-analysis

After installing, type/datalineage-bigquery-asset-impact-analysisin Claude Code to confirm it loaded.

Bundled filesreferences/attribution.mdreferences/mcp-usage.md

Details

From the project README

BigQuery Asset Impact Analysis

This skill guides the agent in performing a downstream impact analysis (blast radius assessment) when a BigQuery table or view is reported as broken, stale, missing, or when a user is planning maintenance and wants to know the consequences of modifying or pausing updates to an asset.

It relies primarily on the data lineage (Knowledge Catalog) MCP Server on Google Cloud to discover relationships between assets.

Attribution

MUST READ: Before executing any gcloud, REST API, or MCP command, you MUST read Usage Attribution. For commands executed directly in the terminal (never in generated scripts, Terraform, or user code), prefix gcloud with CLOUDSDK_METRICS_REQUEST_ATTRIBUTION="agent-skills/1.0 (skill:datalineage-bigquery-asset-impact-analysis)" and append agent-skills/1.0 (skill:datalineage-bigquery-asset-impact-analysis) to User-Agent headers.

Prerequisites

This skill requires access to the data lineage API on Google Cloud and an active client connection to the Data Lineage MCP Server. For detailed connection configurations and tool schemas, refer to MCP Usage.

Analysis Workflow

1. Resolve the Asset's Fully Qualified Name (FQN)
  • Ensure you have the correct FQN format for the BigQuery asset:
    • Format: bigquery:{project_id}.{dataset_id}.{table_or_view_id}
    • Example: bigquery:my-prod-project.analytics.orders
2. Determine Locations and Parent Path

Identify the locations to search and construct the Data Lineage API request:

  • Discover Asset Location: Run the command bq show --format=json {project_id}:{dataset_id} and extract the location field (e.g., us-central1 or us). If location discovery fails due to permissions or missing tools, prompt the user for the dataset's location.
  • Set Parent Path: Set the parent path using the project ID and the MCP server's location. Consult the DataLineageServer tool definition to find the configured region or location (e.g., us). The format is: projects/{project_id}/locations/{mcp_server_location}.
  • Configure Search Scope: Include the discovered asset location in the locations array of the payload (e.g., ["us-central1"] or ["us", "us-central1"]).
3. Retrieve the Downstream Lineage Graph

Call the DataLineageServer:search_lineage tool to fetch downstream relationships.

  • Direction: Set to DOWNSTREAM.
  • Search Parameters: Use max_depth = 10 and max_process_per_link = 5 as robust defaults.
4. Identify the Blast Radius

Traverse the returned lineage links to build the impact graph:

  • Affected Assets: The target of each link represents a downstream asset that depends on your source asset.
  • Transform Processes: Inspect the processes field on each link. This identifies the ETL pipelines, BigQuery Views, or Scheduled Queries that propagate the data.
  • Direct vs. Indirect Impact:
    • Direct Impact (Depth 1): Assets directly consuming the source asset. If a link has dependency_type: EXACT_COPY, mark the target as "Directly Stale / Identical Copy".
    • Indirect Impact (Depth > 1): Assets further down the stream that will experience cascading stale data or failures.
5. Summarize and Format the Output

Present your findings clearly to the user using the following structure:

  1. Executive Summary: State the total number of downstream assets affected and the maximum depth of the impact.

  2. Critical Path: Highlight high-priority downstream assets (e.g., assets containing "prod", "dashboard", "reporting", or "master" in their names).

  3. Blast Radius Table: A clean Markdown table listing the dependencies. You MUST include all columns:

    Downstream AssetTransform ProcessDepthImpact Type
    bigquery:project.dataset.tableprojects/p/locations/l/processes/proc1Direct
    bigquery:project.dataset.viewprojects/p/locations/l/processes/view2Indirect
  4. Analysis Metadata: Provide transparency on the parameters and boundaries of your search so the user can choose to expand them:

    • Locations Searched: {list_of_locations_queried}
    • Parent Location: {parent_path}
    • Depth Limit: {max_depth}
    • Process per Link Limit: {max_process_per_link}
    • Tip for User: Let the user know they can request to rerun the analysis with expanded locations or larger depth limits.

Crucial Constraints & Guardrails

  1. Interpret Empty Responses Correctly:
    • If the lineage response is empty, immediately assume that no dependencies exist in the queried locations and report this to the user.
  2. Strictly Banned Bypasses:
    • Exclusively retrieve downstream relationships using the DataLineageServer:search_lineage tool.
  3. Verify Asset Existence First:
    • If bq show indicates the source table does not exist, stop and report this directly to the user. Do not attempt to guess alternative table names unless the user explicitly instructs you to do so.
  4. No Output Shortcutting or Hallucinated Artifacts:
    • Present the complete downstream blast radius table directly in your final response. Avoid telling the user you have created a separate Markdown file or artifact containing the details unless you have explicitly executed file-writing tools to create it.

Reference Directory

  • MCP Usage: Using the data lineage remote MCP server on Google Cloud and tool preferences.

External Documentation

Comments

Markdown supported