MCP Tools Reference: dataform.googleapis.com

Outil : query_compilation_actions

Renvoie les actions de résultat de compilation pour un résultat de compilation Dataform donné.

La valeur du paramètre name doit être au format projects/{project_id}/locations/{location}/repositories/{repository}/compilationResults/{compilation_result}.

L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP query_compilation_actions.

Requête 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
}'
                

Schéma d'entrée

Message de requête QueryCompilationResultActions.

QueryCompilationResultActionsRequest

Représentation JSON
{
  "name": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string
}
Champs
name

string

Obligatoire. Nom du résultat de la compilation.

pageSize

integer

Facultatif. Nombre maximal de résultats de compilation à renvoyer. Le serveur peut renvoyer un nombre d'éléments inférieur à celui demandé. Si aucune valeur n'est spécifiée, le serveur sélectionne une valeur par défaut appropriée.

pageToken

string

Facultatif. Jeton de page reçu d'un appel QueryCompilationResultActions précédent. Fournissez-le pour récupérer la page suivante.

Lors de la pagination, tous les autres paramètres fournis à QueryCompilationResultActions, à l'exception de page_size, doivent correspondre à l'appel ayant fourni le jeton de page.

filter

string

Facultatif. Filtre facultatif pour la liste renvoyée. Le filtrage n'est actuellement possible que sur le champ file_path.

Schéma de sortie

Message de réponse QueryCompilationResultActions.

QueryCompilationResultActionsResponse

Représentation JSON
{
  "compilationResultActions": [
    {
      object (CompilationResultAction)
    }
  ],
  "nextPageToken": string
}
Champs
compilationResultActions[]

object (CompilationResultAction)

Liste des actions de résultat de la compilation.

nextPageToken

string

Jeton pouvant être envoyé en tant que page_token pour récupérer la page suivante. Si ce champ est omis, il n'y a pas d'autres pages.

CompilationResultAction

Représentation 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.
}
Champs
target

object (Target)

Identifiant de cette action. Unique dans le résultat de la compilation.

canonicalTarget

object (Target)

Identifiant de l'action si le projet avait été compilé sans aucune configuration de remplacement. Unique dans le résultat de la compilation.

filePath

string

Chemin d'accès complet, y compris le nom du fichier dans lequel se trouve cette action, par rapport à la racine de l'espace de travail.

Champ d'union compiled_object. Objet compilé. compiled_object ne peut être qu'un des éléments suivants :
relation

object (Relation)

Relation de base de données créée/mise à jour par cette action.

operations

object (Operations)

Opérations de base de données exécutées par cette action.

assertion

object (Assertion)

Assertion exécutée par cette action.

declaration

object (Declaration)

Déclaration déclarée par cette action.

notebook

object (Notebook)

Notebook exécuté par cette action.

dataPreparation

object (DataPreparation)

Préparation des données exécutée par cette action.

Champ d'union _internal_metadata.

_internal_metadata ne peut être qu'un des éléments suivants :

internalMetadata

string

Uniquement en sortie. Toutes les informations de métadonnées utilisées en interne pour diffuser la ressource. Par exemple : codes temporels, indicateurs, champs d'état, etc. Le format de ce champ est une chaîne JSON.

Relation

Représentation 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
}
Champs
dependencyTargets[]

object (Target)

Liste des actions dont dépend cette action.

disabled

boolean

Indique si cette action est désactivée (c'est-à-dire si elle ne doit pas être exécutée).

tags[]

string

Tags arbitraires définis par l'utilisateur pour cette action.

relationDescriptor

object (RelationDescriptor)

Descripteur de la relation et de ses colonnes.

relationType

enum (RelationType)

Type de relation.

selectQuery

string

Requête SELECT qui renvoie les lignes que cette relation doit contenir.

preOperations[]

string

Instructions SQL à exécuter avant de créer la relation.

postOperations[]

string

Instructions SQL à exécuter après la création de la relation.

incrementalTableConfig

object (IncrementalTableConfig)

Configure les paramètres INCREMENTAL_TABLE pour cette relation. Défini uniquement si relation_type est INCREMENTAL_TABLE.

partitionExpression

string

Expression SQL utilisée pour partitionner la relation.

clusterExpressions[]

string

Liste de colonnes ou d'expressions SQL utilisées pour mettre la table en cluster.

partitionExpirationDays

integer

Définit le délai d'expiration de la partition en jours.

requirePartitionFilter

boolean

Spécifie si les requêtes sur cette table doivent inclure un filtre de prédicat qui filtre la colonne de partitionnement.

additionalOptions

map (key: string, value: string)

Options supplémentaires qui seront fournies sous forme de paires clé/valeur dans la clause d'options d'une instruction CREATE TABLE/VIEW. Pour en savoir plus sur les options compatibles, consultez https://cloud.google.com/bigquery/docs/reference/standard-sql/data-definition-language.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

connection

string

Facultatif. Connexion spécifiant les identifiants à utiliser pour lire et écrire dans le stockage externe, tel que Cloud Storage. La connexion peut être au format {project}.{location}.{connection_id} ou projects/{project}/locations/{location}/connections/{connection_id}, ou être définie sur DEFAULT.

tableFormat

enum (TableFormat)

Facultatif. Format de la table BigQuery.

fileFormat

enum (FileFormat)

Facultatif. Format de fichier de la table BigQuery.

storageUri

string

Facultatif. Préfixe de chemin complet du dossier externe dans lequel les données de la table sont stockées. L'URI doit être au format gs://bucket/path_to_table/.

Cible

Représentation JSON
{
  "database": string,
  "schema": string,
  "name": string
}
Champs
database

string

Facultatif. Base de données de l'action (ID de projet Google Cloud) .

schema

string

Facultatif. Schéma de l'action (ID de l'ensemble de données BigQuery), dans database.

