MCP Tools Reference: dataform.googleapis.com

Strumento: read_file

Restituisce i contenuti di un file all'interno di un workspace Dataform, incluse le modifiche non commit.

Utilizza questo strumento per leggere il file workflow_settings.yaml del workspace, che contiene le impostazioni di compilazione della pipeline, come il set di dati BigQuery predefinito, la località predefinita e la versione di Dataform Core. Questo file si trova nella directory principale della pipeline, che non è necessariamente la radice dello spazio di lavoro, in quanto un repository può contenere diverse pipeline in sottodirectory. Individua il file con lo strumento search_files.

Per leggere un file di cui è stato eseguito il commit direttamente dal repository senza uno spazio di lavoro, utilizza lo strumento read_repository_file. Tieni presente che read_repository_file funziona solo sui repository non connessi a un host Git remoto.

Il valore parametro workspace deve essere nel formato projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.

Il valore parametro path è il percorso relativo al file dalla radice del workspace. Non utilizzare directory traversal, ad esempio ... I percorsi validi possono essere ottenuti utilizzando gli strumenti query_directory_contents o search_files.

Il valore parametro revision seleziona facoltativamente una revisione Git specifica del file. Se omesso, viene restituito lo stato attuale non sottoposto a commit del file.

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

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

Schema di input

ReadFile messaggio di richiesta.

ReadFileRequest

Rappresentazione JSON
{
  "workspace": string,
  "path": string,
  "revision": string
}
Campi
workspace

string

Obbligatorio. Il nome del workspace.

path

string

Obbligatorio. Il percorso completo del file, incluso il nome file, relativo alla radice dello spazio di lavoro.

revision

string

Facoltativo. La revisione Git del file da restituire. Se lasciato vuoto, verranno restituiti i contenuti attuali di path.

Schema di output

Messaggio di risposta ReadFile.

ReadFileResponse

Rappresentazione JSON
{
  "fileContents": string
}
Campi
fileContents

string (bytes format)

I contenuti del file.

Una stringa con codifica in base64.

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: ❌