MCP Tools Reference: dataform.googleapis.com

Strumento: get_compilation_result

Recupera un singolo risultato di compilazione di Dataform.

Il valore parametro name deve essere nel formato projects/{project_id}/locations/{location}/repositories/{repository}/compilationResults/{compilation_result}.

Il seguente esempio di codice mostra come utilizzare curl per chiamare lo strumento MCP get_compilation_result.

Richiesta 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": "get_compilation_result",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Schema di input

GetCompilationResult messaggio di richiesta.

GetCompilationResultRequest

Rappresentazione JSON
{
  "name": string
}
Campi
name

string

Obbligatorio. Il nome del risultato della compilazione.

Schema di output

Rappresenta il risultato della compilazione di un progetto Dataform.

CompilationResult

Rappresentazione JSON
{
  "name": string,
  "codeCompilationConfig": {
    object (CodeCompilationConfig)
  },
  "resolvedGitCommitSha": string,
  "dataformCoreVersion": string,
  "compilationErrors": [
    {
      object (CompilationError)
    }
  ],
  "dataEncryptionState": {
    object (DataEncryptionState)
  },
  "createTime": string,
  "privateResourceMetadata": {
    object (PrivateResourceMetadata)
  },
  "gcsRepositorySnapshotMetadata": {
    object (GcsRepositorySnapshotMetadata)
  },

  // Union field source can be only one of the following:
  "gitCommitish": string,
  "workspace": string,
  "releaseConfig": string
  // End of list of possible types for union field source.

  // Union field _internal_metadata can be only one of the following:
  "internalMetadata": string
  // End of list of possible types for union field _internal_metadata.
}
Campi
name

string

Solo output. Il nome del risultato della compilazione.

codeCompilationConfig

object (CodeCompilationConfig)

Immutabile. Se impostati, i campi di code_compilation_config sostituiscono le impostazioni di compilazione predefinite specificate in dataform.json.

resolvedGitCommitSha

string

Solo output. La SHA del commit Git completamente risolta del codice compilato. Non impostato per i risultati della compilazione la cui origine è un workspace.

dataformCoreVersion

string

Solo output. La versione di @dataform/core utilizzata per la compilazione.

compilationErrors[]

object (CompilationError)

Solo output. Errori riscontrati durante la compilazione del progetto.

dataEncryptionState

object (DataEncryptionState)

Solo output. Imposta solo se il repository ha una chiave KMS.

createTime

string (Timestamp format)

Solo output. Il timestamp di creazione del risultato di compilazione.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

privateResourceMetadata

object (PrivateResourceMetadata)

Solo output. Metadati che indicano se questa risorsa è limitata all'utente. La risorsa CompilationResult è user_scoped solo se proviene da uno spazio di lavoro.

gcsRepositorySnapshotMetadata

object (GcsRepositorySnapshotMetadata)

Solo output. Metadati sullo snapshot del repository utilizzato dai blocchi note pianificati.

Campo unione source. L'origine del risultato della compilazione. source può essere solo uno dei seguenti tipi:
gitCommitish

string

Immutabile. Nome del commit/tag/branch Git in cui deve essere compilato il repository. Deve esistere nel repository remoto. Esempi: - SHA di un commit: 12ade345 - un tag: tag1 - un nome di branch: branch1

workspace

string

