Model Context Protocol (MCP) adalah standar terbuka yang memungkinkan model bahasa besar (LLM) berinteraksi secara aman dengan data dan aplikasi eksternal. Server MCP Google Ads menyediakan jembatan standar ke Google Ads API. Alat ini memungkinkan agen AI mengambil dan menganalisis data akun, membuat aset, mengupload video, dan mengelola label menggunakan bahasa alami.
Referensi dan dukungan komunitas
Repositori GitHub: Temukan demo dan contoh, laporkan bug, atau sarankan fitur di repositori google-ads-mcp.
Gunakan tab Issues untuk laporan bug dan permintaan fitur.
Komunitas: Bergabunglah ke saluran
#ads-api-ai-toolsdi Discord Komunitas Google Advertising.
Ringkasan teknis
Mengintegrasikan server MCP Google Ads menghilangkan kebutuhan untuk menulis kode kustom untuk autentikasi Google Ads API, pengambilan resource, penguraian data, dan mutasi aset atau label yang didukung. Server mengekspos alat yang dapat dipanggil dan resource referensi (lihat Kemampuan inti) yang dapat diperiksa dan dipanggil oleh LLM.
Spesifikasi utama
- Protokol: MCP (Model Context Protocol)
- Mode: Baca dan mutasi parsial (pembuatan aset, upload video, dan pengelolaan label dengan validasi usulkan dan konfirmasi, atau mode hanya baca yang dapat dikonfigurasi)
- Bahasa: Python 3.10 atau yang lebih baru
- Transport: Input/output standar (
stdio) atau HTTP yang dapat di-stream (streamable-httpdi Cloud Run) - Autentikasi: Kredensial Default Aplikasi (kredensial pengguna OAuth 2.0 atau akun layanan) untuk
stdiolokal, atau kredensial aplikasi Web OAuth 2.0 untuk HTTP jarak jauh
Cara kerja loop interaksi
- Permintaan: Anda mengirimkan perintah seperti "Bagaimana performa kampanye saya minggu ini?" atau "Buat aset info untuk promo musim panas kami".
- Penemuan: LLM memeriksa alat dan resource yang tersedia, lalu memilih alat
google-ads-mcpyang cocok. - Validasi eksekusi atau uji coba: Alat baca mengkueri Google Ads API secara langsung.
Alat mutasi pertama kali dijalankan dalam mode usulan (
validate_only=True) untuk memvalidasi input tanpa menerapkan perubahan (lihat Alur kerja keamanan usulkan dan konfirmasi). - Injeksi konteks: Server MCP menampilkan hasil kueri terstruktur, atau
entri
change_itemsyang diusulkan dan ringkasan verifikasichecksum, ke jendela konteks LLM. - Respons dan konfirmasi: LLM akan memberikan jawaban atau meminta Anda mengonfirmasi perubahan yang diusulkan. Setelah Anda menyetujui, LLM akan memanggil alat mutasi
lagi dengan
validate_only=Falsedan nilaichecksumyang cocok untuk melakukan perubahan.
Mulai
Ikuti langkah-langkah berikut untuk mengonfigurasi dan menjalankan server MCP Google Ads secara lokal. Untuk men-deploy layanan jarak jauh bersama, lihat Deployment di Google Cloud.
Prasyarat
Sebelum mengonfigurasi server, selesaikan prasyarat berikut di lingkungan lokal Anda dan Konsol Google Cloud:
- Project Google Cloud: Buat atau pilih project Google Cloud dengan Google Ads API diaktifkan. Mengaktifkan API akan memberikan Akses pengujian untuk menguji alur kerja baca dan mutasi terhadap akun pengujian. Untuk mengakses akun produksi, periksa halaman ringkasan Google Ads API untuk mengetahui akses Explorer, Dasar, atau akses standar, atau ajukan permohonan untuk salah satu tingkat akses ini. Jika tidak, panggilan produksi akan gagal dengan
error
AuthorizationError.CLOUD_PROJECT_NOT_APPROVED_FOR_PRODUCTION. Google akan menghentikan token developer (GOOGLE_ADS_DEVELOPER_TOKEN) pada 9 September 2026. Project Google Cloud yang memiliki klien OAuth atau akun layanan Anda menentukan tingkat akses API Anda. - Kredensial: Mode
stdiolokal melakukan autentikasi dengan Kredensial Default Aplikasi (ADC) dari file JSON rahasia klien OAuth 2.0 atau akun layanan di project Cloud Anda. Tetapkan variabel lingkunganGOOGLE_CLOUD_PROJECTjika diperlukan untuk menentukan kuota default atau project ADC Anda. Deploymentstreamable-httpjarak jauh memerlukan Client ID dan Rahasia klien aplikasi Web OAuth 2.0 (lihat Men-deploy ke Google Cloud Run). - Software lokal (untuk mode
stdio): Instal Python 3.10 atau yang lebih baru,pipx, dan alat command linegcloud(digunakan untuk membuat file ADC pengguna).
Konfigurasi
Buat Kredensial Default Aplikasi (ADC) menggunakan klien OAuth dari project Google Cloud yang mendukung API dan sertakan cakupan Google Ads API:
gcloud auth application-default login \ --scopes=https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform \ --client-id-file=PATH_TO_CLIENT_SECRET_JSONGanti kode berikut:
PATH_TO_CLIENT_SECRET_JSON: jalur ke file JSON rahasia klien OAuth 2.0 Anda.
Perintah ini mencetak
Credentials saved to file: [PATH_TO_CREDENTIALS_JSON](seperti~/.config/gcloud/application_default_credentials.jsondi Linux dan macOS). Untuk melakukan autentikasi dengan akun layanan, lewati langkah ini dan arahkanGOOGLE_APPLICATION_CREDENTIALSke file JSON kunci akun layanan Anda, atau teruskan--impersonate-service-accountkegcloud auth application-default login.Tambahkan server ke file konfigurasi MCP host Anda (seperti
~/.gemini/config/mcp_config.json,~/.gemini/settings.json, atau~/.claude/settings.json):{ "mcpServers": { "google-ads-mcp": { "command": "pipx", "args": [ "run", "--spec", "google-ads-mcp==0.0.6", "google-ads-mcp" ], "env": { "GOOGLE_CLOUD_PROJECT": "PROJECT_ID", "GOOGLE_APPLICATION_CREDENTIALS": "PATH_TO_CREDENTIALS_JSON" } } } }Ganti kode berikut:
PROJECT_ID: Project ID Google Cloud Anda.PATH_TO_CREDENTIALS_JSON: jalur ke file JSON ADC yang dicetak di langkah 1, atau ke file JSON kunci akun layanan Anda. Anda dapat menghilangkanGOOGLE_APPLICATION_CREDENTIALSsaat menggunakan lokasi file ADCgclouddefault.
Untuk mengakses akun klien melalui akun pengelola, tetapkan
GOOGLE_ADS_LOGIN_CUSTOMER_ID(10 digit, tanpa tanda hubung) dienv, atau teruskan parameterlogin_customer_idpada panggilan alat individual.
Opsional: Lengkapi agen Anda dengan keterampilan dan Developer Assistant
Server MCP Google Ads memberi klien AI Anda akses langsung ke data pelaporan akun beserta alat pembuatan aset, upload video, dan pengelolaan label. Gabungkan server MCP dengan alat pendamping berikut untuk membantu agen Anda membuat kueri Google Ads Query Language (GAQL) yang valid dan mendiagnosis perubahan performa akun. Alat ini juga menghasilkan kode library klien, seperti skrip untuk menautkan aset yang dibuat ke kampanye atau melakukan mutasi lain yang tidak didukung:
Kemampuan agen Google Ads API: Modul alur kerja portabel (termasuk
google-ads-api-mcp-setup,google-ads-api-account-diagnostics, dangoogle-ads-api-quickstart) yang membantu agen Anda menggunakan server MCP Google Ads dengan overhead token yang lebih rendah. Jalankan perintah berikut untuk menginstalnya (memerlukan Node.js), atau lihat panduan kemampuan agen Google Ads API untuk penyiapan Antigravity, Claude Code, Codex, dan Cursor:npx skills add google/skills/skills/adsAsisten Developer Google Ads API: Plugin modular untuk Google Antigravity dan Claude Code yang menyediakan pemeriksaan skema Protobuf lokal, validasi GAQL, pembuatan kode library klien, dan pemecahan masalah konversi offline. Baca Apa yang dimaksud dengan Asisten Developer Google Ads API? atau ikuti panduan penginstalan.
Kemampuan inti
Bagian berikut menjelaskan alat baca, alat mutasi parsial,
dan resource referensi server. Mulai v0.0.6, alat akan didaftarkan secara default dengan
awalan namespace kategorinya (seperti search_search). Saat mengupgrade
perintah atau daftar yang diizinkan dari rilis tanpa awalan, perbarui nama alat atau tetapkan
awalan kosong ("") di tools_config.yaml (lihat Mengonfigurasi namespace alat dan
mode hanya baca).
Alat baca
customers_list_accessible_customers(alatlist_accessible_customers): Menampilkan ID pelanggan Google Ads yang dapat diakses langsung oleh pengguna yang diautentikasi.search_search(alatsearch): Mem-build dan menjalankan kueri GAQLSearchStreamdari parameter terstruktur (customer_id,resource, danfields, plusconditions,orderings,limit, danlogin_customer_idopsional), bukan string GAQL mentah. Setiap kueri menambahkanPARAMETERS omit_unselected_resource_names=trueuntuk mengambil atribut, metrik, segmen, anggaran, dan status resource dengan jelas.metadata_get_resource_metadata(alatget_resource_metadata): Mengambil atribut, metrik, dan segmen yang dapat dipilih, difilter, dan diurutkan untuk jenis resource Google Ads API (misalnya,"campaign"). Gunakan metadata ini untuk menemukan kolom kueri yang valid—termasuk metrik dan segmen yang ditambahkan dalam rilis minor seperti v26.2—sebelum memanggil alatsearch_search.
Alat mutasi (dukungan parsial)
assets_create_asset(alatcreate_asset): Membuat aset Google Ads mandiri dengan parameter khusus untuk jenis asetTEXT,IMAGE,YOUTUBE_VIDEO,SITELINK,CALLOUT, danSTRUCTURED_SNIPPET. Teruskan kamusextra_paramsuntuk jenisAssetServiceyang dapat diubah lainnya (sepertiPRICE,PROMOTION,CALL, atauBUSINESS_MESSAGE), dan sertakanfinal_urlstingkat root bersamasitelink_link_textuntuk asetSITELINK. Jalur file lokal (image_asset_path) hanya berfungsi dalam modestdiolokal. Untuk deployment HTTP jarak jauh, teruskan parameterimage_asset_databerenkode base64 denganimage_asset_mime_typeyang ditetapkan keIMAGE_PNG,IMAGE_JPEG, atauIMAGE_GIF(hingga 20 MB).assets_upload_video_asset(alatupload_video_asset): Mengupload file video lokal (.3gp,.avi,.flv,.mkv,.mov,.mp4,.mpeg,.mpg,.ogg,.webm, atau.wmv) ke YouTube melalui Google Ads API hanya dalam modestdiolokal.video_titledanvideo_descriptionadalah parameter wajib, dan privasi ditetapkan secara default keUNLISTED(atauPUBLICdi channel brand milik pengiklan dengan OAuth pengguna). Alat ini menampilkan nilaivideo_upload_id(dan nama resource) Google Ads, bukanvideo_idYouTube yang berisi 11 karakter. Buat kueriyou_tube_video_uploaddengan alatsearch_search(pemfilteran menurutyou_tube_video_upload.video_upload_id) hinggayou_tube_video_upload.state = 'PROCESSED'. Kemudian, teruskanyou_tube_video_upload.video_idsebagai parameteryoutube_video_idkeassets_create_asset(asset_type="YOUTUBE_VIDEO").labels_manage_labels(alatmanage_labels): Membuat, memperbarui, dan menghapus label akun, termasuk nama, deskripsi, dan warna latar belakang hex.labels_manage_label_associations(alatmanage_label_associations): Mendukung operasi pengaitan labelCREATEdanREMOVE(UPDATEtidak didukung) pada resourceCAMPAIGN,CUSTOMER,AD_GROUP, danAD_GROUP_CRITERION. Untuk resourceCUSTOMER,resource_idbersifat opsional dan ditetapkan secara default kecustomer_id. Teruskan ID{ad_group_id}~{criterion_id}gabungan untuk resourceAD_GROUP_CRITERION, dan hapus pengaitan dengan meneruskanresource_iddanlabel_idatauassociation_resource_name. LabelAD_GROUP_ADtingkat iklan tidak didukung.
Referensi referensi
Server mengekspos empat resource MCP hanya baca yang tetap terpasang, terlepas dari setelan tools_config.yaml Anda:
resource://discovery-document: Ringkasan penemuan REST JSON untuk resource, metode layanan, dan skema Google Ads API. Alat ini melengkapi alatmetadata_get_resource_metadata, yang menampilkan kolom kueri GAQL yang dapat dipilih, difilter, dan diurutkan.resource://metrics: Dokumentasi referensi HTML untuk metrik Google Ads API.resource://segments: Dokumentasi referensi HTML untuk segmen Google Ads API.resource://release-notes: Catatan rilis Google Ads API HTML yang mencakup perubahan versi dan fitur baru.
Alur kerja keamanan usulkan dan konfirmasi
Setiap alat mutasi (assets_create_asset, assets_upload_video_asset,
labels_manage_labels, dan labels_manage_label_associations) menerapkan
alur kerja usulkan dan konfirmasi dua langkah untuk membantu mencegah modifikasi akun
yang tidak diinginkan:
- Propose (
validate_only=True, default): Memvalidasi input tanpa melakukan perubahan. Alat aset dan label menjalankan uji cobavalidate_onlyGoogle Ads API secara langsung. KarenaYouTubeVideoUploadServicetidak memiliki mode uji coba,assets_upload_video_assetakan memvalidasi file lokal dan mengikat ukuran serta stempel waktu modifikasinya. Setiap alat menampilkan entrichange_itemsyang dapat dibaca manusia dan ringkasanchecksumSHA-256 stateless yang terikat ke parametercustomer_iddan payload permintaan. - Konfirmasi (
validate_only=False): Setelah menampilkan daftarchange_itemsdan menerima persetujuan Anda, agen akan memanggil alat lagi denganvalidate_only=False, parameter dan argumencustomer_idyang identik, dan nilaichecksumdari langkah 1. Server akan menolak checksum yang tidak ada atau tidak cocok sebelum mengubah akun.
Mengonfigurasi namespace alat dan mode hanya baca
Server memaketkan file tools_config.yaml default dengan kelima kategori alat (customers, search, metadata, labels, dan assets) diaktifkan.
Sesuaikan tools_config.yaml untuk mengaktifkan atau menonaktifkan alat atau namespace tertentu secara selektif, mengubah atau menghapus awalan namespace, atau menerapkan deployment hanya baca yang ketat.
Saat memulai, server akan me-resolve tools_config.yaml dalam urutan berikut:
- Jalur eksplisit dalam variabel lingkungan
GOOGLE_ADS_MCP_TOOLS_CONFIG(direkomendasikan untuk hoststdiolokal, yang direktori kerjanya dapat berbeda dari folder project Anda). - File
tools_config.yamldi direktori kerja server saat ini. - File
tools_config.yamldefault yang dipaketkan dengan paket.
Jika GOOGLE_ADS_MCP_TOOLS_CONFIG mengarah ke file yang tidak ada, atau jika file konfigurasi yang di-resolve tidak valid, server akan memunculkan error saat memulai, bukan kembali ke setelan default.
File tools_config.yaml minimal berikut menerapkan deployment yang benar-benar hanya baca:
namespaces:
customers: true
search: true
metadata: true
labels: false
assets: false
File tools_config.yaml berikut menyesuaikan awalan dan memfilter setiap alat (misalnya, mengekspos alat create_asset base64 di Cloud Run sekaligus menonaktifkan alat upload_video_asset khusus lokal):
namespaces:
# Default prefix ("customers_list_accessible_customers")
customers: true
# Empty prefix mounts unprefixed tool names ("search")
search: ""
# Custom prefix ("schema_get_resource_metadata")
metadata: "schema"
# Enable only specific tools in a multi-tool category
assets:
enabled_tools:
- create_asset
Contoh perintah untuk memulai
Coba perintah berikut di klien MCP Anda setelah menghubungkan server.
Menanyakan apa yang dapat dilakukan server
What can the google-ads-mcp server do?
Bertanya tentang pelanggan
What customers do I have access to?
Tanyakan tentang kampanye
How many active campaigns do I have?
How is my campaign performance this week?
Give me a report of the top spending campaigns split by device category over the last 7 days for account 1234567890
Membuat aset, mengupload video, dan mengelola label
Create a callout asset with the text "Free Shipping" for account 1234567890
Upload /path/to/promo.mp4 with title "Summer Sale" and description "Summer promo video" for account 1234567890
Create a label named "Q4 Promo" with background color #34A853 and apply it to campaign 9876543210 in account 1234567890
Deployment di Google Cloud
Untuk membagikan server MCP ke beberapa agen atau menjalankannya sebagai layanan web, hosting server tersebut di Google Cloud Run atau penyedia infrastruktur cloud lainnya, bukan menjalankannya secara lokal.
Prasyarat
- Project Google Cloud dengan Google Ads API diaktifkan (lihat Prasyarat untuk persyaratan akses produksi).
Alat command line
gclouddiinstal, diautentikasi, dan dikonfigurasi dengan project aktif:gcloud config set project PROJECT_IDGanti kode berikut:
PROJECT_ID: Project ID Google Cloud Anda.
Membangun dan mengirim image Docker
Gunakan Cloud Build untuk membangun dan mengirim image container ke Artifact Registry tanpa menginstal Docker secara lokal:
Buat repositori di Artifact Registry:
gcloud artifacts repositories create mcp-servers \ --repository-format=docker --location=us-central1Bangun dan kirim image dari tag rilis di repositori GitHub (atau dari
.di checkout lokal jika Anda menyesuaikanDockerfileatautools_config.yaml):gcloud builds submit https://github.com/googleads/google-ads-mcp \ --git-source-revision=v0.0.6 \ --tag=us-central1-docker.pkg.dev/PROJECT_ID/mcp-servers/google-ads-mcp:v0.0.6Ganti kode berikut:
PROJECT_ID: Project ID Google Cloud Anda.
Bangun ulang dan deploy ulang image setiap kali Anda mengupdate
google-ads-mcpatau mengupgrade library klien Pythongoogle-adsyang dipaketkan untuk rilis Google Ads API baru (seperti v26.2).
Men-deploy ke Google Cloud Run
Konfigurasikan variabel lingkungan dan secret berikut untuk layanan Cloud Run Anda:
GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: Client ID Aplikasi web OAuth 2.0 dari project Google Cloud yang mendukung API untuk autentikasi OAuth tingkat aplikasi. Selesaikan langkah-langkah konfigurasi OAuth berikut:- Tambahkan URI pengalihan yang diizinkan untuk klien AI yang ingin Anda hubungkan (seperti
https://claude.ai/api/mcp/auth_callback,https://chatgpt.com/connector_platform_oauth_redirect, atauhttps://antigravity.google/oauth-callback). - Tambahkan cakupan
https://www.googleapis.com/auth/adwordske layar izin OAuth di bagian APIs & Services > OAuth consent screen > Data Access (Add or remove scopes). - Jika status publikasi layar izin OAuth Anda ditetapkan ke Pengujian (default), tambahkan Akun Google yang terhubung ke server MCP sebagai Pengguna pengujian di bagian APIs & Services > OAuth consent screen > Audience (Test users > + Add users).
- Tambahkan URI pengalihan yang diizinkan untuk klien AI yang ingin Anda hubungkan (seperti
GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: Rahasia Klien OAuth yang sesuai dengan Client ID OAuth Anda.GOOGLE_ADS_MCP_BASE_URL: URL dasar publik server MCP Anda (misalnya,https://google-ads-mcp-xyz-uc.a.run.app). Cloud Run menetapkan URL ini selama deployment awal, jadi deploy tanpa variabel ini terlebih dahulu dan update layanan setelahnya.GOOGLE_ADS_MCP_JWT_SIGNING_KEY(direkomendasikan untuk Cloud Run multi-instance): Secret persisten yang menandatangani JWT FastMCP di seluruh mulai ulang container dan penskalaan horizontal.GOOGLE_ADS_MCP_STORAGE_TYPE(direkomendasikan untuk Cloud Run multi-instance): Backend persisten untuk pendaftaran dan token klien OAuth (redisdenganGOOGLE_ADS_MCP_STORAGE_REDIS_URL, ataufirestore). Karenav0.0.6Dockerfilestandar hanya menginstal backend dalam memori, instalpy-key-value-aio[redis]atau.[firestore]diDockerfilekustom terlebih dahulu. Penggunaanfirestorejuga memerlukan database Firestore dan peran IAMroles/datastore.userdi akun layanan Cloud Run. Untuk pengujian instance tunggal dengan penyimpanan dalam memori, teruskan--max-instances=1.GOOGLE_ADS_LOGIN_CUSTOMER_ID(opsional): ID pelanggan pengelola 10 digit default (tanpa tanda hubung) yang digunakan saat panggilan alat menghilangkan parameterlogin_customer_id.GOOGLE_ADS_MCP_TOOLS_CONFIG(opsional): Jalur container ke filetools_config.yamlkustom (misalnya, dipasang dari Secret Manager di/etc/mcp/tools_config.yamluntuk menerapkan mode hanya baca tanpa membangun ulang image). Lihat Mengonfigurasi namespace alat dan mode hanya baca.
Simpan GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET dan GOOGLE_ADS_MCP_JWT_SIGNING_KEY
di Secret Manager dan deploy layanan ke Google Cloud Run:
gcloud run deploy google-ads-mcp \
--image=us-central1-docker.pkg.dev/PROJECT_ID/mcp-servers/google-ads-mcp:v0.0.6 \
--platform=managed \
--region=us-central1 \
--allow-unauthenticated \
--set-env-vars="GOOGLE_ADS_MCP_OAUTH_CLIENT_ID=CLIENT_ID" \
--set-secrets="GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=MCP_OAUTH_CLIENT_SECRET:latest,GOOGLE_ADS_MCP_JWT_SIGNING_KEY=MCP_JWT_SIGNING_KEY:latest"
Setelah Cloud Run menyelesaikan deployment, ambil URL layanan yang ditetapkan dan
perbarui layanan dengan variabel lingkungan GOOGLE_ADS_MCP_BASE_URL:
gcloud run services update google-ads-mcp \
--region=us-central1 \
--update-env-vars="GOOGLE_ADS_MCP_BASE_URL=https://CLOUD_RUN_SERVICE_URL"
Ganti kode berikut:
PROJECT_ID: Project ID Google Cloud Anda.CLIENT_ID: Client ID aplikasi Web OAuth 2.0 Anda.MCP_OAUTH_CLIENT_SECRET: nama secret Secret Manager yang menyimpan rahasia Klien OAuth 2.0 Anda.MCP_JWT_SIGNING_KEY: nama secret Secret Manager yang menyimpan kunci penandatanganan JWT Anda.CLOUD_RUN_SERVICE_URL: nama host yang ditetapkan ke layanan Cloud Run Anda (misalnya,google-ads-mcp-xyz-uc.a.run.app).
Model autentikasi dan keamanan
Men-deploy dengan --allow-unauthenticated akan menonaktifkan pemeriksaan IAM infrastruktur Cloud Run (roles/run.invoker) sehingga klien AI eksternal dapat terhubung tanpa token akun layanan Google Cloud. Autentikasi didelegasikan ke lapisan aplikasi:
- Jika
GOOGLE_ADS_MCP_OAUTH_CLIENT_IDdanGOOGLE_ADS_MCP_OAUTH_CLIENT_SECRETditetapkan, server akan menerapkan Google OAuth 2.0 pada setiap permintaan dan menampilkan kode status HTTP401 Unauthorizedkepada pemanggil yang tidak diautentikasi. Setiap panggilan alat dijalankan di bawah identitas OAuth pemanggil yang diautentikasi. - Jika
--allow-unauthenticateddihilangkan, pemanggil harus meneruskan token identitas OIDC Google Cloud dengan setiap permintaan. Klien AI standar (seperti Claude dan ChatGPT) menggunakan OAuth pengguna akhir, bukan token Google Cloud IAM, sehingga koneksi langsung memerlukan--allow-unauthenticatedyang dipasangkan dengan OAuth tingkat aplikasi.
Mengonfigurasi klien MCP
Setelah deployment, konfigurasikan klien MCP Anda dengan URL layanan Cloud Run. Karena server menerapkan OAuth 2.0, klien Anda harus mendukung alur OAuth MCP atau menyediakan token pemilik yang diotorisasi:
- Klien yang mendukung OAuth: Di klien yang mendukung penemuan OAuth MCP (seperti
Antigravity), menghubungkan akan memicu dialog login Google untuk memberikan
cakupan
https://www.googleapis.com/auth/adwords(ditampilkan sebagai.../auth/adwordsdi Konsol Google Cloud). - Platform AI pihak ketiga (Claude, ChatGPT): Di setelan konektor klien, tambahkan konektor kustom yang mengarah ke URL layanan Anda dengan jalur
/mcp(misalnya,https://google-ads-mcp-xyz-uc.a.run.app/mcp). Pilih autentikasi OAuth 2.0 dengan Client ID dan Rahasia klien OAuth Anda, dan pastikan URI callback klien ada di URI pengalihan yang diizinkan klien OAuth Anda. - Klien tanpa dukungan OAuth: Klien yang tidak mendukung alur OAuth HTTP akan menerima kode status HTTP
401 Unauthorized. Untuk klien tersebut, gunakan konfigurasi stdio lokal.
Contoh berikut mengonfigurasi alat command line gemini di
~/.gemini/settings.json (untuk Google Antigravity di
~/.gemini/config/mcp_config.json, ganti "httpUrl" dengan "serverUrl" atau
"url"):
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://CLOUD_RUN_SERVICE_URL/mcp"
}
}
}
Ganti kode berikut:
CLOUD_RUN_SERVICE_URL: nama host yang ditetapkan ke layanan Cloud Run Anda (misalnya,google-ads-mcp-xyz-uc.a.run.app).
Langkah berikutnya
- Menginstal kemampuan agen Google Ads API
- Pelajari Asisten Developer Google Ads API
- Menginstal dan menggunakan Google Ads API Developer Assistant