Alat: create-connection
Membuat Koneksi baru di project dan lokasi tertentu.
Contoh kode berikut menunjukkan cara menggunakan curl untuk memanggil alat MCP create-connection.
| Permintaan Curl |
|---|
curl --location 'https://developerconnect.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create-connection", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
Skema Input
Pesan untuk membuat Koneksi
CreateConnectionRequest
| Representasi JSON |
|---|
{
"parent": string,
"connectionId": string,
"connection": {
object ( |
| Kolom | |
|---|---|
parent |
Wajib. Nilai untuk induk. |
connectionId |
Wajib. ID yang akan digunakan untuk koneksi, yang menjadi komponen akhir dari nama resource koneksi. |
connection |
Wajib. Resource yang sedang dibuat |
requestId |
Opsional. ID permintaan opsional untuk mengidentifikasi permintaan. Tentukan ID permintaan unik sehingga jika Anda harus mencoba lagi permintaan, server akan tahu untuk mengabaikan permintaan jika sudah selesai. Server akan menjamin hal tersebut setidaknya selama 60 menit sejak permintaan pertama. Misalnya, pertimbangkan situasi saat Anda membuat permintaan awal dan waktu permintaan habis. Jika Anda membuat permintaan lagi dengan ID permintaan yang sama, server dapat memeriksa apakah operasi asli dengan ID permintaan yang sama telah diterima, dan jika iya, akan mengabaikan permintaan kedua. Tindakan ini mencegah klien membuat komitmen duplikat secara tidak sengaja. ID permintaan harus berupa UUID yang valid, kecuali UUID nol tidak didukung (00000000-0000-0000-0000-000000000000). |
validateOnly |
Opsional. Jika ditetapkan, validasi permintaan, tetapi jangan benar-benar mempostingnya. |
Koneksi
| Representasi JSON |
|---|
{ "name": string, "createTime": string, "updateTime": string, "deleteTime": string, "labels": { string: string, ... }, "installationState": { object ( |
| Kolom | |
|---|---|
name |
ID. Nama resource koneksi, dalam format |
createTime |
Hanya output. Stempel waktu pembuatan. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
updateTime |
Hanya output. Memperbarui stempel waktu. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
deleteTime |
Hanya output. Hapus stempel waktu. Menggunakan RFC 3339 yang outputnya akan selalu dinormalisasi Z dan menggunakan 0, 3, 6, atau 9 digit pecahan. Offset selain "Z" juga diterima. Contoh: |
labels |
Opsional. Label sebagai key-value pair Objek yang berisi daftar pasangan |
installationState |
Hanya output. Status penginstalan Koneksi. |
disabled |
Opsional. Jika dinonaktifkan disetel ke benar (true), fungsi akan dinonaktifkan untuk koneksi ini. Metode API berbasis repositori dan pemrosesan webhook untuk repositori dalam koneksi ini akan dinonaktifkan. |
reconciling |
Hanya output. Tetapkan ke true saat koneksi sedang disiapkan atau diperbarui di latar belakang. |
annotations |
Opsional. Memungkinkan klien menyimpan data arbitrer dalam jumlah kecil. Objek yang berisi daftar pasangan |
etag |
Opsional. Checksum ini dihitung oleh server berdasarkan nilai kolom lain, dan dapat dikirim pada permintaan update dan penghapusan untuk memastikan klien memiliki nilai terbaru sebelum melanjutkan. |
uid |
Hanya output. ID unik yang ditetapkan sistem untuk Koneksi. |
cryptoKeyConfig |
Opsional. Konfigurasi kunci kripto. Kolom ini digunakan oleh fitur Kunci Enkripsi yang Dikelola Pelanggan (CMEK). |
gitProxyConfig |
Opsional. Konfigurasi untuk fitur proxy Git. Mengaktifkan proxy Git memungkinkan klien melakukan operasi Git pada repositori yang ditautkan dalam koneksi. Pelajari lebih lanjut. |
Kolom union connection_config. Konfigurasi untuk koneksi bergantung pada jenis penyedia. connection_config hanya ada berupa salah satu diantara berikut: |
|
githubConfig |
Konfigurasi untuk koneksi ke github.com. |
githubEnterpriseConfig |
Konfigurasi untuk koneksi ke instance GitHub Enterprise. |
gitlabConfig |
Konfigurasi untuk koneksi ke gitlab.com. |
gitlabEnterpriseConfig |
Konfigurasi untuk koneksi ke instance GitLab Enterprise. |
bitbucketDataCenterConfig |
Konfigurasi untuk koneksi ke instance Bitbucket Data Center. |
bitbucketCloudConfig |
Konfigurasi untuk koneksi ke instance Bitbucket Cloud. |
secureSourceManagerInstanceConfig |
Konfigurasi untuk koneksi ke instance Secure Source Manager. |
httpConfig |
Opsional. Konfigurasi untuk koneksi ke penyedia layanan HTTP. |
GitHubConfig
| Representasi JSON |
|---|
{ "githubApp": enum ( |
| Kolom | |
|---|---|
githubApp |
Wajib. Tidak dapat diubah. Aplikasi GitHub yang diinstal ke pengguna atau organisasi GitHub. |
authorizerCredential |
Opsional. Kredensial OAuth akun yang mengizinkan Aplikasi GitHub. Sebaiknya gunakan akun robot, bukan akun pengguna manusia. Token OAuth harus terkait dengan Aplikasi GitHub dari konfigurasi ini. |
appInstallationId |
Opsional. ID penginstalan Aplikasi GitHub. |
installationUri |
Hanya output. URI yang akan dibuka untuk mengelola penginstalan yang terkait dengan GitHubConfig ini. |
OAuthCredential
| Representasi JSON |
|---|
{ "oauthTokenSecretVersion": string, "username": string } |
| Kolom | |
|---|---|
oauthTokenSecretVersion |
Wajib. Resource SecretManager yang berisi token OAuth yang mengizinkan koneksi. Format: |
username |
Hanya output. Nama pengguna yang terkait dengan token ini. |
GitHubEnterpriseConfig
| Representasi JSON |
|---|
{
"hostUri": string,
"appId": string,
"appSlug": string,
"privateKeySecretVersion": string,
"webhookSecretSecretVersion": string,
"appInstallationId": string,
"installationUri": string,
"serviceDirectoryConfig": {
object ( |
| Kolom | |
|---|---|
hostUri |
Wajib. URI host GitHub Enterprise yang dituju oleh koneksi ini. |
appId |
Opsional. ID Aplikasi GitHub yang dibuat dari manifes. |
appSlug |
Hanya output. Nama Aplikasi GitHub yang sesuai dengan URL. |
privateKeySecretVersion |
Opsional. Resource SecretManager yang berisi kunci pribadi Aplikasi GitHub, yang diformat sebagai |
webhookSecretSecretVersion |
Opsional. Resource SecretManager yang berisi secret webhook Aplikasi GitHub, yang diformat sebagai |
appInstallationId |
Opsional. ID penginstalan Aplikasi GitHub. |
installationUri |
Hanya output. URI yang akan dibuka untuk mengelola penginstalan yang terkait dengan GitHubEnterpriseConfig ini. |
serviceDirectoryConfig |
Opsional. Konfigurasi untuk menggunakan Direktori Layanan agar terhubung secara pribadi ke server GitHub Enterprise. Ini hanya boleh ditetapkan jika server GitHub Enterprise dihosting secara lokal dan tidak dapat dijangkau oleh internet publik. Jika kolom ini dibiarkan kosong, panggilan ke server GitHub Enterprise akan dilakukan melalui internet publik. |
serverVersion |
Hanya output. Versi GitHub Enterprise yang diinstal di host_uri. |
sslCaCertificate |
Opsional. Sertifikat SSL yang akan digunakan untuk permintaan ke GitHub Enterprise. |
organization |
Opsional. Tidak dapat diubah. Organisasi GitHub Enterprise tempat Aplikasi GitHub dibuat. |
ServiceDirectoryConfig
| Representasi JSON |
|---|
{ "service": string } |
| Kolom | |
|---|---|
service |
Wajib. Nama layanan Direktori Layanan. Format: projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}. |
GitLabConfig
| Representasi JSON |
|---|
{ "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| Kolom | |
|---|---|
webhookSecretSecretVersion |
Wajib. Tidak dapat diubah. Resource SecretManager yang berisi secret webhook project GitLab, yang diformat sebagai |
readAuthorizerCredential |
Wajib. Token akses pribadi GitLab dengan akses cakupan |
authorizerCredential |
Wajib. Token akses pribadi GitLab dengan akses cakupan |
UserCredential
| Representasi JSON |
|---|
{ "userTokenSecretVersion": string, "username": string } |
| Kolom | |
|---|---|
userTokenSecretVersion |
Wajib. Resource SecretManager yang berisi token pengguna yang mengizinkan koneksi Developer Connect. Format: |
username |
Hanya output. Nama pengguna yang terkait dengan token ini. |
GitLabEnterpriseConfig
| Representasi JSON |
|---|
{ "hostUri": string, "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| Kolom | |
|---|---|
hostUri |
Wajib. URI host GitLab Enterprise yang dituju oleh koneksi ini. |
webhookSecretSecretVersion |
Wajib. Tidak dapat diubah. Resource SecretManager yang berisi secret webhook project GitLab, yang diformat sebagai |
readAuthorizerCredential |
Wajib. Token akses pribadi GitLab dengan akses cakupan |
authorizerCredential |
Wajib. Token akses pribadi GitLab dengan akses cakupan |
serviceDirectoryConfig |
Opsional. Konfigurasi untuk menggunakan Direktori Layanan agar terhubung secara pribadi ke instance GitLab Enterprise. Ini hanya boleh ditetapkan jika server GitLab Enterprise dihosting secara lokal dan tidak dapat dijangkau oleh internet publik. Jika kolom ini dibiarkan kosong, panggilan ke server GitLab Enterprise akan dilakukan melalui internet publik. |
sslCaCertificate |
Opsional. Sertifikat SSL Certificate Authority yang akan digunakan untuk permintaan ke instance GitLab Enterprise. |
serverVersion |
Hanya output. Versi server GitLab Enterprise yang berjalan di |
BitbucketDataCenterConfig
| Representasi JSON |
|---|
{ "hostUri": string, "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| Kolom | |
|---|---|
hostUri |
Wajib. URI host Bitbucket Data Center yang dituju oleh koneksi ini. |
webhookSecretSecretVersion |
Wajib. Tidak dapat diubah. Resource SecretManager yang berisi rahasia webhook yang digunakan untuk memverifikasi peristiwa webhook, yang diformat sebagai |
readAuthorizerCredential |
Wajib. Token akses http dengan akses |
authorizerCredential |
Wajib. Token akses http dengan akses cakupan |
serviceDirectoryConfig |
Opsional. Konfigurasi untuk menggunakan Direktori Layanan agar terhubung secara pribadi ke instance Pusat Data Bitbucket. Ini hanya boleh ditetapkan jika Bitbucket Data Center dihosting secara lokal dan tidak dapat dijangkau oleh internet publik. Jika kolom ini dibiarkan kosong, panggilan ke Bitbucket Data Center akan dilakukan melalui internet publik. |
sslCaCertificate |
Opsional. Otoritas sertifikat SSL yang dipercaya saat membuat permintaan ke Bitbucket Data Center. |
serverVersion |
Hanya output. Versi server Pusat Data Bitbucket yang berjalan di |
BitbucketCloudConfig
| Representasi JSON |
|---|
{ "workspace": string, "webhookSecretSecretVersion": string, "readAuthorizerCredential": { object ( |
| Kolom | |
|---|---|
workspace |
Wajib. ID Workspace Bitbucket Cloud yang akan dihubungkan ke Google Cloud Platform. |
webhookSecretSecretVersion |
Wajib. Tidak dapat diubah. Resource SecretManager yang berisi rahasia webhook yang digunakan untuk memverifikasi peristiwa webhook, yang diformat sebagai |
readAuthorizerCredential |
Wajib. Token akses dengan akses |
authorizerCredential |
Wajib. Token akses dengan akses cakupan |
SecureSourceManagerInstanceConfig
| Representasi JSON |
|---|
{ "instance": string } |
| Kolom | |
|---|---|
instance |
Wajib. Tidak dapat diubah. Resource instance Secure Source Manager, yang diformat sebagai |
GenericHTTPEndpointConfig
| Representasi JSON |
|---|
{ "hostUri": string, "serviceDirectoryConfig": { object ( |
| Kolom | |
|---|---|
hostUri |
Wajib. Tidak dapat diubah. Endpoint https penyedia layanan. |
serviceDirectoryConfig |
Opsional. Konfigurasi untuk menggunakan Direktori Layanan agar terhubung secara pribadi ke penyedia layanan HTTP. Setelan ini hanya boleh ditetapkan jika penyedia layanan Http dihosting secara lokal dan tidak dapat dijangkau oleh internet publik. Jika kolom ini dibiarkan kosong, panggilan ke penyedia layanan HTTP akan dilakukan melalui internet publik. |
sslCaCertificate |
Opsional. Sertifikat SSL yang akan digunakan untuk permintaan ke penyedia layanan HTTP. |
Kolom union authentication. Mekanisme autentikasi yang akan digunakan untuk permintaan ke penyedia layanan HTTP. authentication hanya ada berupa salah satu diantara berikut: |
|
basicAuthentication |
Opsional. Autentikasi dasar dengan nama pengguna dan sandi. |
bearerTokenAuthentication |
Opsional. Autentikasi token pemilik dengan token. |
BasicAuthentication
| Representasi JSON |
|---|
{ "username": string, // Union field |
| Kolom | |
|---|---|
username |
Wajib. Nama pengguna yang akan diautentikasi. |
Kolom union password. Sandi untuk melakukan autentikasi. password hanya ada berupa salah satu diantara berikut: |
|
passwordSecretVersion |
Versi secret SecretManager sandi untuk melakukan autentikasi. |
BearerTokenAuthentication
| Representasi JSON |
|---|
{ // Union field |
| Kolom | |
|---|---|
Kolom union token. Token untuk melakukan autentikasi. token hanya ada berupa salah satu diantara berikut: |
|
tokenSecretVersion |
Opsional. Versi secret SecretManager token untuk melakukan autentikasi. |
Stempel waktu
| Representasi JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Kolom | |
|---|---|
seconds |
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 |
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 nano non-negatif yang dihitung maju dalam waktu. Harus antara 0 dan 999.999.999 inklusif. |
LabelsEntry
| Representasi JSON |
|---|
{ "key": string, "value": string } |
| Kolom | |
|---|---|
key |
|
value |
|
InstallationState
| Representasi JSON |
|---|
{
"stage": enum ( |
| Kolom | |
|---|---|
stage |
Hanya output. Langkah saat ini dalam proses penginstalan. |
message |
Hanya output. Pesan tentang tindakan yang harus dilakukan pengguna selanjutnya untuk melanjutkan penginstalan. String kosong jika penginstalan sudah selesai. |
actionUri |
Hanya output. Link yang harus diikuti untuk tindakan berikutnya. String kosong jika penginstalan sudah selesai. |
AnnotationsEntry
| Representasi JSON |
|---|
{ "key": string, "value": string } |
| Kolom | |
|---|---|
key |
|
value |
|
CryptoKeyConfig
| Representasi JSON |
|---|
{ "keyReference": string } |
| Kolom | |
|---|---|
keyReference |
Wajib. Nama kunci yang digunakan untuk mengenkripsi/mendekripsi data pelanggan. Untuk kunci di Cloud KMS, kunci harus dalam format |
GitProxyConfig
| Representasi JSON |
|---|
{ "enabled": boolean, "httpProxyBaseUri": string } |
| Kolom | |
|---|---|
enabled |
Opsional. Menetapkan nilai ini ke true (benar) akan memungkinkan proxy Git digunakan untuk melakukan operasi Git pada repositori yang ditautkan dalam koneksi. |
httpProxyBaseUri |
Hanya output. URI dasar untuk endpoint proxy HTTP. Memiliki format |
GitHubApp
Merepresentasikan berbagai Aplikasi GitHub yang dapat diinstal ke pengguna atau organisasi GitHub dan digunakan dengan Developer Connect.
| Enum | |
|---|---|
GIT_HUB_APP_UNSPECIFIED |
Aplikasi GitHub tidak ditentukan. |
DEVELOPER_CONNECT |
Aplikasi GitHub Developer Connect. |
FIREBASE |
Aplikasi GitHub Firebase. |
GEMINI_CODE_ASSIST |
Aplikasi Gemini Code Assist. |
DATAFORM |
Aplikasi GitHub Dataform. |
Tahap
Tahap proses penginstalan.
| Enum | |
|---|---|
STAGE_UNSPECIFIED |
Tidak ada tahap yang ditentukan. |
PENDING_CREATE_APP |
Hanya untuk GitHub Enterprise. Pembuatan Aplikasi telah diminta. Pengguna harus mengonfirmasi pembuatan di host GitHub Enterprise mereka. |
PENDING_USER_OAUTH |
Pengguna harus mengizinkan Aplikasi GitHub (atau Enterprise) melalui OAuth. |
PENDING_INSTALL_APP |
Pengguna harus mengikuti link untuk menginstal Aplikasi GitHub (atau Enterprise). |
COMPLETE |
Proses penginstalan telah selesai. |
Skema Output
Resource ini mewakili operasi yang berjalan lama yang merupakan hasil dari panggilan API jaringan.
Operasi
| Representasi JSON |
|---|
{ "name": string, "metadata": { "@type": string, field1: ..., ... }, "done": boolean, // Union field |
| Kolom | |
|---|---|
name |
Nama server yang ditetapkan, yang hanya bersifat unik dalam layanan yang sama yang awalnya menampilkannya. Jika Anda menggunakan pemetaan HTTP default, |
metadata |
Metadata khusus layanan yang terkait dengan operasi. Biasanya berisi informasi kemajuan dan metadata umum, seperti membuat waktu. Beberapa layanan mungkin tidak menyediakan metadata semacam itu. Setiap metode yang menampilkan operasi yang berjalan lama harus mendokumentasikan tipe metadata, jika ada. Objek yang berisi kolom tipe arbitrer. Kolom tambahan |
done |
Jika nilainya adalah |
Kolom union result. Hasil operasi, yang dapat berupa error atau response yang valid. Jika done == false, error atau response tidak ditetapkan. Jika done == true, hanya salah satu dari error atau response yang dapat ditetapkan. Beberapa layanan mungkin tidak memberikan hasil. result hanya dapat berupa salah satu dari berikut: |
|
error |
Hasil error operasi jika terjadi kegagalan atau pembatalan. |
response |
Respons normal dan berhasil dari operasi. Jika metode asli tidak menampilkan data saat berhasil, seperti Objek yang berisi kolom tipe arbitrer. Kolom tambahan |
Semua
| Representasi JSON |
|---|
{ "typeUrl": string, "value": string } |
| Kolom | |
|---|---|
typeUrl |
Mengidentifikasi jenis pesan Protobuf yang diserialisasi dengan referensi URI yang terdiri dari awalan yang diakhiri dengan garis miring dan nama jenis yang sepenuhnya memenuhi syarat. Contoh: type.googleapis.com/google.protobuf.StringValue String ini harus berisi setidaknya satu karakter Prefiks bersifat arbitrer dan implementasi Protobuf diharapkan hanya menghapus semua hal hingga dan termasuk Semua string URL jenis harus berupa referensi URI yang sah dengan batasan tambahan (untuk format teks) bahwa konten referensi hanya boleh terdiri dari karakter alfanumerik, escape yang dienkode persen, dan karakter dalam kumpulan berikut (tidak termasuk tanda petik terbalik luar): Dalam desain asli |
value |
Menyimpan serialisasi Protobuf dari jenis yang dijelaskan oleh type_url. String berenkode base64. |
Status
| Representasi JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Kolom | |
|---|---|
code |
Kode status, harus berupa nilai enum dari |
message |
Pesan error yang ditampilkan ke developer dan seharusnya dalam bahasa Inggris. Setiap pesan error yang ditampilkan kepada pengguna harus dilokalkan dan dikirim di kolom |
details[] |
Daftar pesan yang membawa detail error. Ada seperangkat jenis pesan umum untuk digunakan API. Objek yang berisi kolom tipe arbitrer. Kolom tambahan |
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 tersebut dapat digunakan untuk memutuskan kapan perintah konfirmasi dapat dikirim kepada pengguna.
Bersama dengan 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 aditif. Default: true.idempotentHint: Jika benar, memanggil alat berulang kali dengan argumen yang sama tidak akan memberikan efek tambahan pada lingkungannya. Default: false.openWorldHint: Jika benar, alat dapat berinteraksi dengan 'open world' entitas eksternal. Jika salah, alat hanya dapat berinteraksi dengan entity internal. Misalnya, alat penelusuran web akan bersifat open world, sedangkan alat memori tidak akan bersifat open world.
Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ❌ | Open World Hint: ❌