MCP Tools Reference: dataform.googleapis.com

ツール: query_compilation_actions

特定の Dataform コンパイル結果のコンパイル結果アクションを返します。

name パラメータの値は projects/{project_id}/locations/{location}/repositories/{repository}/compilationResults/{compilation_result} 形式にする必要があります。

次のサンプルは、curl を使用して query_compilation_actions MCP ツールを呼び出す方法を示しています。

Curl リクエスト
                  
curl --location 'https://dataform.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "query_compilation_actions",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

入力スキーマ

QueryCompilationResultActions リクエスト メッセージ。

QueryCompilationResultActionsRequest

JSON 表現
{
  "name": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string
}
フィールド
name

string

必須。コンパイル結果の名前。

pageSize

integer

省略可。返されるコンパイル結果の最大数。サーバーが返すアイテムが、リクエストされた数よりも少ないことがあります。指定しない場合は、サーバーで適切なデフォルトが選択されます。

pageToken

string

省略可。前回の QueryCompilationResultActions 呼び出しから受け取ったページトークン。後続のページを取得するにはこれを指定します。

ページ分割を行う場合、page_size を除く QueryCompilationResultActions に指定する他のすべてのパラメータは、ページトークンを提供した呼び出しと一致する必要があります。

filter

string

省略可。返されるリストのフィルタ(省略可)。現在、フィルタリングは file_path フィールドでのみサポートされています。

出力スキーマ

QueryCompilationResultActions レスポンス メッセージ。

QueryCompilationResultActionsResponse

JSON 表現
{
  "compilationResultActions": [
    {
      object (CompilationResultAction)
    }
  ],
  "nextPageToken": string
}
フィールド
compilationResultActions[]

object (CompilationResultAction)

コンパイル結果アクションのリスト。

nextPageToken

string

次のページを取得するために page_token として送信できるトークン。このフィールドを省略すると、後続のページはなくなります。

CompilationResultAction

JSON 表現
{
  "target": {
    object (Target)
  },
  "canonicalTarget": {
    object (Target)
  },
  "filePath": string,

  // Union field compiled_object can be only one of the following:
  "relation": {
    object (Relation)
  },
  "operations": {
    object (Operations)
  },
  "assertion": {
    object (Assertion)
  },
  "declaration": {
    object (Declaration)
  },
  "notebook": {
    object (Notebook)
  },
  "dataPreparation": {
    object (DataPreparation)
  }
  // End of list of possible types for union field compiled_object.

  // Union field _internal_metadata can be only one of the following:
  "internalMetadata": string
  // End of list of possible types for union field _internal_metadata.
}
フィールド
target

object (Target)

このアクションの識別子。コンパイル結果内で一意。

canonicalTarget

object (Target)

オーバーライドが構成されていない状態でプロジェクトがコンパイルされた場合のアクションの識別子。コンパイル結果内で一意。

filePath

string

このアクションが配置されているファイル名を含むフルパス(ワークスペース ルートからの相対パス)。

共用体フィールド compiled_object。コンパイルされたオブジェクト。compiled_object は次のいずれかになります。
relation

object (Relation)

このアクションによって作成または更新されたデータベース リレーション。

operations

object (Operations)

このアクションによって実行されるデータベース オペレーション。

assertion

object (Assertion)

このアクションによって実行されるアサーション。

declaration

object (Declaration)

このアクションによって宣言された宣言。

notebook

object (Notebook)

このアクションによって実行されるノートブック。

dataPreparation

object (DataPreparation)

このアクションによって実行されるデータ準備。

共用体フィールド _internal_metadata

_internal_metadata は次のいずれかになります。

internalMetadata

string

出力専用。リソースの提供に内部で使用されるすべてのメタデータ情報。たとえば、タイムスタンプ、フラグ、ステータス フィールドなどです。このフィールドの形式は JSON 文字列です。

関連するオプション、値

JSON 表現
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],
  "relationDescriptor": {
    object (RelationDescriptor)
  },
  "relationType": enum (RelationType),
  "selectQuery": string,
  "preOperations": [
    string
  ],
  "postOperations": [
    string
  ],
  "incrementalTableConfig": {
    object (IncrementalTableConfig)
  },
  "partitionExpression": string,
  "clusterExpressions": [
    string
  ],
  "partitionExpirationDays": integer,
  "requirePartitionFilter": boolean,
  "additionalOptions": {
    string: string,
    ...
  },
  "connection": string,
  "tableFormat": enum (TableFormat),
  "fileFormat": enum (FileFormat),
  "storageUri": string
}
フィールド
dependencyTargets[]

object (Target)

このアクションが依存するアクションのリスト。

disabled

boolean

このアクションが無効かどうか(実行すべきでないかどうか)。

tags[]

string

このアクションに関する任意のユーザー定義タグ。

relationDescriptor

object (RelationDescriptor)

リレーションとその列の記述子。

relationType

enum (RelationType)

この関係のタイプ。

selectQuery

string

