MCP Tools Reference: dataform.googleapis.com

Tool: read_file

Gibt den Inhalt einer Datei in einem Dataform-Arbeitsbereich zurück, einschließlich nicht übertragener Änderungen.

Mit diesem Tool können Sie die Datei workflow_settings.yaml des Arbeitsbereichs lesen, die die Kompilierungseinstellungen der Pipeline enthält, z. B. das Standard-BigQuery-Dataset, den standardmäßigen Standort und die Dataform Core-Version. Diese Datei befindet sich im Stammverzeichnis der Pipeline, das nicht unbedingt das Stammverzeichnis des Arbeitsbereichs ist, da ein Repository mehrere Pipelines in Unterverzeichnissen enthalten kann. Suchen Sie mit dem search_files-Tool nach der Datei.

Wenn Sie eine committete Datei direkt aus dem Repository ohne Arbeitsbereich lesen möchten, verwenden Sie stattdessen das read_repository_file-Tool. Beachten Sie, dass read_repository_file nur für Repositories funktioniert, die nicht mit einem Remote-Git-Host verbunden sind.

Der Parameterwert workspace muss das Format projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace} haben.

Der Parameterwert path ist der relative Pfad zur Datei vom Arbeitsbereichsstamm aus. Verwenden Sie keine Pfadmanipulation wie ... Gültige Pfade können mit den Tools query_directory_contents oder search_files abgerufen werden.

Mit dem Parameterwert revision wird optional eine bestimmte Git-Version der Datei ausgewählt. Wird sie nicht angegeben, wird der aktuelle nicht übertragene Status der Datei zurückgegeben.

Das folgende Codebeispiel zeigt, wie Sie mit curl das MCP-Tool read_file aufrufen.

Curl-Anfrage
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
}'

Eingabeschema

ReadFile-Anfragenachricht.

ReadFileRequest

JSON-Darstellung
{
  "workspace": string,
  "path": string,
  "revision": string
}
Felder
workspace

string

Erforderlich. Der Name des Arbeitsbereichs.

path

string

Erforderlich. Der vollständige Pfad der Datei, einschließlich des Dateinamens, relativ zum Arbeitsbereichstammverzeichnis.

revision

string

Optional. Die Git-Revision der zurückzugebenden Datei. Wenn das Feld leer gelassen wird, wird der aktuelle Inhalt von path zurückgegeben.

Ausgabeschema

ReadFile-Antwortnachricht.

ReadFileResponse

JSON-Darstellung
{
  "fileContents": string
}
Felder
fileContents

string (bytes format)

Der Inhalt der Datei.

Ein base64-codierter String.

Tool-Annotationen

Tool-Anmerkungen werden an MCP-Clients gesendet, um das grundlegende Risiko eines bestimmten Tools zu beschreiben. Die meisten Clients behandeln diese Hinweise als nicht vertrauenswürdig, sie können aber verwendet werden, um zu entscheiden, wann eine Bestätigungsaufforderung an einen Nutzer gesendet wird.

Zusammen mit dem Titelstring sind die folgenden booleschen Hinweise definiert:

  • readOnlyHint: Wenn „true“, ändert das Tool seine Umgebung nicht. Standardeinstellung: false.
  • destructiveHint: Wenn „true“, kann das Tool destruktive Aktionen ausführen. Wenn „false“, kann das Tool nur additive Aktionen ausführen. Standardeinstellung: true.
  • idempotentHint: Wenn „true“, hat das wiederholte Aufrufen des Tools mit denselben Argumenten keine zusätzlichen Auswirkungen auf die Umgebung. Standardeinstellung: false.
  • openWorldHint: Wenn „true“, kann das Tool mit einer „offenen Welt“ externer Einheiten interagieren. Wenn „false“, kann das Tool nur mit internen Einheiten interagieren. Ein Web-Suchtool wäre beispielsweise frei verfügbar, ein Tool für das Gedächtnis jedoch nicht.

Destruktiver Hinweis: ❌ | Idempotenter Hinweis: ✅ | Nur-Lese-Hinweis: ✅ | Open-World-Hinweis: ❌