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 (stdio) standar 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.
Anda mungkin ingin menggunakan server MCP lokal AlloyDB karena alasan berikut:
- Pengembangan dan pengujian lokal
- Penggunaan MCP offline
- Mengelola cluster dan instance AlloyDB dari aplikasi AI Anda
Untuk mengetahui informasi selengkapnya tentang cara menggunakan server MCP lokal, lihat Menggunakan AlloyDB untuk PostgreSQL dengan MCP, Gemini CLI, dan agen lainnya atau Server MCP AlloyDB untuk PostgreSQL. Bagian berikut hanya berlaku untuk server MCP jarak jauh AlloyDB untuk PostgreSQL.
Google Cloud server MCP jarak jauh
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.
Batasan
Server MCP jarak jauh AlloyDB memiliki batasan berikut:
- Alat
create_usertidak mendukung pembuatan pengguna autentikasi bawaan dengan sandi. Pengguna hanya dapat dibuat dengan autentikasi IAM. - Jika alat
execute_sqlmenampilkan respons yang lebih besar dari 10 MB, respons tersebut mungkin dipangkas. execute_sql_read_onlyhanya didukung untuk PostgreSQL versi 17 dan yang lebih baru.
Sebelum memulai
- 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.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
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.
Enable the AlloyDB API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. 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.-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init -
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
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.
Enable the AlloyDB API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. 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.-
Instal Google Cloud CLI.
-
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:
gcloud init
Peran yang diperlukan
Untuk mendapatkan izin yang Anda perlukan guna menggunakan server MCP AlloyDB untuk PostgreSQL, minta administrator untuk memberi Anda peran IAM berikut pada project tempat Anda ingin menggunakan server MCP AlloyDB untuk PostgreSQL:
-
Buat instance AlloyDB:
Admin AlloyDB (
roles/alloydb.admin) -
Buat pengguna AlloyDB:
Admin AlloyDB (
roles/alloydb.admin) -
Menjalankan kueri SQL di AlloyDB:
- Admin AlloyDB (
roles/alloydb.admin) - Pengguna Database AlloyDB (
roles/alloydb.databaseUser) (Pengguna Kueri Studio (roles/databasesconsole.studioQueryUser) juga berfungsi)
- Admin AlloyDB (
-
Menjalankan kueri SQL hanya baca di AlloyDB:
- Pelihat AlloyDB (
roles/alloydb.viewer) - Admin AlloyDB (
roles/alloydb.admin) - Pengguna Database AlloyDB (
roles/alloydb.databaseUser)
- Pelihat AlloyDB (
-
Mendapatkan instance AlloyDB atau mencantumkan semua instance AlloyDB dalam project:
Pelihat AlloyDB (
roles/alloydb.viewer) -
Mencantumkan pengguna AlloyDB:
Pelihat AlloyDB (
roles/alloydb.viewer)
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 AlloyDB untuk PostgreSQL. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk menggunakan server MCP AlloyDB untuk PostgreSQL:
-
Lakukan panggilan alat MCP:
mcp.tools.call -
Buat cluster AlloyDB:
alloydb.cluster.create -
Buat pengguna AlloyDB:
alloydb.users.create -
Meng-clone instance AlloyDB:
alloydb.instances.create -
Jalankan kueri SQL pada instance AlloyDB:
-
alloydb.instances.executeSql -
alloydb.instances.login
-
-
Jalankan kueri SQL hanya baca pada instance AlloyDB:
-
alloydb.instances.executeSqlReadOnly -
alloydb.instances.login
-
-
Mendapatkan cluster AlloyDB:
alloydb.instances.get -
Mendapatkan operasi cluster AlloyDB:
alloydb.clusters.get -
Mengimpor data ke cluster AlloyDB:
alloydb.clusters.import -
Mengekspor data dari cluster AlloyDB ke Cloud Storage:
alloydb.clusters.export -
Mencantumkan cluster AlloyDB dalam project:
alloydb.clusters.list -
Mencantumkan pengguna AlloyDB:
alloydb.users.list -
Perbarui cluster AlloyDB:
alloydb.clusters.update -
Perbarui pengguna AlloyDB:
alloydb.users.update
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Autentikasi dan otorisasi
Server MCP jarak jauh AlloyDB untuk PostgreSQL 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 AlloyDB tidak menerima kunci API.
Sebaiknya Anda membuat identitas terpisah untuk agen 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 AlloyDB
OAuth 2.0 menggunakan cakupan dan kredensial untuk menentukan apakah akun utama terautentikasi diizinkan untuk melakukan tindakan tertentu pada resource. Untuk informasi selengkapnya tentang cakupan OAuth 2.0 di Google, baca Menggunakan OAuth 2.0 untuk mengakses Google API.
AlloyDB memiliki cakupan OAuth alat MCP berikut:
| URI cakupan untuk gcloud CLI | Deskripsi |
|---|---|
https://www.googleapis.com/auth/alloydb |
Melihat, mengedit, mengonfigurasi, dan menghapus data Google Cloud AlloyDB Anda, 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 AlloyDB, lihat AlloyDB Admin API.
Mengonfigurasi klien MCP untuk menggunakan server MCP AlloyDB
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 AlloyDB untuk PostgreSQL, masukkan informasi berikut sesuai kebutuhan:
- Nama server: Server MCP AlloyDB untuk PostgreSQL
- URL Server atau Endpoint:
https://alloydb.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 AlloyDB untuk PostgreSQL.
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 AlloyDB untuk PostgreSQL, lihat referensi MCP AlloyDB untuk PostgreSQL.
Alat daftar
Gunakan pemeriksa MCP untuk mencantumkan alat, atau kirim permintaan HTTP tools/list langsung ke server MCP jarak jauh AlloyDB untuk PostgreSQL. Metode tools/list tidak memerlukan autentikasi.
Anda harus memberikan ID string atau numerik—misalnya, 1 atau my-id.
POST /mcp HTTP/1.1
Host: alloydb.googleapis.com
Content-Type: application/json
{
"id": USER_SPECIFIED_ID,
"jsonrpc": "2.0",
"method": "tools/list",
}
Menjalankan SQL
Untuk menjalankan pernyataan SQL, ikuti langkah-langkah berikut:
Tetapkan setelan instance
data_api_accesspada instance AlloyDB ke nilaiALLOW_DATA_API_ACCESS. Saat Anda membuat instance menggunakan alatcreate_instance, konfigurasidata_api_accessakan diaktifkan secara otomatis.Jika konfigurasi
data_api_accesstidak diaktifkan di instance, Anda dapat mengaktifkannya menggunakan perintah curl untuk memperbarui nilai kolomdataApiAccessmenjadiENABLED:curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ https://alloydb.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_ID/instances/INSTANCE_ID?updateMask=dataApiAccess \ -d '{ "dataApiAccess": "ENABLED", }'Ganti kode berikut:
PROJECT_ID: ID Google Cloud project Anda.LOCATION: Region tempat cluster AlloyDB Anda berada.CLUSTER_ID: ID cluster AlloyDB Anda.INSTANCE_ID: ID instance AlloyDB Anda.
Di Gemini CLI, masukkan perintah yang mirip dengan berikut:
Aktifkan autentikasi database IAM pada instance AlloyDB INSTANCE_NAME Pastikan pernyataan SQL menggunakan hak istimewa yang terkait dengan akun pengguna autentikasi database IAM USER_ACCOUNTGanti kode berikut:
INSTANCE_NAME: nama instance AlloyDB.USER_ACCOUNT: akun pengguna IAM yang akan digunakan untuk autentikasi saat mengeksekusi pernyataan SQL.
Kasus penggunaan sampel
Berikut adalah contoh kasus penggunaan untuk server MCP AlloyDB.
Pengembangan aplikasi web
Contoh kasus penggunaan adalah pengembangan aplikasi web yang cepat dan penyediaan instance AlloyDB sebagai database sumbernya. Dalam kasus penggunaan ini, menggunakan server MCP AlloyDB memungkinkan Anda membuat database baru dan mengisinya dengan data awal untuk project baru menggunakan bahasa alami.
Contoh perintah:
"Buat instance pengembangan PostgreSQL AlloyDB baru dan siapkan tabel bernama produk."
Alur kerja: alur kerja untuk menyiapkan aplikasi web mungkin terlihat seperti berikut:
Penyediaan: Agen membuat cluster yang dapat dialokasikan instance-nya. Kemudian, agen memanggil alat
create_instanceuntuk membuat instance AlloyDB baru dengan spesifikasi berukuran lingkungan pengembangan. Anda dapat mengaktifkan konektivitas IP Publik di instance baru. Anda juga dapat mengotomatiskan konfigurasi endpoint Private Service Connect.Verifikasi: Agen menggunakan alat
get_operationuntuk melakukan polling status operasi pembuatan instance.Koneksi: Setelah operasi selesai, agen menggunakan alat
get_instanceuntuk mengambil metadata koneksi instance.Penyiapan skema: Agen membuat database, lalu menggunakan
execute_sqluntuk menjalankan pernyataan SQLCREATE TABLE products.Pengisian data: Agen menggunakan
execute_sqllagi untuk menyisipkan data awal pengisian (DML) ke dalam tabel yang baru dibuat.
Pengelolaan konfigurasi operasional dan database
Dalam contoh kasus penggunaan ini, Anda dapat meninjau instance database yang ada untuk membantu memastikan instance tersebut memenuhi standar konfigurasi operasional. Anda juga dapat menggunakan agen untuk mengelola pengguna database di instance.
Contoh perintah:
"Cantumkan semua instance PostgreSQL di project saya dan tunjukkan detailnya untuk memverifikasi bahwa instance tersebut menggunakan konfigurasi yang sama dan bahwa pengguna database daftar terbaru telah berhasil diupdate."
Alur kerja: alur kerja untuk memeriksa konfigurasi pengguna database dan instance AlloyDB mungkin terlihat seperti berikut.
Penemuan: Agen menggunakan
list_instancesuntuk mengambil daftar semua instance AlloyDB dalam project.Pemeriksaan: Untuk setiap instance yang diidentifikasi, agen memanggil
get_instanceuntuk mengambil metadata konfigurasi mendetail, seperti versi database, region, dan jenis mesin, serta memanggillist_usersuntuk memeriksa pengguna database di instance. Metadata ini mencakup informasi tentang apakah konektivitas IP publik diaktifkan atau apakah endpoint Private Service Connect dikonfigurasi.Pelaporan: Agen merangkum temuan, dengan menandai setiap instance atau pengguna yang menyimpang dari konfigurasi yang diharapkan.
Konfigurasi keamanan dan keselamatan opsional
MCP memperkenalkan risiko dan pertimbangan keamanan baru karena berbagai tindakan yang dapat dilakukan dengan alat MCP. Untuk meminimalkan dan mengelola risiko ini, Google Cloud menawarkan kebijakan default dan yang dapat disesuaikan untuk mengontrol penggunaan alat MCP di Google Cloud organisasi atau project Anda.
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
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.Pilih project tempat Anda ingin mengaktifkan Model Armor.
gcloud
Sebelum memulai, ikuti langkah-langkah berikut menggunakan Google Cloud CLI dengan Model Armor API:
Di konsol Google Cloud , 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.
-
Jalankan perintah berikut untuk menggunakan endpoint API global:
gcloud config set api_endpoint_overrides/modelarmor "https://modelarmor.googleapis.com/"
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.
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 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:
- Entitas utama.
- 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
- Baca dokumentasi referensi MCP AlloyDB.
- Pelajari lebih lanjut server MCP Google Cloud.