Menggunakan server MCP jarak jauh Bigtable

Dokumen ini menunjukkan cara menggunakan server Model Context Protocol (MCP) jarak jauh Bigtable untuk terhubung dengan aplikasi AI, termasuk Gemini CLI, ChatGPT, Claude, dan aplikasi kustom yang Anda kembangkan. Server MCP jarak jauh Bigtable memungkinkan Anda mengelola instance dan tabel Bigtable, serta membuat kueri data Anda. Gunakan server MCP Admin untuk tugas administrasi, dan gunakan server MCP Data untuk membuat kueri tabel dari aplikasi AI Anda. Server MCP jarak jauh Bigtable diaktifkan saat Anda mengaktifkan Bigtable API.

Model Context Protocol (MCP) menstandarkan cara model bahasa besar (LLM) dan aplikasi atau agen AI terhubung ke sumber data eksternal. Server MCP memungkinkan Anda menggunakan alat, resource, dan perintahnya untuk melakukan tindakan dan mendapatkan data terbaru dari layanan backend-nya.

Apa perbedaan antara server MCP lokal dan jarak jauh?

Server MCP lokal
Biasanya berjalan di komputer lokal Anda dan menggunakan input dan output stream standar (stdio) untuk komunikasi antar-layanan di perangkat yang sama.
Server MCP jarak jauh
Berjalan di infrastruktur layanan dan menawarkan endpoint HTTP ke aplikasi AI untuk komunikasi antara klien MCP AI dan server MCP. Untuk mengetahui informasi selengkapnya tentang arsitektur MCP, lihat Arsitektur MCP.

Sebelum memulai

  1. Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Bigtable Admin and Bigtable Data APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Bigtable Admin and Bigtable Data APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  8. Jalankan perintah berikut untuk menginstal cbt CLI :
    gcloud components install cbt

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk menggunakan server MCP Bigtable, minta administrator untuk memberi Anda peran IAM berikut pada project tempat Anda ingin menggunakan server MCP Bigtable:

Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk menggunakan server MCP Bigtable. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk menggunakan server MCP Bigtable:

  • Lakukan panggilan alat MCP: mcp.tools.call
  • Gunakan server MCP Admin:
    • bigtable.instances.create
    • bigtable.instances.delete
    • bigtable.instances.get
    • bigtable.instances.list
    • bigtable.tables.create
    • bigtable.tables.delete
    • bigtable.tables.get
    • bigtable.tables.list
  • Gunakan server MCP Data: bigtable.instances.executeQuery

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Autentikasi dan otorisasi

Server MCP Bigtable menggunakan protokol OAuth 2.0 dengan Identity and Access Management (IAM) untuk autentikasi dan otorisasi. Semua Google Cloud identitas didukung untuk autentikasi ke server MCP.

Server MCP jarak jauh Bigtable tidak menerima kunci API.

Sebaiknya Anda membuat identitas terpisah untuk agen menggunakan alat MCP agar Anda dapat mengontrol dan memantau akses ke resource. Untuk mengetahui informasi selengkapnya tentang autentikasi, lihat Mengautentikasi ke server MCP.

Cakupan OAuth MCP Bigtable

OAuth 2.0 menggunakan cakupan dan kredensial untuk menentukan apakah akun utama terautentikasi diizinkan untuk melakukan tindakan tertentu pada resource. Untuk mengetahui informasi selengkapnya tentang cakupan OAuth 2.0 di Google, lihat Menggunakan OAuth 2.0 untuk mengakses Google API.

Bigtable memiliki cakupan OAuth alat MCP berikut:

URI cakupan untuk gcloud CLI Deskripsi
https://www.googleapis.com/auth/bigtable.admin Memberikan akses penuh ke resource Bigtable dan memungkinkan Anda menetapkan peran IAM Bigtable.
https://www.googleapis.com/auth/bigtable.data Memungkinkan akses baca dan tulis ke data yang disimpan dalam tabel Bigtable.

Cakupan tambahan mungkin diperlukan pada resource yang diakses selama panggilan alat. Untuk melihat daftar cakupan yang diperlukan untuk Bigtable, lihat cakupan OAuth Bigtable.

