MCP Tools Reference: dataform.googleapis.com

Alat: list_repositories

Mencantumkan repositori Dataform dalam project dan lokasi Google Cloud tertentu.

Nilai parameter parent harus dalam format projects/{project_id}/locations/{location}.

Contoh berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP list_repositories.

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

Skema Input

Pesan permintaan ListRepositories.

ListRepositoriesRequest

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

string

Wajib. Lokasi tempat repositori akan dicantumkan. Harus dalam format projects/*/locations/*.

pageSize

integer

Opsional. Jumlah maksimum repositori 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 ListRepositories sebelumnya. Berikan ini untuk mengambil halaman selanjutnya.

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

orderBy

string

Opsional. Kolom ini hanya mendukung pengurutan berdasarkan name. Jika tidak ditentukan, server akan memilih pengurutan. Jika ditentukan, urutan defaultnya adalah menaik untuk kolom name.

filter

string

Opsional. Filter untuk daftar yang ditampilkan.

Skema Output

Pesan respons ListRepositories.

ListRepositoriesResponse

Representasi JSON
{
  "repositories": [
    {
      object (Repository)
    }
  ],
  "nextPageToken": string,
  "unreachable": [
    string
  ]
}
Kolom
repositories[]

object (Repository)

Daftar repositori.

nextPageToken

string

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

unreachable[]

string

Lokasi yang tidak dapat dijangkau.

Repositori

Representasi JSON
{
  "name": string,
  "createTime": string,
  "displayName": string,
  "gitRemoteSettings": {
    object (GitRemoteSettings)
  },
  "npmrcEnvironmentVariablesSecretVersion": string,
  "workspaceCompilationOverrides": {
    object (WorkspaceCompilationOverrides)
  },
  "labels": {
    string: string,
    ...
  },
  "setAuthenticatedUserAdmin": boolean,
  "serviceAccount": string,
  "kmsKeyName": string,
  "dataEncryptionState": {
    object (DataEncryptionState)
  },

  // Union field _containing_folder can be only one of the following:
  "containingFolder": string
  // End of list of possible types for union field _containing_folder.

  // Union field _team_folder_name can be only one of the following:
  "teamFolderName": string
  // End of list of possible types for union field _team_folder_name.

  // Union field _internal_metadata can be only one of the following:
  "internalMetadata": string
  // End of list of possible types for union field _internal_metadata.
}
Kolom
name

string

ID. Nama repositori.

createTime

string (Timestamp format)

Hanya output. Stempel waktu saat repositori dibuat.

Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z", atau "2014-10-02T15:01:23+05:30".

displayName

string

Opsional. Nama repositori yang mudah digunakan.

gitRemoteSettings

object (GitRemoteSettings)

Opsional. Jika disetel, mengonfigurasi repositori ini agar ditautkan ke Git jarak jauh.

npmrcEnvironmentVariablesSecretVersion

string

Opsional. Nama versi secret Secret Manager yang akan digunakan untuk menginterpolasi variabel ke dalam file .npmrc untuk operasi penginstalan paket. Harus dalam format projects/*/secrets/*/versions/*. File itu sendiri harus dalam format JSON.

workspaceCompilationOverrides

object (WorkspaceCompilationOverrides)

Opsional. Jika disetel, kolom workspace_compilation_overrides akan menggantikan setelan kompilasi default yang ditentukan dalam dataform.json saat membuat hasil kompilasi cakupan ruang kerja. Lihat dokumentasi untuk WorkspaceCompilationOverrides untuk mengetahui informasi selengkapnya.

labels

map (key: string, value: string)

Opsional. Label pengguna repositori.

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

setAuthenticatedUserAdmin

boolean

Opsional. Hanya input. Jika disetel ke benar (true), pengguna yang diautentikasi akan diberi peran roles/dataform.admin di repositori yang dibuat. Untuk mengubah akses ke repositori yang dibuat nanti, terapkan setIamPolicy dari https://cloud.google.com/dataform/reference/rest#rest-resource:-v1beta1.projects.locations.repositories

serviceAccount

string

Opsional. Akun layanan yang akan menjalankan pemanggilan alur kerja.

kmsKeyName

string

Opsional. Referensi ke kunci enkripsi KMS. Jika disediakan, kunci ini akan digunakan untuk mengenkripsi data pengguna di repositori dan semua resource turunan. Kunci enkripsi tidak dapat ditambahkan atau diperbarui setelah repositori dibuat. Contoh: projects/{kms_project}/locations/{location}/keyRings/{key_location}/cryptoKeys/{key}

dataEncryptionState

object (DataEncryptionState)

Hanya output. Status enkripsi data repositori Git jika Repositori ini dilindungi oleh kunci KMS.

Kolom union _containing_folder.

_containing_folder hanya dapat berupa salah satu dari hal berikut:

containingFolder

string

Opsional. Nama folder yang berisi repositori. Kolom ini tidak dapat diubah dan dapat diubah melalui operasi MoveRepository. Format: projects/*/locations/*/folders/*. atau projects/*/locations/*/teamFolders/*.

Kolom union _team_folder_name.

_team_folder_name hanya dapat berupa salah satu dari hal berikut:

teamFolderName

string

Hanya output. Nama resource TeamFolder yang terkait dengan Repositori ini. Formatnya adalah: projects/{project}/locations/{location}/teamFolders/{teamFolder}. Jika tidak disetel, Repositori tidak dikaitkan dengan TeamFolder.

Kolom union _internal_metadata.

_internal_metadata hanya dapat berupa salah satu dari hal berikut:

internalMetadata

string

Hanya output. Semua informasi metadata yang digunakan secara internal untuk menayangkan resource. Misalnya: stempel waktu, tanda, kolom status, dll. Format kolom ini adalah string JSON.

Stempel waktu

Representasi JSON
{
  "seconds": string,
  "nanos": integer
}
Kolom
seconds

string (int64 format)

Mewakili detik waktu UTC sejak epoch Unix 1970-01-01T00:00:00Z. Harus antara -62135596800 dan 253402300799 inklusif (yang sesuai dengan 0001-01-01T00:00:00Z hingga 9999-12-31T23:59:59Z).

nanos

integer

Pecahan detik non-negatif pada resolusi nanodetik. Kolom ini adalah bagian nanodetik dari durasi, bukan alternatif untuk detik. Nilai detik negatif dengan pecahan harus tetap memiliki nilai nanos non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif.

GitRemoteSettings

Representasi JSON
{
  "url": string,
  "defaultBranch": string,
  "effectiveDefaultBranch": string,
  "authenticationTokenSecretVersion": string,
  "sshAuthenticationConfig": {
    object (SshAuthenticationConfig)
  },
  "tokenStatus": enum (TokenStatus),

  // Union field _git_repository_link can be only one of the following:
  "gitRepositoryLink": string
  // End of list of possible types for union field _git_repository_link.
}
Kolom
url

string

Wajib. URL jarak jauh Git.

defaultBranch

string

Opsional. Nama cabang default Git remote. Jika tidak disetel, main akan digunakan.

effectiveDefaultBranch

string

Hanya output. Nama cabang default efektif Git remote. Ini adalah nama cabang default dari Git remote jika ditetapkan, jika tidak, maka main.

authenticationTokenSecretVersion

string

Opsional. Nama versi secret Secret Manager yang akan digunakan sebagai token autentikasi untuk operasi Git. Harus dalam format projects/*/secrets/*/versions/*.

sshAuthenticationConfig

object (SshAuthenticationConfig)

Opsional. Kolom autentikasi untuk URI jarak jauh menggunakan protokol SSH.

tokenStatus
(deprecated)

enum (TokenStatus)

Hanya output. Tidak digunakan lagi: Kolom tidak berisi informasi status token apa pun. Sebagai gantinya, gunakan https://cloud.google.com/dataform/reference/rest/v1beta1/projects.locations.repositories/computeAccessTokenStatus

Kolom union _git_repository_link.

_git_repository_link hanya dapat berupa salah satu dari hal berikut:

gitRepositoryLink

string

Opsional. Nama resource untuk GitRepositoryLink yang digunakan untuk kredensial mesin. Harus dalam format projects/*/locations/*/connections/*/gitRepositoryLinks/*

SshAuthenticationConfig

Representasi JSON
{
  "userPrivateKeySecretVersion": string,
  "hostPublicKey": string
}
Kolom
userPrivateKeySecretVersion

string

Wajib. Nama versi secret Secret Manager yang akan digunakan sebagai kunci pribadi SSH untuk operasi Git. Harus dalam format projects/*/secrets/*/versions/*.

hostPublicKey

string

Wajib. Konten kunci SSH publik untuk memverifikasi identitas host Git jarak jauh.

WorkspaceCompilationOverrides

Representasi JSON
{
  "defaultDatabase": string,
  "schemaSuffix": string,
  "tablePrefix": string
}
Kolom
defaultDatabase

string

Opsional. Database default (ID project Google Cloud).

schemaSuffix

string

Opsional. Sufiks yang harus ditambahkan ke semua nama skema (ID set data BigQuery).

tablePrefix

string

Opsional. Awalan yang harus ditambahkan ke semua nama tabel.

LabelsEntry

Representasi JSON
{
  "key": string,
  "value": string
}
Kolom
key

string

value

string

DataEncryptionState

Representasi JSON
{
  "kmsKeyVersionName": string
}
Kolom
kmsKeyVersionName

string

Wajib. Nama versi kunci KMS yang digunakan untuk mengenkripsi data resource.

TokenStatus

Status token autentikasi.

Enum
TOKEN_STATUS_UNSPECIFIED Nilai default. Nilai ini tidak digunakan.
NOT_FOUND Token tidak dapat ditemukan di Secret Manager (atau Akun Layanan Dataform tidak memiliki izin untuk mengaksesnya).
INVALID Token tidak dapat digunakan untuk mengautentikasi terhadap remote Git.
VALID Token berhasil digunakan untuk mengautentikasi terhadap remote Git.

Anotasi Alat

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