このリレーションに含める行を返す SELECT クエリ。

preOperations[]

string

リレーションを作成する前に実行する SQL ステートメント。

postOperations[]

string

リレーションの作成後に実行する SQL ステートメント。

incrementalTableConfig

object (IncrementalTableConfig)

この関係の INCREMENTAL_TABLE 設定を構成します。relation_typeINCREMENTAL_TABLE の場合にのみ設定されます。

partitionExpression

string

リレーションのパーティショニングに使用される SQL 式。

clusterExpressions[]

string

テーブルのクラスタ化に使用される列または SQL 式のリスト。

partitionExpirationDays

integer

パーティションの有効期限を日数で設定します。

requirePartitionFilter

boolean

このテーブルのクエリに、パーティショニングする列を除外する述語フィルタを含める必要があるかどうかを指定します。

additionalOptions

map (key: string, value: string)

テーブル / ビューの作成ステートメントのオプション句に Key-Value ペアとして提供される追加オプション。サポートされているオプションの詳細については、https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language をご覧ください。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

connection

string

省略可。Cloud Storage などの外部ストレージへの読み取りと書き込みに使用する認証情報を指定する接続。接続の形式は {project}.{location}.{connection_id} または projects/{project}/locations/{location}/connections/{connection_id} にするか、DEFAULT に設定できます。

tableFormat

enum (TableFormat)

省略可。BigQuery テーブルのテーブル形式。

fileFormat

enum (FileFormat)

省略可。BigQuery テーブルのファイル形式。

storageUri

string

省略可。テーブルデータが保存されている外部フォルダの完全修飾ロケーション接頭辞。URI は gs://bucket/path_to_table/ の形式にする必要があります。

ターゲット

JSON 表現
{
  "database": string,
  "schema": string,
  "name": string
}
フィールド
database

string

省略可。アクションのデータベース(Google Cloud プロジェクト ID)。

schema

string

省略可。database 内のアクションのスキーマ(BigQuery データセット ID)。

name

string

省略可。databaseschema 内のアクションの名前。

RelationDescriptor

JSON 表現
{
  "description": string,
  "columns": [
    {
      object (ColumnDescriptor)
    }
  ],
  "bigqueryLabels": {
    string: string,
    ...
  }
}
フィールド
description

string

関係のテキスト説明。

columns[]

object (ColumnDescriptor)

リレーション内の列の説明のリスト。

bigqueryLabels

map (key: string, value: string)

リレーションに適用する BigQuery ラベルのセット。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

ColumnDescriptor

JSON 表現
{
  "path": [
    string
  ],
  "description": string,
  "bigqueryPolicyTags": [
    string
  ]
}
フィールド
path[]

string

列の識別子。path の各エントリは、ネストの 1 つのレベルを表します。

description

string

列のテキストによる説明。

bigqueryPolicyTags[]

string

列に適用される BigQuery ポリシータグのリスト。

BigqueryLabelsEntry

JSON 表現
{
  "key": string,
  "value": string
}
フィールド
key

string

value

string

IncrementalTableConfig

JSON 表現
{
  "incrementalSelectQuery": string,
  "refreshDisabled": boolean,
  "uniqueKeyParts": [
    string
  ],
  "updatePartitionFilter": string,
  "incrementalPreOperations": [
    string
  ],
  "incrementalPostOperations": [
    string
  ]
}
フィールド
incrementalSelectQuery

string

リレーションがすでに存在し、更新されていない場合に、リレーションに挿入される行を返す SELECT クエリ。

refreshDisabled

boolean

このテーブルを更新から保護するかどうか。

uniqueKeyParts[]

string

行の一意性を定義するために使用される列または SQL 式のセット。重複(unique_key_parts で定義)が見つかった場合、新しく選択された行(incremental_select_query で定義)のみがリレーションに含まれます。

updatePartitionFilter

string

マージ オペレーションの対象となる既存の行のセットを制限するために使用される SQL 式条件(詳細については、unique_key_parts を参照)。

incrementalPreOperations[]

string

新しい行をリレーションに挿入する前に実行される SQL ステートメント。

incrementalPostOperations[]

string

新しい行をリレーションに挿入した後に実行される SQL ステートメント。

AdditionalOptionsEntry

JSON 表現
{
  "key": string,
  "value": string
}
フィールド
key

string

value

string

運用

JSON 表現
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],
  "relationDescriptor": {
    object (RelationDescriptor)
  },
  "queries": [
    string
  ],
  "hasOutput": boolean
}
フィールド
dependencyTargets[]

object (Target)

このアクションが依存するアクションのリスト。

disabled

boolean

このアクションが無効かどうか(実行すべきでないかどうか)。

tags[]

string

このアクションに関する任意のユーザー定義タグ。

relationDescriptor

object (RelationDescriptor)

出力リレーションとその列の記述子。has_output が true の場合にのみ設定されます。

queries[]

string

変更なしで実行される任意の SQL ステートメントのリスト。

hasOutput

boolean