Mengonfigurasi klien MCP untuk menggunakan server MCP Bigtable

Aplikasi dan agen AI, seperti Claude atau Antigravity, dapat membuat instance klien MCP yang terhubung ke satu server MCP. Aplikasi AI dapat memiliki beberapa klien yang terhubung ke server MCP yang berbeda. Jika aplikasi Anda tidak tercantum dalam panduan khusus klien, Anda dapat menggunakan informasi berikut untuk terhubung dari sebagian besar aplikasi.

Di aplikasi AI Anda, cari cara untuk menambahkan atau menghubungkan ke server MCP jarak jauh. Untuk server MCP Bigtable, masukkan informasi berikut, sesuai kebutuhan:

  • Nama server:
    • Server MCP Bigtable Admin
    • Server MCP Data Bigtable
  • URL Server atau Endpoint:
    • Admin API: https://bigtableadmin.googleapis.com/mcp
    • Data API: https://bigtable.googleapis.com/mcp
  • Transportasi: HTTP
  • Detail autentikasi: Bergantung pada cara autentikasi yang Anda inginkan, Anda dapat memasukkan Google Cloud kredensial, ID Klien OAuth dan rahasia, atau identitas dan kredensial agen. Untuk mengetahui informasi selengkapnya tentang autentikasi, lihat Mengautentikasi ke server MCP.
  • Cakupan OAuth: cakupan OAuth Bigtable yang ingin Anda gunakan saat terhubung ke server MCP Bigtable.

URI pengalihan

Untuk aplikasi berbasis web, dan beberapa aplikasi desktop, Anda harus memasukkan URI pengalihan ke daftar yang diizinkan saat membuat ID dan rahasia klien untuk autentikasi. URI pengalihan digunakan oleh server otorisasi untuk mengirim token ke aplikasi Anda. Dokumentasi aplikasi Anda harus menentukan URI pengalihan yang harus Anda gunakan. URI pengalihan kustom tidak didukung.

Untuk panduan khusus aplikasi tentang cara menyiapkan dan terhubung ke server MCP, lihat Panduan khusus klien.

Untuk panduan umum lainnya, lihat referensi berikut:

Alat yang tersedia

Untuk melihat detail alat MCP yang tersedia dan deskripsinya untuk server MCP Bigtable, lihat referensi MCP Bigtable.

Alat daftar

Gunakan pemeriksa MCP untuk mencantumkan alat, atau kirim permintaan HTTP tools/list langsung ke server MCP jarak jauh Bigtable. Metode tools/list tidak memerlukan autentikasi.

Untuk server MCP Admin, kirim permintaan ke:

POST /mcp HTTP/1.1
Host: bigtableadmin.googleapis.com
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/list",
}

Untuk server MCP Data, kirim permintaan ke:

POST /mcp HTTP/1.1
Host: bigtable.googleapis.com
Content-Type: application/json

{
  "jsonrpc": "2.0",
  "method": "tools/list",
}

Contoh perintah

Anda dapat menggunakan contoh perintah berikut untuk membuat atau menghapus resource Bigtable dan mendapatkan informasi tentang resource tersebut.

Contoh perintah administratif

  • "Buat instance INSTANCE_ID di project PROJECT_ID di zona ZONE_ID dengan NODES node."
  • "List instances in project." (Mencantumkan instance dalam project PROJECT_ID).
  • "Dapatkan instance INSTANCE_ID di project PROJECT_ID."
  • "Hapus instance INSTANCE_ID di project PROJECT_ID."
  • "Buat tabel TABLE_ID di instance INSTANCE_ID dalam project PROJECT_ID."
  • "Buat daftar tabel di project INSTANCE_ID instance PROJECT_ID."
  • "Dapatkan tabel TABLE_ID di project INSTANCE_ID PROJECT_ID."
  • "Hapus tabel TABLE_ID di project PROJECT_ID instance INSTANCE_ID."

