Menggunakan server MCP jarak jauh BigQuery

Dokumen ini menjelaskan cara menggunakan server Model Context Protocol (MCP) jarak jauh BigQuery untuk terhubung ke BigQuery dari aplikasi AI seperti Gemini CLI, mode agen di Gemini Code Assist, Claude Code, atau di aplikasi AI yang Anda kembangkan.

Model Context Protocol (MCP) menstandardisasi 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.

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 HTTPS ke aplikasi AI untuk komunikasi antara klien MCP AI dan server MCP. Untuk mengetahui informasi selengkapnya tentang arsitektur MCP, lihat Arsitektur MCP.

Server MCP jarak jauh dan Google memiliki fitur dan manfaat berikut: Google Cloud

  • Penemuan yang disederhanakan dan terpusat
  • Endpoint HTTPS global atau regional yang dikelola
  • Otorisasi terperinci
  • Keamanan perintah dan respons opsional dengan perlindungan Model Armor
  • Logging audit terpusat

Untuk mengetahui informasi tentang server MCP lainnya dan informasi tentang kontrol keamanan dan tata kelola yang tersedia untuk server MCP Google Cloud, lihat Ringkasan server MCP Google Cloud.

Anda dapat menggunakan server MCP lokal BigQuery karena alasan berikut:

  • Anda perlu membuat alat kustom melalui kueri SQL berparameter.
  • Anda tidak memiliki izin untuk mengaktifkan atau menggunakan server MCP jarak jauh di project Anda.

Untuk mengetahui informasi selengkapnya tentang cara menggunakan server MCP lokal kami, lihat artikel Menghubungkan LLM ke BigQuery dengan MCP. Bagian berikut hanya berlaku untuk server MCP jarak jauh BigQuery.

