MCP Reference: cloudcli.googleapis.com

Server MCP Cloud CLI menyediakan alat untuk menjalankan perintah Cloud CLI di lingkungan sandbox jarak jauh.

Server Model Context Protocol (MCP) bertindak sebagai proxy antara layanan eksternal yang menyediakan konteks, data, atau kemampuan ke Model Bahasa Besar (LLM) atau aplikasi AI. Server MCP menghubungkan aplikasi AI ke sistem eksternal seperti database dan layanan web, serta menerjemahkan responsnya ke dalam format yang dapat dipahami oleh aplikasi AI.

Penyiapan Server

Anda harus mengaktifkan server MCP dan menyiapkan autentikasi sebelum digunakan. Untuk mengetahui informasi selengkapnya tentang cara menggunakan server MCP jarak jauh Google dan Google Cloud, lihat Ringkasan server MCP Google Cloud.

Endpoint Server

Endpoint layanan MCP adalah alamat jaringan dan antarmuka komunikasi (biasanya URL) server MCP yang digunakan aplikasi AI (Host untuk klien MCP) untuk membuat koneksi yang aman dan standar. Agen ini adalah titik kontak bagi LLM untuk meminta konteks, memanggil alat, atau mengakses resource. Endpoint MCP Google dapat bersifat global atau regional.

Server MCP Cloud CLI Execution API memiliki endpoint MCP global berikut:

  • https://cloudcli.googleapis.com/mcp

Alat MCP

Alat MCP adalah fungsi atau kemampuan yang dapat dieksekusi yang diekspos server MCP ke aplikasi LLM atau AI untuk melakukan tindakan di dunia nyata.

Alat

Server MCP cloudcli.googleapis.com memiliki alat berikut:

Alat MCP
run_gcloud_command

Menjalankan satu perintah gcloud CLI dalam project Google Cloud pengguna. PERINGATAN KESELAMATAN KRITIS (BERPOTENSI MERUSAK): Alat ini dapat membuat, memperbarui, atau menghapus resource GCP (misalnya, gcloud compute instances delete). TIDAK terbatas pada perintah hanya baca. Gunakan dengan sangat hati-hati. PERINTAH YANG DILARANG: Agen TIDAK BOLEH menjalankan perintah gcloud berikut (termasuk varian alfa/beta-nya): app deploy, app instances ssh, auth, billing, components, config, docker, feedback, info, init, meta, survey. ATURAN EKSEKUSI YANG KETAT:

  1. Anda HARUS memberikan parameter 'project' (yaitu project="projects/PROJECT_ID") saat menggunakan alat ini (digunakan untuk pemeriksaan pengaktifan Cloud CLI Execution API, penagihan, kuota, dll.). Ini TIDAK sama dengan flag --project dalam perintah gcloud yang digunakan untuk menentukan project yang dioperasikan gcloud.
  2. Pemformatan Flag: Anda HARUS selalu menggunakan tanda '=' untuk memisahkan kunci flag dari nilainya untuk semua opsi panjang. Benar: --zone=us-central1-a atau --project=my-project. Salah: --zone us-central1-a atau --project my-project.
  3. Project Penagihan: Anda tidak dapat mengasumsikan project atau setelan penagihan yang telah dikonfigurasi sebelumnya di lingkungan eksekusi. Untuk perintah yang tidak memiliki cakupan project (misalnya, tingkat folder atau organisasi) atau skenario tertentu seperti Cloud Storage Requester Pays, Anda HARUS meneruskan tanda --billing-project=PROJECT. Untuk perintah cakupan project, Anda JUGA DAPAT menentukan --billing-project=PROJECT untuk mengganti project kuota, yang akan berlaku untuk GCP API yang tidak mendukung penggantian project resource.
  4. Cakupan Project: Anda HARUS SELALU meneruskan tanda --project=PROJECT_ID untuk perintah yang memiliki cakupan project. Jangan menggunakannya untuk perintah tingkat folder atau organisasi. Jika Anda tidak memberikan tanda --project untuk perintah yang tercakup dalam project, project resource akan ditetapkan secara default ke project yang ditetapkan dalam tanda --billing-project.
  5. Jika menentukan tanda --billing-project dalam perintah gcloud, pastikan nilainya adalah project ID atau nomor project. Nilai TIDAK BOLEH berupa nilai khusus (yaitu LEGACY, CURRENT_PROJECT, CURRENT_PROJECT_WITH_FALLBACK).
  6. Setidaknya salah satu dari --project atau --billing-project HARUS ditentukan dalam string perintah.
  7. Operasi Asinkron: Untuk operasi sinkron yang berjalan lama (misalnya, membuat VM atau database), Anda HARUS SELALU meneruskan tanda --async untuk mencegah waktu tunggu agen habis.
  8. Pembatasan Kecepatan Log: Saat menggunakan gcloud logging read, Anda HARUS SELALU menyertakan tanda --limit (misalnya, --limit=100) untuk mencegah waktu tunggu koneksi dan kredensial habis.
  9. Koreksi Mandiri: Jika perintah menampilkan error, analisis stderr, perbaiki sintaksis atau flag, lalu coba lagi pada iterasi berikutnya.
  10. input_files: (Opsional) Daftar file yang akan dibuat di lingkungan sebelum menjalankan perintah. Setiap file harus memiliki 'path' (relatif terhadap direktori saat ini) dan 'contents'. 'contents' harus berupa teks biasa yang merepresentasikan konten file. Hal ini berguna untuk perintah yang membaca dari file (misalnya, gcloud builds submit --config=cloudbuild.yaml --async --project=PROJECT_ID).

Contoh perintah/pola gcloud:

  1. Baca log instance GCE dengan severity>=ERROR: gcloud logging read "severity>=ERROR AND resource.type='gce_instance'" --limit=10 --order=DESC --project=PROJECT_ID
    • Perhatikan penggunaan tanda kutip untuk ekspresi filter.
  2. Mencantumkan semua endpoint PSC: gcloud compute forwarding-rules list --project=PROJECT_ID
  3. Menjelaskan endpoint PSC: gcloud compute forwarding-rules describe FORWARDING_RULE_NAME --region=REGION --project=PROJECT_ID
    • Perhatikan penggunaan '=' untuk tanda --region.
  4. Mencantumkan semua cluster: gcloud container clusters list --project=PROJECT_ID
  5. Mendeskripsikan cluster: gcloud container clusters describe CLUSTER_NAME --region=REGION --project=PROJECT_ID
  6. Mencantumkan instance komputasi: gcloud compute instances list --project=PROJECT_ID
  7. Mendapatkan kebijakan IAM untuk project: gcloud projects get-iam-policy PROJECT_ID --project=PROJECT_ID

String respons diformat untuk output terminal secara default (stdout atau stderr). Gunakan tanda --format untuk mengubah format.

Mendapatkan spesifikasi alat MCP

Untuk mendapatkan spesifikasi alat MCP untuk semua alat di server MCP, gunakan metode tools/list. Contoh berikut menunjukkan cara menggunakan curl untuk mencantumkan semua alat dan spesifikasinya yang saat ini tersedia dalam server MCP.

Permintaan Curl
                      
curl --location 'https://cloudcli.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'