Ferramenta: read_file
Retorna o conteúdo de um arquivo em um espaço de trabalho do Dataform, incluindo mudanças não confirmadas.
Use essa ferramenta para ler o arquivo workflow_settings.yaml do espaço de trabalho, que contém as configurações de compilação do pipeline, como o conjunto de dados padrão do BigQuery, o local padrão e a versão principal do Dataform. Esse arquivo fica na raiz do diretório do pipeline, que não é necessariamente a raiz do espaço de trabalho, já que um repositório pode conter vários pipelines em subdiretórios. Localize o arquivo com a ferramenta search_files.
Para ler um arquivo confirmado diretamente do repositório sem um espaço de trabalho, use a ferramenta read_repository_file. O read_repository_file só funciona em repositórios que não estão conectados a um host Git remoto.
O valor de parâmetro workspace precisa estar no formato projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.
O valor de parâmetro path é o caminho relativo do arquivo na raiz do espaço de trabalho. Não use travessia de diretório, como ... Caminhos válidos podem ser obtidos usando as ferramentas query_directory_contents ou search_files.
O valor do parâmetro revision seleciona opcionalmente uma revisão específica do Git do arquivo. Se omitido, o estado atual não confirmado do arquivo será retornado.
O exemplo de código a seguir mostra como usar curl para chamar a ferramenta MCP read_file.
| Solicitação 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 }' |
Esquema de entrada
Mensagem de solicitação ReadFile.
ReadFileRequest
| Representação JSON |
|---|
{ "workspace": string, "path": string, "revision": string } |
| Campos | |
|---|---|
workspace |
Obrigatório. O nome do espaço de trabalho. |
path |
Obrigatório. O caminho completo do arquivo, incluindo o nome do arquivo, relativo à raiz do espaço de trabalho. |
revision |
Opcional. A revisão do Git do arquivo a ser retornada. Se deixado em branco, o conteúdo atual de |
Esquema de saída
Mensagem de resposta ReadFile.
ReadFileResponse
| Representação JSON |
|---|
{ "fileContents": string } |
| Campos | |
|---|---|
fileContents |
O conteúdo do arquivo. Uma string codificada em base64. |
Anotações de ferramentas
As anotações de ferramentas são enviadas aos clientes do MCP para descrever o risco básico de uma determinada ferramenta. A maioria dos clientes trata essas dicas como não confiáveis, mas elas podem ser usadas para decidir quando um pedido de confirmação pode ser enviado a um usuário.
Além da string de título, as seguintes dicas booleanas são definidas da seguinte maneira:
readOnlyHint: se for "true", a ferramenta não vai modificar o ambiente. Padrão: false.destructiveHint: se for "true", a ferramenta poderá realizar ações destrutivas. Se for "false", a ferramenta só poderá realizar ações aditivas. Padrão: verdadeiro.idempotentHint: se for "true", chamar a ferramenta repetidamente com os mesmos argumentos não terá efeito adicional no ambiente dela. Padrão: false.openWorldHint: se for "true", a ferramenta poderá interagir com um "mundo aberto" de entidades externas. Se for "false", a ferramenta só poderá interagir com entidades internas. Por exemplo, uma ferramenta de pesquisa na Web seria de mundo aberto, enquanto uma ferramenta de memória não seria.
Dica destrutiva: ❌ | Dica idempotente: ✅ | Dica somente leitura: ✅ | Dica de mundo aberto: ❌