Sebelum memulai

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  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. Jika Anda menggunakan project yang sudah ada untuk panduan ini, pastikan Anda memiliki izin yang diperlukan untuk menyelesaikan panduan ini. Jika Anda membuat project baru, berarti Anda sudah memiliki izin yang diperlukan.

  4. 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

  5. Jika Anda menggunakan project yang sudah ada untuk panduan ini, pastikan Anda memiliki izin yang diperlukan untuk menyelesaikan panduan ini. Jika Anda membuat project baru, berarti Anda sudah memiliki izin yang diperlukan.

  6. Enable the BigQuery API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

    Untuk project baru, BigQuery API diaktifkan secara otomatis.

  7. Opsional: Aktifkan penagihan untuk project. Jika Anda tidak ingin mengaktifkan penagihan atau memberikan kartu kredit, langkah-langkah dalam dokumen ini tetap berfungsi. BigQuery menyediakan sandbox untuk melakukan langkah-langkah tersebut. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan sandbox BigQuery.
  8. Peran yang diperlukan

    Untuk mendapatkan izin yang diperlukan guna mengaktifkan server MCP BigQuery, minta administrator Anda untuk memberi Anda peran IAM berikut pada project tempat Anda ingin mengaktifkan server MCP BigQuery:

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

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

    Izin yang diperlukan

    Izin berikut diperlukan untuk mengaktifkan server MCP BigQuery:

    • Mengaktifkan server MCP dalam project:
      • serviceusage.mcppolicy.get
      • serviceusage.mcppolicy.update
    • Lakukan panggilan alat MCP: mcp.tools.call
    • Menjalankan tugas BigQuery: bigquery.jobs.create
    • Membuat kueri data BigQuery: bigquery.tables.getData

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

    Mengaktifkan atau menonaktifkan server BigQuery MCP

    Anda dapat mengaktifkan atau menonaktifkan server BigQuery MCP dalam project dengan perintah gcloud beta services mcp enable. Untuk informasi selengkapnya, lihat bagian berikut.

    Mengaktifkan server BigQuery MCP dalam project

    Jika Anda menggunakan project yang berbeda untuk kredensial klien, seperti kunci akun layanan, ID klien OAuth, atau kunci API, dan untuk menghosting resource, Anda harus mengaktifkan layanan BigQuery dan server MCP jarak jauh BigQuery di kedua project.

    Untuk mengaktifkan server MCP BigQuery di Google Cloud project Anda, jalankan perintah berikut:

    gcloud beta services mcp enable SERVICE \
        --project=PROJECT_ID
    

    Ganti kode berikut:

    • PROJECT_ID: Google Cloud project ID
    • SERVICE: bigquery.googleapis.com (nama layanan global untuk BigQuery)

    Server MCP jarak jauh BigQuery diaktifkan untuk digunakan di Google Cloud project Anda. Jika layanan BigQuery tidak diaktifkan untuk project Anda, Anda akan diminta untuk mengaktifkan layanan tersebut sebelum mengaktifkan server MCP jarak jauh BigQuery. Google Cloud

    Sebagai praktik terbaik keamanan, sebaiknya aktifkan server MCP hanya untuk layanan yang diperlukan agar aplikasi AI Anda dapat berfungsi.

    Menonaktifkan server BigQuery MCP dalam project

    Untuk menonaktifkan server MCP BigQuery di Google Cloud project Anda, jalankan perintah berikut:

    gcloud beta services mcp disable SERVICE \
        --project=PROJECT_ID
    

    Server MCP BigQuery dinonaktifkan untuk digunakan di project Google Cloud Anda.

    Autentikasi dan otorisasi

    Server MCP BigQuery 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 BigQuery tidak menerima kunci API.

    Cakupan OAuth BigQuery MCP

    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, baca Menggunakan OAuth 2.0 untuk mengakses Google API.

    BigQuery memiliki cakupan OAuth alat MCP berikut:

    URI cakupan untuk gcloud CLI Deskripsi
    https://www.googleapis.com/auth/bigquery Melihat dan mengelola data Anda di BigQuery serta melihat alamat email untuk Akun Google Anda.

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

    Mengonfigurasi klien MCP untuk menggunakan server BigQuery MCP

    Program host, seperti Claude atau Gemini CLI, dapat membuat instance klien MCP yang terhubung ke satu server MCP. Program host dapat memiliki beberapa klien yang terhubung ke server MCP yang berbeda. Untuk terhubung ke server MCP jarak jauh, klien MCP setidaknya harus mengetahui URL server MCP jarak jauh.

    Di host Anda, cari cara untuk terhubung ke server MCP jarak jauh. Anda akan diminta untuk memasukkan detail tentang server, seperti nama dan URL-nya.

    Untuk server BigQuery MCP, masukkan hal berikut sesuai kebutuhan:

    • Nama server: Server MCP BigQuery
    • URL Server atau Endpoint: bigquery.googleapis.com/mcp
    • Transportasi: HTTP
    • Detail autentikasi: kredensial Anda, ID Klien dan secret OAuth Anda, atau identitas dan kredensial agen Google Cloud

      Detail autentikasi yang Anda pilih bergantung pada cara Anda ingin mengautentikasi. Untuk mengetahui informasi selengkapnya, lihat Mengautentikasi ke server MCP.

    Untuk panduan khusus host, lihat artikel berikut:

    Untuk panduan yang lebih umum, lihat Menghubungkan ke server MCP jarak jauh.

    Alat yang tersedia

    Alat MCP yang bersifat hanya baca memiliki atribut MCP mcp.tool.isReadOnly yang ditetapkan ke true. Anda mungkin hanya ingin mengizinkan alat hanya baca di lingkungan tertentu melalui kebijakan organisasi.

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

    Alat daftar

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

    POST /mcp HTTP/1.1
    Host: bigquery.googleapis.com
    Content-Type: application/json
    
    {
      "jsonrpc": "2.0",
      "method": "tools/list",
    }
    

    Kasus penggunaan sampel

    Berikut adalah contoh kasus penggunaan untuk server MCP BigQuery:

    • Buat alur kerja yang menggunakan insight dari data BigQuery untuk memicu tindakan tertentu seperti membuat masalah dan menyusun email.

    • Gunakan kemampuan lanjutan BigQuery seperti peramalan untuk mendapatkan insight tingkat yang lebih tinggi.

    • Buat pengalaman percakapan bagi pengguna Anda dengan petunjuk agen kustom.

    Contoh perintah

    Anda dapat menggunakan contoh perintah berikut untuk mendapatkan informasi tentang resource BigQuery, mendapatkan insight, dan menganalisis data BigQuery:

    • Mencantumkan set data dalam project PROJECT_ID.
    • Temukan semua kueri yang saya jalankan di project PROJECT_ID menggunakan server MCP di region REGION. Gunakan tag goog-mcp-server:true untuk mengidentifikasi tugas kueri yang dijalankan melalui server MCP.
    • Temukan pesanan teratas berdasarkan volume dari DATASET_ID dalam project PROJECT_ID. Identifikasi tabel yang sesuai, temukan skema yang benar, dan tunjukkan hasilnya.
    • Buat perkiraan pada tabel PROJECT_ID.DATASET_ID.TABLE_ID untuk tahun-tahun mendatang. Gunakan COLUMN_NAME sebagai kolom data dan COLUMN_NAME sebagai kolom stempel waktu. Tampilkan 10 perkiraan teratas.

    Dalam perintah, ganti kode berikut:

    • PROJECT_ID: Google Cloud project ID
    • REGION: nama region
    • DATASET_ID: nama set data
    • TABLE_ID: nama tabel
    • COLUMN_NAME: nama kolom

    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 kebijakan default dan yang dapat disesuaikan untuk mengontrol penggunaan alat MCP di organisasi atau project Anda Google Cloud.

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

    Model Armor

    Model Armor adalah layanan Google Cloud yang dirancang untuk meningkatkan keamanan dan keselamatan aplikasi AI Anda. Alat 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, mempertahankan kepatuhan, dan menerapkan kebijakan keamanan AI Anda secara konsisten di seluruh lanskap AI Anda yang beragam.

    Model Armor hanya tersedia di lokasi regional tertentu. Jika Model Armor diaktifkan untuk project, dan panggilan ke project tersebut berasal dari region yang tidak didukung, Model Armor akan melakukan panggilan lintas region. Untuk mengetahui informasi selengkapnya, lihat Lokasi Model Armor.

    Mengaktifkan Model Armor

    Untuk mengaktifkan Model Armor, selesaikan langkah-langkah berikut:

    1. Aktifkan Model Armor di Google Cloud project Anda.

      gcloud services enable modelarmor.googleapis.com \
          --project=PROJECT_ID
      

      Ganti PROJECT_ID dengan ID project Google Cloud Anda.

    2. Konfigurasi setelan minimum yang direkomendasikan untuk Model Armor.

      gcloud model-armor floorsettings update \
          --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
          --mcp-sanitization=ENABLED \
          --malicious-uri-filter-settings-enforcement=ENABLED \
          --pi-and-jailbreak-filter-settings-enforcement=ENABLED \
          --pi-and-jailbreak-filter-settings-confidence-level=MEDIUM_AND_ABOVE
      

      Ganti PROJECT_ID dengan ID project Google Cloud Anda.

      Model Armor dikonfigurasi untuk memindai URL berbahaya dan upaya injeksi perintah dan jailbreak.

      Untuk mengetahui informasi selengkapnya tentang filter Model Armor yang dapat dikonfigurasi, lihat Filter Model Armor.

    3. Tambahkan Model Armor sebagai penyedia keamanan konten untuk layanan MCP.

      gcloud beta services mcp content-security add modelarmor.googleapis.com \
          --project=PROJECT_ID
      

      Ganti PROJECT_ID dengan ID project Google Cloud .

    4. Konfirmasi bahwa traffic MCP dikirim ke Model Armor.

      gcloud beta services mcp content-security get \
          --project=PROJECT_ID
      

      Ganti PROJECT_ID dengan ID project Google Cloud .

    Pencatatan log Model Armor

    Untuk mengetahui informasi tentang log audit dan platform Model Armor, lihat Logging audit Model Armor.

    Menonaktifkan Model Armor dalam project

    Untuk menonaktifkan Model Armor di project, jalankan perintah berikut: Google Cloud

    gcloud beta services mcp content-security remove modelarmor.googleapis.com \
        --project=PROJECT_ID
    

    Ganti PROJECT_ID dengan ID project Google Cloud .

    Traffic MCP di Google Cloud tidak dipindai oleh Model Armor untuk project yang ditentukan.

    Menonaktifkan pemindaian traffic MCP dengan Model Armor

    Jika Anda masih ingin menggunakan Model Armor dalam project, tetapi Anda ingin berhenti memindai traffic MCP dengan Model Armor, jalankan perintah berikut:

    gcloud model-armor floorsettings update \
        --full-uri='projects/PROJECT_ID/locations/global/floorSetting' \
        --mcp-sanitization=DISABLED
    

    Ganti PROJECT_ID dengan ID project Google Cloud .

    Model Armor tidak akan memindai traffic MCP di Google Cloud.

    Kontrol MCP tingkat organisasi

    Anda dapat membuat kebijakan organisasi kustom untuk mengontrol penggunaan server MCP di organisasi Google Cloud Anda menggunakan batasan gcp.managed.allowedMCPService. Untuk mengetahui informasi dan contoh penggunaan selengkapnya, lihat Kontrol akses dengan IAM.

    Kuota dan batas

    Server MCP jarak jauh BigQuery tidak memiliki kuotanya sendiri. Tidak ada batasan jumlah panggilan yang dapat dilakukan ke server MCP.

    Anda tetap tunduk pada kuota yang diterapkan oleh API yang dipanggil oleh alat server MCP. Metode API berikut dipanggil oleh alat server MCP:

    Alat Metode API Kuota
    list_dataset_ids datasets.list Kuota dan batas set data
    list_table_ids tables.list Kuota dan batas tabel
    get_dataset_info datasets.get Kuota dan batas set data
    get_table_info tables.get Kuota dan batas tabel
    execute_sql jobs.Query Kuota dan batas tugas kueri

    Untuk mengetahui informasi selengkapnya tentang kuota BigQuery, lihat Kuota dan batas.

    Langkah berikutnya