MCP Tools Reference: dataform.googleapis.com

Alat: search_files

Menemukan file dan direktori di ruang kerja Dataform yang cocok dengan filter penelusuran.

Gunakan alat ini, bukan mencantumkan direktori secara rekursif dengan alat query_directory_contents saat menemukan file berdasarkan nama atau ekstensi di seluruh repositori besar.

Nilai parameter workspace harus dalam format projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.

Nilai parameter filter membatasi hasil. Pemfilteran hanya didukung di kolom path (misalnya, path="*.sqlx" atau path="definitions/model.sqlx").

Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP search_files.

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

Skema Input

Konfigurasi yang berisi parameter permintaan penelusuran file.

SearchFilesRequest

Representasi JSON
{
  "workspace": string,
  "pageSize": integer,
  "pageToken": string,
  "filter": string
}
Kolom
workspace

string

Wajib. Nama ruang kerja.

pageSize

integer

Opsional. Jumlah maksimum hasil penelusuran yang akan ditampilkan. Server dapat menampilkan lebih sedikit item daripada yang diminta. Jika tidak ditentukan, server akan memilih default yang sesuai.

pageToken

string

Opsional. Token halaman yang diterima dari panggilan SearchFilesRequest sebelumnya. Berikan ini untuk mengambil halaman selanjutnya.

Saat melakukan penomoran halaman, semua parameter lain yang disediakan untuk SearchFilesRequest, kecuali page_size, harus sesuai dengan panggilan yang menyediakan token halaman.

filter

string

Opsional. Filter opsional untuk daftar yang ditampilkan dalam format pemfilteran. Saat ini, pemfilteran hanya didukung di kolom path. Lihat https://google.aip.dev/160 untuk mengetahui detailnya.

Skema Output

Representasi respons penelusuran file yang ditampilkan kepada klien.

SearchFilesResponse

Representasi JSON
{
  "searchResults": [
    {
      object (SearchResult)
    }
  ],
  "nextPageToken": string
}
Kolom
searchResults[]

object (SearchResult)

Daftar hasil yang cocok.

nextPageToken

string

Opsional. Token yang dapat dikirim sebagai page_token untuk mengambil halaman berikutnya. Jika kolom ini dihilangkan, tidak akan ada halaman berikutnya.

SearchResult

Representasi JSON
{

  // Union field entry can be only one of the following:
  "file": {
    object (FileSearchResult)
  },
  "directory": {
    object (DirectorySearchResult)
  }
  // End of list of possible types for union field entry.
}
Kolom
Kolom union entry. Isi entri. entry hanya ada berupa salah satu diantara berikut:
file

object (FileSearchResult)

Detail saat hasil penelusuran berupa file.

directory

object (DirectorySearchResult)

Detail saat hasil penelusuran berupa direktori.

FileSearchResult

Representasi JSON
{
  "path": string
}
Kolom
path

string

Jalur sistem file relatif terhadap root ruang kerja.

DirectorySearchResult

Representasi JSON
{
  "path": string
}
Kolom
path

string

Jalur sistem file relatif terhadap root ruang kerja.

Anotasi Alat

Anotasi alat dikirim ke klien MCP untuk menjelaskan risiko dasar alat tertentu. Sebagian besar klien memperlakukan petunjuk ini sebagai tidak tepercaya, tetapi petunjuk ini dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim ke pengguna.

Selain string judul, petunjuk boolean berikut ditentukan sebagai berikut:

  • readOnlyHint: Jika benar, alat tidak akan mengubah lingkungannya. Default: false.
  • destructiveHint: Jika benar, alat dapat melakukan tindakan destruktif. Jika salah (false), alat hanya dapat melakukan tindakan tambahan. Default: true.
  • idempotentHint: Jika benar (true), memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.
  • openWorldHint: Jika benar, alat dapat berinteraksi dengan 'dunia terbuka' entitas eksternal. Jika salah (false), alat hanya dapat berinteraksi dengan entitas internal. Misalnya, alat penelusuran web akan menjadi open world, sedangkan alat memori tidak akan menjadi open world.

Petunjuk Destruktif: ❌ | Petunjuk Idempoten: ✅ | Petunjuk Hanya Baca: ✅ | Petunjuk Dunia Terbuka: ❌