name

string

Facultatif. Nom de l'action, dans database et schema.

RelationDescriptor

Représentation JSON
{
  "description": string,
  "columns": [
    {
      object (ColumnDescriptor)
    }
  ],
  "bigqueryLabels": {
    string: string,
    ...
  }
}
Champs
description

string

Description textuelle de la relation.

columns[]

object (ColumnDescriptor)

Liste des descriptions des colonnes de la relation.

bigqueryLabels

map (key: string, value: string)

Ensemble de libellés BigQuery à appliquer à la relation.

Objet contenant une liste de paires "key": value. Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ColumnDescriptor

Représentation JSON
{
  "path": [
    string
  ],
  "description": string,
  "bigqueryPolicyTags": [
    string
  ]
}
Champs
path[]

string

Identifiant de la colonne. Chaque entrée de path représente un niveau d'imbrication.

description

string

Description textuelle de la colonne.

bigqueryPolicyTags[]

string

Liste des tags avec stratégie BigQuery qui seront appliqués à la colonne.

BigqueryLabelsEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

IncrementalTableConfig

Représentation JSON
{
  "incrementalSelectQuery": string,
  "refreshDisabled": boolean,
  "uniqueKeyParts": [
    string
  ],
  "updatePartitionFilter": string,
  "incrementalPreOperations": [
    string
  ],
  "incrementalPostOperations": [
    string
  ]
}
Champs
incrementalSelectQuery

string

Requête SELECT qui renvoie les lignes à insérer dans la relation si elle existe déjà et n'est pas actualisée.

refreshDisabled

boolean

Indique si cette table doit être protégée contre l'actualisation.

uniqueKeyParts[]

string

Ensemble de colonnes ou d'expressions SQL utilisées pour définir l'unicité des lignes. Si des doublons sont détectés (selon la définition de unique_key_parts), seules les lignes nouvellement sélectionnées (selon la définition de incremental_select_query) seront incluses dans la relation.

updatePartitionFilter

string

Expression conditionnelle SQL utilisée pour limiter l'ensemble des lignes existantes prises en compte pour une opération de fusion (pour en savoir plus, consultez unique_key_parts).

incrementalPreOperations[]

string

Instructions SQL à exécuter avant d'insérer de nouvelles lignes dans la relation.

incrementalPostOperations[]

string

Instructions SQL à exécuter après l'insertion de nouvelles lignes dans la relation.

AdditionalOptionsEntry

Représentation JSON
{
  "key": string,
  "value": string
}
Champs
key

string

value

string

Opérations

Représentation JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "tags": [
    string
  ],
  "relationDescriptor": {
    object (RelationDescriptor)
  },
  "queries": [
    string
  ],
  "hasOutput": boolean
}
Champs
dependencyTargets[]

object (Target)

Liste des actions dont dépend cette action.

disabled

boolean

Indique si cette action est désactivée (c'est-à-dire si elle ne doit pas être exécutée).

tags[]

string

Tags arbitraires définis par l'utilisateur pour cette action.

relationDescriptor

object (RelationDescriptor)

Descripteur pour toute relation de sortie et ses colonnes. Défini uniquement si has_output est défini sur "true".

queries[]

string

Liste d'instructions SQL arbitraires qui seront exécutées sans modification.

hasOutput

boolean

Indique si ces opérations produisent une relation de sortie.

Assertion

Représentation JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "parentAction": {
    object (Target)
  },
  "disabled": boolean,
  "tags": [
    string
  ],
  "selectQuery": string,
  "relationDescriptor": {
    object (RelationDescriptor)
  }
}
Champs
dependencyTargets[]