これらのオペレーションが出力リレーションを生成するかどうか。

アサーション

JSON 表現
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "parentAction": {
    object (Target)
  },
  "disabled": boolean,
  "tags": [
    string
  ],
  "selectQuery": string,
  "relationDescriptor": {
    object (RelationDescriptor)
  }
}
フィールド
dependencyTargets[]

object (Target)

このアクションが依存するアクションのリスト。

parentAction

object (Target)

このアサーションの親アクション。このアサーションが自動的に生成された場合にのみ設定します。

disabled

boolean

このアクションが無効かどうか(実行すべきでないかどうか)。

tags[]

string

このアクションに関する任意のユーザー定義タグ。

selectQuery

string

このアサーションが成功するために 0 行を返す必要がある SELECT クエリ。

relationDescriptor

object (RelationDescriptor)

アサーションの自動生成ビューとその列の記述子。

宣言

JSON 表現
{
  "relationDescriptor": {
    object (RelationDescriptor)
  }
}
フィールド
relationDescriptor

object (RelationDescriptor)

リレーションとその列の記述子。ドキュメントとしてのみ使用されます。つまり、ここでの値は、リレーションのメタデータに変更をもたらしません。

ノートブック

JSON 表現
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "contents": string,
  "tags": [
    string
  ]
}
フィールド
dependencyTargets[]

object (Target)

このアクションが依存するアクションのリスト。

disabled

boolean

このアクションが無効かどうか(実行すべきでないかどうか)。

contents

string

ノートブックの内容。

tags[]

string

このアクションに関する任意のユーザー定義タグ。

DataPreparation

JSON 表現
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],

  // Union field definition can be only one of the following:
  "contentsYaml": string,
  "contentsSql": {
    object (SqlDefinition)
  }
  // End of list of possible types for union field definition.
}
フィールド
dependencyTargets[]

object (Target)

このアクションが依存するアクションのリスト。

disabled

boolean

このアクションが無効かどうか(実行すべきでないかどうか)。

tags[]

string

このアクションに関する任意のユーザー定義タグ。

共用体フィールド definition。データ準備の定義。definition は次のいずれかになります。
contentsYaml

string

データ準備定義。YAML 文字列として保存されます。

contentsSql

object (SqlDefinition)

データ準備の SQL 定義。SQL クエリと追加のコンテキスト情報が含まれます。

SqlDefinition

JSON 表現
{
  "query": string,
  "errorTable": {
    object (ErrorTable)
  },
  "load": {
    object (LoadConfig)
  }
}
フィールド
query

string

データ準備の手順を表す SQL クエリ。Pipe SQL クエリ ステートメントとしてフォーマットされます。

errorTable

object (ErrorTable)

エラーテーブルの構成、

load

object (LoadConfig)

構成を読み込みます。

ErrorTable

JSON 表現
{
  "target": {
    object (Target)
  },
  "retentionDays": integer
}
フィールド
target

object (Target)

エラーテーブルのターゲット。

retentionDays

integer

エラー テーブルのパーティションの有効期限(日数)。正の値のみを使用できます。

LoadConfig

JSON 表現
{

  // Union field mode can be only one of the following:
  "replace": {
    object (SimpleLoadMode)
  },
  "append": {
    object (SimpleLoadMode)
  },
  "maximum": {
    object (IncrementalLoadMode)
  },
  "unique": {
    object (IncrementalLoadMode)
  }
  // End of list of possible types for union field mode.
}
フィールド
共用体フィールド mode。読み込みモード mode は、次のいずれかになります。
replace

object (SimpleLoadMode)

宛先テーブルを置き換える

append

object (SimpleLoadMode)

宛先テーブルに追加する

maximum

object (IncrementalLoadMode)

宛先テーブルの列の以前の最大値を超える値を含むレコードを挿入する

unique

object (IncrementalLoadMode)

列の値が宛先テーブルにまだ存在しないレコードを挿入する

IncrementalLoadMode

JSON 表現
{
  "column": string
}
フィールド
column

string

増分読み込みモードの列名

RelationType

この関係のタイプを示します。

列挙型
RELATION_TYPE_UNSPECIFIED デフォルト値。この値は使用されません。
TABLE リレーションはテーブルです。
VIEW リレーションはビューです。
INCREMENTAL_TABLE リレーションは増分テーブルです。
MATERIALIZED_VIEW リレーションはマテリアライズド ビューです。

TableFormat

BigQuery テーブルでサポートされているテーブル形式。

列挙型
TABLE_FORMAT_UNSPECIFIED デフォルト値。
ICEBERG Apache Iceberg 形式。

FileFormat

BigQuery テーブルでサポートされているファイル形式。

列挙型
FILE_FORMAT_UNSPECIFIED デフォルト値。
PARQUET Apache Parquet 形式。

ツールのアノテーション

破壊的ヒント: ❌ | べき等ヒント: ✅ | 読み取り専用ヒント: ✅ | オープン ワールド ヒント: ❌