Dalam perintah, ganti kode berikut:

  • PROJECT_ID dengan project ID Google Cloud Anda.
  • INSTANCE_ID dengan ID instance Bigtable.
  • ZONE_ID dengan zona tempat cluster berjalan.
  • TABLE_ID dengan ID tabel Bigtable.
  • Jika Anda ingin mengontrol jumlah node dalam cluster, ganti NODES dengan jumlah node yang Anda inginkan dalam cluster. Jika tidak ditentukan, defaultnya adalah 1.

Contoh perintah untuk membuat kueri data

  • "Jalankan kueri untuk mengambil hingga 10 baris dari tabel TABLE_ID di instance INSTANCE_ID dalam project PROJECT_ID."
  • "Jalankan kueri SQL terhadap instance INSTANCE_ID di project PROJECT_ID: SELECT _key, column_family, value FROM TABLE_ID WHERE row_key LIKE USER_ID."
  • "Ambil data dari instance Bigtable INSTANCE_ID, project PROJECT_ID menggunakan profil aplikasi APP_PROFILE_ID dengan kueri: SELECT * FROM TABLE_ID WHERE cf1['status'] = 'ERROR'."

Dalam perintah, ganti kode berikut:

  • TABLE_ID dengan ID tabel Bigtable.
  • INSTANCE_ID dengan ID instance Bigtable.
  • PROJECT_ID dengan project ID Google Cloud Anda.
  • USER_ID dengan pola atau kunci baris pengguna yang ingin Anda kueri.
  • APP_PROFILE_ID dengan ID profil aplikasi.

Konfigurasi keamanan dan keselamatan opsional

MCP memperkenalkan risiko dan pertimbangan keamanan baru karena berbagai tindakan yang dapat Anda lakukan dengan alat MCP. Untuk meminimalkan dan mengelola risiko ini,Google Cloud menawarkan setelan default dan kebijakan yang dapat disesuaikan untuk mengontrol penggunaan alat MCP di organisasi atau project Google CloudAnda.

Untuk mengetahui informasi selengkapnya tentang keamanan dan tata kelola MCP, lihat Keamanan dan keselamatan AI.

Menggunakan Model Armor

Model Armor adalah layanan Google Cloud yang dirancang untuk meningkatkan keamanan dan keselamatan aplikasi AI Anda. Layanan ini bekerja dengan menyaring perintah dan respons LLM secara proaktif, melindungi dari berbagai risiko, dan mendukung praktik AI yang bertanggung jawab. Baik Anda men-deploy AI di lingkungan cloud Anda, atau di penyedia cloud eksternal, Model Armor dapat membantu Anda mencegah input berbahaya, memverifikasi keamanan konten, melindungi data sensitif, menjaga kepatuhan, dan menerapkan kebijakan keamanan dan keselamatan AI Anda secara konsisten di seluruh lanskap AI Anda yang beragam.

Jika Model Armor diaktifkan dengan logging diaktifkan, Model Armor akan mencatat seluruh payload. Hal ini dapat mengekspos informasi sensitif dalam log Anda.

Perutean permintaan MCP ke Model Armor

Model Armor tersedia di wilayah tertentu. Jika Model Armor diaktifkan dan Anda menggunakan server MCP di wilayah hukum yang tidak didukung Model Armor, perilaku perutean panggilan mungkin berbeda untuk server MCP yang berbeda dan dapat melanggar kepatuhan residensi data untuk data yang sedang digunakan dan dalam transit. Untuk mengetahui informasi selengkapnya tentang perilaku setiap server MCP, lihat Produk yang didukung Model Armor.

Mengaktifkan Model Armor

Anda harus mengaktifkan API Model Armor sebelum dapat menggunakan Model Armor.