object (Target)

Liste des actions dont dépend cette action.

parentAction

object (Target)

Action parente de cette assertion. Ne définissez cette valeur que si cette assertion a été générée automatiquement.

disabled

boolean

Indique si cette action est désactivée (c'est-à-dire si elle ne doit pas être exécutée).

tags[]

string

Tags arbitraires définis par l'utilisateur pour cette action.

selectQuery

string

Requête SELECT qui doit renvoyer zéro ligne pour que cette assertion réussisse.

relationDescriptor

object (RelationDescriptor)

Descripteur de la vue générée automatiquement de l'assertion et de ses colonnes.

Déclaration

Représentation JSON
{
  "relationDescriptor": {
    object (RelationDescriptor)
  }
}
Champs
relationDescriptor

object (RelationDescriptor)

Descripteur de la relation et de ses colonnes. Utilisé uniquement comme documentation. Autrement dit, les valeurs indiquées ici n'entraîneront aucune modification des métadonnées de la relation.

Notebook

Représentation JSON
{
  "dependencyTargets": [
    {
      object (Target)
    }
  ],
  "disabled": boolean,
  "contents": string,
  "tags": [
    string
  ]
}
Champs
dependencyTargets[]

object (Target)

Liste des actions dont dépend cette action.

disabled

boolean

Indique si cette action est désactivée (c'est-à-dire si elle ne doit pas être exécutée).

contents

string

Contenu du notebook.

tags[]

string

Tags arbitraires définis par l'utilisateur pour cette action.

DataPreparation

Représentation 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.
}
Champs
dependencyTargets[]

object (Target)

Liste des actions dont dépend cette action.

disabled

boolean

Indique si cette action est désactivée (c'est-à-dire si elle ne doit pas être exécutée).

tags[]

string

Tags arbitraires définis par l'utilisateur pour cette action.

Champ d'union definition. Définition de la préparation des données. definition ne peut être qu'un des éléments suivants :
contentsYaml

string

Définition de la préparation des données, stockée sous forme de chaîne YAML.

contentsSql

object (SqlDefinition)

Définition SQL pour une préparation des données. Contient une requête SQL et des informations contextuelles supplémentaires.

SqlDefinition

Représentation JSON
{
  "query": string,
  "errorTable": {
    object (ErrorTable)
  },
  "load": {
    object (LoadConfig)
  }
}
Champs
query

string

Requête SQL représentant les étapes de préparation des données. Formatée en tant qu'instruction de requête Pipe SQL.

errorTable

object (ErrorTable)

Configuration de la table d'erreurs,

load

object (LoadConfig)

Charger la configuration.

ErrorTable

Représentation JSON
{
  "target": {
    object (Target)
  },
  "retentionDays": integer
}
Champs
target

object (Target)

Cible de la table d'erreurs.

retentionDays

integer

Erreur liée au délai d'expiration des partitions de table en jours. Seules les valeurs positives sont autorisées.

LoadConfig

Représentation 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.
}
Champs
Champ d'union mode. Le mode de chargement mode ne peut être que l'un des éléments suivants :
replace

object (SimpleLoadMode)

Remplacer la table de destination

append

object (SimpleLoadMode)

Ajouter à la table de destination

maximum

object (IncrementalLoadMode)

Insérer des enregistrements dont la valeur dépasse la valeur maximale précédente pour une colonne de la table de destination

unique

object (IncrementalLoadMode)

Insérer des enregistrements lorsque la valeur d'une colonne n'est pas déjà présente dans la table de destination

IncrementalLoadMode

Représentation JSON
{
  "column": string
}
Champs
column

string

Nom de la colonne pour les modes de chargement incrémentiel

RelationType

Indique le type de relation.

Enums
RELATION_TYPE_UNSPECIFIED Valeur par défaut. Cette valeur n'est pas utilisée.
TABLE La relation est une table.
VIEW La relation est une vue.
INCREMENTAL_TABLE La relation est une table incrémentée.
MATERIALIZED_VIEW La relation est une vue matérialisée.

TableFormat

Formats de table compatibles pour les tables BigQuery.

Enums
TABLE_FORMAT_UNSPECIFIED Valeur par défaut.
ICEBERG Format Apache Iceberg.

FileFormat

Formats de fichiers compatibles avec les tables BigQuery.

Enums
FILE_FORMAT_UNSPECIFIED Valeur par défaut.
PARQUET Format Apache Parquet.

Annotations d'outils

Indication destructive : ❌ | Indication d'idempotence : ✅ | Indication de lecture seule : ✅ | Indication de monde ouvert : ❌