Menggunakan server MCP jarak jauh Managed Service untuk Apache Airflow

Managed Airflow (Gen 3) | Managed Airflow (Gen 2) | Managed Airflow (Legacy Gen 1)

Dokumen ini menjelaskan cara menggunakan server Model Context Protocol (MCP) jarak jauh Managed Service untuk Apache Airflow guna terhubung ke Managed Service untuk Apache Airflow dari aplikasi AI seperti Gemini CLI, ChatGPT, Claude, atau di aplikasi AI yang Anda kembangkan. Server MCP Managed Airflow memungkinkan Anda mengelola lingkungan Managed Airflow dan mendapatkan detail tentang eksekusi DAG yang dijalankan dan tugas Airflow.

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.

Server MCP jarak jauh dan Google Cloud Google

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

  • Penemuan yang disederhanakan dan terpusat
  • Endpoint HTTP 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.

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. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  4. Enable the Managed Airflow 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

  5. Instal Google Cloud CLI.

  6. Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  7. Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:

    gcloud init
  8. 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

  9. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  10. Enable the Managed Airflow 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

  11. Instal Google Cloud CLI.

  12. Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

  13. Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:

    gcloud init

Peran yang diperlukan

Untuk mendapatkan izin yang diperlukan untuk mengaktifkan server MCP Managed Service for Apache Airflow, minta administrator untuk memberi Anda peran IAM berikut pada project tempat Anda ingin mengaktifkan server MCP Managed Service for Apache Airflow:

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

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.

Autentikasi dan otorisasi

Server MCP jarak jauh Managed Service untuk Apache Airflow 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.

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

Cakupan OAuth MCP Managed Service untuk Apache Airflow

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.

Managed Service untuk Apache Airflow memiliki cakupan OAuth alat MCP berikut:

URI cakupan untuk gcloud CLI Deskripsi
https://www.googleapis.com/auth/cloudcomposer.readonly Hanya mengizinkan akses untuk membaca data.
https://www.googleapis.com/auth/cloudcomposer Mengizinkan akses untuk membaca dan mengubah data.

Mengonfigurasi klien MCP untuk menggunakan server MCP Managed Service untuk Apache Airflow

Aplikasi dan agen AI, seperti Claude atau Gemini CLI, dapat membuat instance klien MCP yang terhubung ke satu server MCP. Aplikasi AI dapat memiliki beberapa klien yang terhubung ke server MCP yang berbeda. Untuk terhubung ke server MCP jarak jauh, klien MCP harus mengetahui URL server MCP jarak jauh.

Di aplikasi AI 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 MCP Managed Service for Apache Airflow, masukkan hal berikut sesuai kebutuhan:

  • Nama server: Server MCP Managed Service untuk Apache Airflow
  • Endpoint: composer.{region}.rep.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 2.0 yang ingin Anda gunakan saat terhubung ke server MCP Managed Service untuk Apache Airflow.

Untuk panduan khusus host tentang cara menyiapkan dan menghubungkan ke server MCP, lihat artikel berikut:

Untuk panduan umum lainnya, lihat referensi berikut:

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 Managed Service for Apache Airflow, lihat referensi MCP Managed Service for Apache Airflow.

Alat daftar

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

POST /mcp HTTP/1.1
Host: composer.{region}.rep.googleapis.com/mcp
Content-Type: application/json

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

Contoh kasus penggunaan

Berikut adalah contoh kasus penggunaan untuk server MCP Managed Service for Apache Airflow:

Menjelaskan status lingkungan

Dalam kasus penggunaan contoh ini, Anda mengajukan pertanyaan tentang lingkungan dalam project Anda.

Temukan semua lingkungan Managed Airflow di us-central1 yang saat ini tidak dalam status berjalan. Jika ada yang dalam status error, beri tahu saya waktu saat lingkungan ini terakhir diperbarui dan konfigurasi beban kerja lingkungan.

Alur kerja: Deskripsi lingkungan Managed Airflow mungkin terlihat seperti berikut.

  • Melihat daftar lingkungan: Agen menggunakan list_environments untuk mendapatkan daftar lingkungan di region yang ditentukan, beserta informasi tentang waktu update terakhir.

Membuat lingkungan Managed Airflow baru dengan paket PyPI kustom

Dalam contoh kasus penggunaan ini, Anda membuat lingkungan Managed Airflow baru, lalu menginstal paket PyPI kustom ke dalamnya.

Contoh perintah:

Buat lingkungan Managed Airflow (Gen 3) baru dengan Airflow 2 di project saya. Kemudian instal paket nltk[machine_learning] ke dalamnya. Gunakan example-account@example-project.iam.gserviceaccount.com akun layanan untuk lingkungan.

Alur kerja: Membuat lingkungan Managed Airflow baru, lalu menginstal paket PyPI kustom ke dalamnya mungkin terlihat seperti berikut.

  • Membuat lingkungan: Agen menggunakan create_environment untuk membuat lingkungan baru dengan parameter konfigurasi yang disediakan. Agen akan menanyakan parameter konfigurasi tambahan seperti daftar alamat IP yang diizinkan untuk mengakses UI Airflow.

  • Menginstal paket: Agen memanggil manage_pypi_packages untuk menginstal paket PyPI yang ditentukan.

Memecahkan masalah tugas dan operasi DAG yang gagal

Periksa lingkungan Managed Airflow example-environment-name di us-central1. example_dag gagal, dan saya ingin tahu alasannya dan di tugas mana secara khusus. Selain itu, beri tahu saya DAG lain yang gagal di lingkungan ini dalam 24 jam terakhir.

Alur Kerja: Pemecahan masalah operasi DAG yang gagal mungkin terlihat seperti berikut.

  • Mendapatkan operasi DAG yang gagal: Agen menggunakan find_last_failed_dag_runs untuk mendapatkan daftar operasi DAG yang gagal untuk DAG example_dag di lingkungan yang ditentukan. Agen menggunakan alat yang sama untuk mendapatkan daftar semua DAG yang gagal dijalankan.

  • Periksa operasi DAG yang gagal: Agen memanggil list_failed_task_instances untuk mendapatkan daftar instance tugas dari operasi DAG yang dalam status gagal.

  • Menganalisis log tugas yang gagal: Agen menggunakan get_task_instance untuk mendapatkan detail instance tugas yang gagal, termasuk data yang diperlukan untuk mengambil log.

  • Periksa kode sumber DAG: Agen menggunakan get_dag_source_code untuk menganalisis kode sumber tugas yang gagal untuk menemukan error.

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. Model Armor 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.

Mengaktifkan Model Armor

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

Konsol

  1. Aktifkan Model Armor API.

    Peran yang diperlukan untuk mengaktifkan API

    Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. 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 bagi 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 batas bawah 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.

Siapkan setelan minimum 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 Responsible AI - 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 batas bawah 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 batas bawah project ini ke traffic server MCP Google.

Setelan minimum 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 batas bawah dapat memengaruhi pemindaian traffic dan perilaku keamanan di semua layanan terintegrasi, bukan hanya MCP.

Mengontrol penggunaan MCP dengan kebijakan penolakan IAM

Kebijakan penolakan Identity and Access Management (IAM) membantu Anda mengamankan server MCP jarak jauh Google Cloud . Konfigurasi kebijakan ini untuk memblokir akses alat MCP yang tidak diinginkan.

Misalnya, Anda dapat menolak atau mengizinkan akses berdasarkan:

  • Kepala sekolah
  • Properti alat seperti hanya baca
  • Client ID OAuth aplikasi

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

Langkah berikutnya