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 |
Wajib. Nama ruang kerja. |
pageSize |
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 |
Opsional. Token halaman yang diterima dari panggilan Saat melakukan penomoran halaman, semua parameter lain yang disediakan untuk |
filter |
Opsional. Filter opsional untuk daftar yang ditampilkan dalam format pemfilteran. Saat ini, pemfilteran hanya didukung di kolom |
Skema Output
Representasi respons penelusuran file yang ditampilkan kepada klien.
SearchFilesResponse
| Representasi JSON |
|---|
{
"searchResults": [
{
object ( |
| Kolom | |
|---|---|
searchResults[] |
Daftar hasil yang cocok. |
nextPageToken |
Opsional. Token yang dapat dikirim sebagai |
SearchResult
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union entry. Isi entri. entry hanya ada berupa salah satu diantara berikut: |
|
file |
Detail saat hasil penelusuran berupa file. |
directory |
Detail saat hasil penelusuran berupa direktori. |
FileSearchResult
| Representasi JSON |
|---|
{ "path": string } |
| Kolom | |
|---|---|
path |
Jalur sistem file relatif terhadap root ruang kerja. |
DirectorySearchResult
| Representasi JSON |
|---|
{ "path": string } |
| Kolom | |
|---|---|
path |
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: ❌