Immutabile. Il nome del workspace da compilare. Deve essere nel formato projects/*/locations/*/repositories/*/workspaces/*.

releaseConfig

string

Immutabile. Il nome della configurazione della release da compilare. Deve essere nel formato projects/*/locations/*/repositories/*/releaseConfigs/*.

Campo unione _internal_metadata.

_internal_metadata può essere solo uno dei seguenti tipi:

internalMetadata

string

Solo output. Tutte le informazioni sui metadati utilizzate internamente per pubblicare la risorsa. Ad esempio, timestamp, flag, campi di stato e così via. Il formato di questo campo è una stringa JSON.

CodeCompilationConfig

Rappresentazione JSON
{
  "defaultDatabase": string,
  "defaultSchema": string,
  "defaultLocation": string,
  "assertionSchema": string,
  "vars": {
    string: string,
    ...
  },
  "databaseSuffix": string,
  "schemaSuffix": string,
  "tablePrefix": string,
  "builtinAssertionNamePrefix": string,
  "defaultNotebookRuntimeOptions": {
    object (NotebookRuntimeOptions)
  },
  "pipelineConfig": {
    object (PipelineConfig)
  }
}
Campi
defaultDatabase

string

Facoltativo. Il database predefinito (ID progetto Google Cloud).

defaultSchema

string

Facoltativo. Lo schema predefinito (ID set di dati BigQuery).

defaultLocation

string

Facoltativo. La località BigQuery predefinita da utilizzare. Il valore predefinito è "US". Per un elenco completo delle località, consulta la documentazione di BigQuery: https://cloud.google.com/bigquery/docs/locations.

assertionSchema

string

Facoltativo. Lo schema predefinito (ID set di dati BigQuery) per le asserzioni.

vars

map (key: string, value: string)

Facoltativo. Variabili definite dall'utente rese disponibili al codice del progetto durante la compilazione.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

databaseSuffix

string

Facoltativo. Il suffisso da aggiungere a tutti i nomi dei database (ID progetto Google Cloud).

schemaSuffix

string

Facoltativo. Il suffisso da aggiungere a tutti i nomi degli schemi (ID set di dati BigQuery).

tablePrefix

string

Facoltativo. Il prefisso da aggiungere all'inizio di tutti i nomi delle tabelle.

builtinAssertionNamePrefix

string

Facoltativo. Il prefisso da anteporre ai nomi delle asserzioni integrate.

defaultNotebookRuntimeOptions

object (NotebookRuntimeOptions)

Facoltativo. Le opzioni di runtime predefinite del notebook.

pipelineConfig

object (PipelineConfig)

Facoltativo. Le opzioni della pipeline che definiscono il tipo e il percorso della pipeline all'interno del repository Git.

VarsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

NotebookRuntimeOptions

Rappresentazione JSON
{
  "aiPlatformNotebookRuntimeTemplate": string,

  // Union field execution_sink can be only one of the following:
  "gcsOutputBucket": string
  // End of list of possible types for union field execution_sink.

  // Union field repository_snapshot_storage can be only one of the following:
  "gcsRepositorySnapshotDestination": {
    object (GcsRepositorySnapshotDestination)
  }
  // End of list of possible types for union field repository_snapshot_storage.
}
Campi
aiPlatformNotebookRuntimeTemplate

string

Facoltativo. Il nome della risorsa del template di runtime di Colab, da cui viene creato un runtime per le esecuzioni dei notebook. Se non specificato, viene creato un runtime con le specifiche predefinite di Colab.

Campo unione execution_sink. Il percorso in cui archiviare il risultato dell'esecuzione del notebook. execution_sink può essere solo uno dei seguenti tipi:
gcsOutputBucket

string

Facoltativo. La posizione di Google Cloud Storage in cui caricare il risultato. Formato: gs://bucket-name.

Campo unione repository_snapshot_storage. La destinazione dello snapshot dei file del repository da rendere disponibile per l'accesso in sola lettura all'interno di un runtime del notebook repository_snapshot_storage può essere solo una delle seguenti:
gcsRepositorySnapshotDestination

object (GcsRepositorySnapshotDestination)

Facoltativo. La destinazione Google Cloud Storage in cui caricare lo snapshot. Per l'URI vuoto, il valore predefinito è gcs_output_bucket fornito. Formato: gs://bucket-name/path/.

GcsRepositorySnapshotDestination

Rappresentazione JSON
{
  "repositorySnapshotUri": string
}
Campi
repositorySnapshotUri

string

Facoltativo. La destinazione Google Cloud Storage in cui caricare lo snapshot del repository. Formato: gs://bucket-name/path/.

PipelineConfig

Rappresentazione JSON
{
  "pipelineType": enum (PipelineType),
  "path": string
}
Campi
pipelineType

enum (PipelineType)

Obbligatorio. Il tipo di pipeline.

path

string

Obbligatorio. Il percorso relativo all'interno del repository Git in cui è definita la pipeline. Ad esempio, per una pipeline Dataform, è un percorso alla cartella in cui si trova workflow_settings.yaml o dataform.json.

CompilationError

Rappresentazione JSON
{
  "message": string,
  "stack": string,
  "path": string,
  "actionTarget": {
    object (Target)
  }
}
Campi
message

string

Solo output. Il messaggio di primo livello dell'errore.

stack

string

Solo output. L'analisi dello stack completa dell'errore.

path

string

Solo output. Il percorso del file in cui si è verificato questo errore, se disponibile, relativo alla radice del progetto.

actionTarget

object (Target)

Solo output. L'identificatore dell'azione in cui si è verificato questo errore, se disponibile.

Target

Rappresentazione JSON
{
  "database": string,
  "schema": string,
  "name": string
}
Campi
database

string

Facoltativo. Il database dell'azione (ID progetto Google Cloud) .

schema

string

Facoltativo. Lo schema dell'azione (ID set di dati BigQuery), all'interno di database.

name

string

Facoltativo. Il nome dell'azione, compreso tra database e schema.

DataEncryptionState

Rappresentazione JSON
{
  "kmsKeyVersionName": string
}
Campi
kmsKeyVersionName

string

Obbligatorio. Il nome della versione della chiave KMS con cui vengono criptati i dati di una risorsa.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi di tempo UTC dall'epoca di Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la parte in nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

PrivateResourceMetadata

Rappresentazione JSON
{
  "userScoped": boolean
}
Campi
userScoped

boolean

Solo output. Se true, questa risorsa è limitata all'utente, il che significa che è uno spazio di lavoro o proviene da uno spazio di lavoro.

GcsRepositorySnapshotMetadata

Rappresentazione JSON
{
  "repositorySnapshotUri": string,
  "crc32cChecksum": string,
  "generation": string
}
Campi
repositorySnapshotUri

string

Solo output. L'URI Google Cloud Storage dello snapshot del repository.

crc32cChecksum

string

Solo output. Il checksum crc32c dello snapshot del repository, codificato in base64 big-endian.

generation

string (int64 format)

Solo output. Il numero di generazione dell'oggetto Cloud Storage. Consulta la pagina https://cloud.google.com/storage/docs/metadata#generation-number.

PipelineType

Il tipo di pipeline. Questo periodo potrebbe essere esteso in futuro. In caso di UNSPECIFIED, l'errore verrà generato.

Enum
PIPELINE_TYPE_UNSPECIFIED Valore predefinito. Questo valore non viene utilizzato.
DATAFORM Pipeline Dataform normale.
SQL Asset di un singolo file SQL.
NOTEBOOK Asset di un singolo file del notebook.

Annotazioni dello strumento

Le annotazioni dello strumento vengono inviate ai client MCP per descrivere il rischio di base di un determinato strumento. La maggior parte dei client considera questi suggerimenti non attendibili, ma possono essere utilizzati per decidere quando inviare a un utente una richiesta di conferma.

Oltre alla stringa del titolo, sono definiti i seguenti suggerimenti booleani:

  • readOnlyHint: se è true, lo strumento non modifica il suo ambiente. Valore predefinito: false.
  • destructiveHint: se è true, lo strumento può eseguire azioni distruttive. Se il valore è false, lo strumento può eseguire solo azioni additive. Valore predefinito: true.
  • idempotentHint: se è true, chiamare ripetutamente lo strumento con gli stessi argomenti non avrà alcun effetto aggiuntivo sul suo ambiente. Valore predefinito: false.
  • openWorldHint: se è true, lo strumento può interagire con un "open world" di entità esterne. Se è false, lo strumento può interagire solo con le entità interne. Ad esempio, uno strumento di ricerca web sarebbe open world, mentre uno strumento di memoria no.

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento open world: ❌