Konsol

  1. Mengaktifkan API Model Armor.

    Peran yang diperlukan untuk mengaktifkan API

    Untuk mengaktifkan API, Anda memerlukan izin serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Admin Penggunaan Layanan (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.

    Mengaktifkan API

  2. Pilih project tempat Anda ingin mengaktifkan Model Armor.

gcloud

Sebelum memulai, ikuti langkah-langkah berikut menggunakan Google Cloud CLI dengan Model Armor API:

  1. Di konsol Google Cloud , aktifkan Cloud Shell.

    Aktifkan Cloud Shell

    Di bagian bawah konsol Google Cloud , sesi Cloud Shell akan dimulai dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi pada sesi.

  2. Jalankan perintah berikut untuk menetapkan endpoint API untuk layanan Model Armor.

    gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.LOCATION.rep.googleapis.com/"

    Ganti LOCATION dengan region tempat Anda ingin menggunakan Model Armor.

Mengonfigurasi perlindungan untuk server MCP jarak jauh dan Google Cloud Google

Untuk membantu melindungi panggilan dan respons alat MCP, Anda dapat menggunakan setelan tingkat Model Armor. Setelan minimum menentukan filter keamanan minimum yang berlaku di seluruh project. Konfigurasi ini menerapkan serangkaian filter yang konsisten ke semua panggilan dan respons alat MCP dalam project.

Menyiapkan setelan tingkat Model Armor dengan pengamanan MCP diaktifkan. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi setelan batas bawah Model Armor.

Lihat contoh perintah berikut:

gcloud model-armor floorsettings update \
--full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
--enable-floor-setting-enforcement=TRUE \
--add-integrated-services=GOOGLE_MCP_SERVER \
--google-mcp-server-enforcement-type=INSPECT_AND_BLOCK \
--enable-google-mcp-server-cloud-logging \
--malicious-uri-filter-settings-enforcement=ENABLED \
--add-rai-settings-filters='[{"confidenceLevel": "MEDIUM_AND_ABOVE", "filterType": "DANGEROUS"}]'

Ganti PROJECT_ID dengan project ID Google Cloud Anda.

Perhatikan setelan berikut:

  • INSPECT_AND_BLOCK: Jenis penegakan yang memeriksa konten untuk server MCP Google dan memblokir perintah dan respons yang cocok dengan filter.
  • ENABLED: Setelan yang mengaktifkan filter atau penerapan.
  • MEDIUM_AND_ABOVE: Tingkat keyakinan untuk setelan filter AI yang bertanggung jawab - Berbahaya. Anda dapat mengubah setelan ini, meskipun nilai yang lebih rendah dapat menghasilkan lebih banyak positif palsu. Untuk mengetahui informasi selengkapnya, lihat Tingkat keyakinan Model Armor.

Menonaktifkan pemindaian traffic MCP dengan Model Armor

Untuk menghentikan Model Armor memindai traffic secara otomatis ke dan dari server MCP Google berdasarkan setelan tingkat project, jalankan perintah berikut:

gcloud model-armor floorsettings update \
  --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
  --remove-integrated-services=GOOGLE_MCP_SERVER

Ganti PROJECT_ID dengan ID project Google Cloud . Model Armor tidak otomatis menerapkan aturan yang ditentukan dalam setelan tingkat project ini ke traffic server MCP Google.

Setelan tingkat Model Armor dan konfigurasi umum dapat memengaruhi lebih dari sekadar MCP. Karena Model Armor terintegrasi dengan layanan seperti Vertex AI, setiap perubahan yang Anda lakukan pada setelan tingkat dapat memengaruhi pemindaian traffic dan perilaku keamanan di semua layanan terintegrasi, bukan hanya MCP.

Mengontrol penggunaan MCP dengan kebijakan IAM

Kebijakan penolakan dan kebijakan izin Identity and Access Management (IAM) membantu Anda mengamankan Google Cloud server Google MCP.

Anda dapat menggabungkan beberapa kriteria untuk membuat kebijakan keamanan dan tata kelola yang disesuaikan dengan mengizinkan atau menolak akses berdasarkan hal berikut:

  • Kepala sekolah.
  • Properti alat seperti atribut hanya baca.
  • Nama layanan atau nama alat.
  • Client ID klien OAuth aplikasi.

Untuk mengetahui informasi selengkapnya, lihat Mengontrol penggunaan MCP dengan Identity and Access Management.

Langkah berikutnya