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, yang memungkinkan agen AI menganalisis dan mengambil data kampanye menggunakan bahasa alami.
Dukungan dan sumber daya komunitas
Repositori GitHub: Temukan demo, contoh, dan laporkan bug atau sarankan fitur di repositori google-ads-mcp.
Gunakan tab Masalah untuk laporan bug dan permintaan fitur.
Komunitas: Bergabunglah dengan channel
#ads-api-ai-toolsdi Discord Komunitas Iklan Google.
Ringkasan teknis
Dengan menerapkan server MCP ini, Anda tidak perlu menulis "kode penghubung" kustom untuk autentikasi Google Ads API, pengambilan resource, dan parsing data. Server mengekspos alat tertentu yang dapat ditemukan dan dipanggil LLM secara mandiri.
Spesifikasi utama
- Protokol: MCP (Model Context Protocol)
- Mode: Hanya baca (rilis saat ini)
- Bahasa: Python
- Transportasi: Input/output standar (
stdio) - Autentikasi: OAuth 2.0 atau akun layanan
Cara kerja loop interaksi
- Permintaan: Pengguna mengirimkan kueri seperti "Bagaimana performa kampanye saya minggu ini?".
- Penemuan: LLM memeriksa alat yang tersedia dan mengidentifikasi kemampuan penelusuran
google-ads-mcp. - Eksekusi: Server MCP menjalankan logika Python yang mendasarinya untuk membuat kueri Google Ads API.
- Penyisipan konteks: Hasil terstruktur ditampilkan ke jendela konteks LLM.
- Respons: LLM menyintesis data menjadi jawaban yang dapat dibaca manusia.
Mulai
Ikuti langkah-langkah berikut untuk mengonfigurasi dan menggunakan server MCP Google Ads.
Prasyarat
Sebelum melakukan konfigurasi, pastikan Anda memiliki kredensial berikut dari konsol Developer Google Ads:
- Token developer: String akses 22 karakter unik Anda.
- Project ID: ID project Google Cloud Anda.
- Kredensial OAuth: Pasangan Client ID/Rahasia klien OAuth2, atau serangkaian kredensial default aplikasi.
Konfigurasi
Untuk mengintegrasikan server ke host yang kompatibel dengan MCP, tambahkan entri berikut ke file konfigurasi MCP host Anda, seperti settings.json. Lihat dokumentasi host Anda untuk mengetahui lokasi dan nama file konfigurasi ini yang tepat.
JSON
{
"mcpServers": {
"google-ads-mcp": {
"command": "pipx",
"args": [
"run",
"--spec",
"git+https://github.com/googleads/google-ads-mcp.git",
"google-ads-mcp"
],
"env": {
"GOOGLE_PROJECT_ID": "YOUR_PROJECT_ID",
"GOOGLE_ADS_DEVELOPER_TOKEN": "YOUR_DEVELOPER_TOKEN"
}
}
}
}
Deployment di Google Cloud
Daripada menghosting server MCP ini secara lokal, Anda dapat menghostingnya di Google Cloud Run atau di infrastruktur berbasis cloud lainnya. Hal ini berguna jika Anda ingin membagikan server ke berbagai agen atau menjalankannya sebagai layanan web.
Prasyarat
- Project Google Cloud.
Alat command line
gcloudterinstal, diautentikasi, dan project aktif dikonfigurasi:gcloud config set project YOUR_PROJECT_ID
Membangun dan mengirim image Docker
Anda dapat menggunakan Cloud Build untuk membangun dan mengirim image ke Artifact Registry tanpa perlu menginstal Docker secara lokal.
Buat repositori di Artifact Registry:
gcloud artifacts repositories create mcp-servers --repository-format=docker --location=us-central1Buat dan kirimkan gambar:
gcloud builds submit --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest .Perhatikan bahwa langkah ini harus dilakukan setiap kali Anda ingin mengupdate server yang di-deploy ke versi terbaru.
Deploy ke Google Cloud Run
Pastikan untuk menyetel variabel lingkungan yang diperlukan:
GOOGLE_PROJECT_ID: ID project Google Cloud Anda.GOOGLE_ADS_DEVELOPER_TOKEN: Token developer yang ingin Anda gunakan oleh server MCP.GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: Client ID OAuth yang ingin digunakan server MCP.GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: Rahasia Klien OAuth yang ingin digunakan server MCP.GOOGLE_ADS_MCP_BASE_URL: URL dasar tempat server MCP Anda dapat diakses: URL ini akan otomatis ditetapkan oleh Google Cloud Run setelah deployment pertama Anda. Anda dapat mengupdate variabel lingkungan setelah deployment.FASTMCP_HOST: Setel ini ke 0.0.0.0 agar FastMCP dapat menerima koneksi dari semua alamat IP.
gcloud run deploy google-ads-mcp \
--image us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest \
--platform managed \
--region us-central1 \
--allow-unauthenticated \
--set-env-vars="GOOGLE_PROJECT_ID=YOUR_PROJECT_ID,GOOGLE_ADS_DEVELOPER_TOKEN=YOUR_DEVELOPER_TOKEN,GOOGLE_ADS_MCP_OAUTH_CLIENT_ID=YOUR_CLIENT_ID,GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=YOUR_CLIENT_SECRET,GOOGLE_ADS_MCP_BASE_URL=YOUR_BASE_URL,FASTMCP_HOST=0.0.0.0"
Mengonfigurasi klien MCP
Setelah deployment, perbarui konfigurasi klien MCP (misalnya,
~/.gemini/settings.json) untuk menggunakan URL Cloud Run.
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
}
}
}
Kemampuan inti (alat)
Server ini mengekspos alat yang dirancang untuk penemuan akun dan pelaporan performa:
list_accessible_customers: Menampilkan daftar ID pelanggan Google Ads dan nama akun yang dapat diakses oleh pengguna yang diautentikasi.search: Mengeksekusi permintaan Google Ads Query Language (GAQL) untuk mengambil metrik, anggaran, dan status resource.get_resource_metadata: Mengambil metadata tentang jenis resource Google Ads API, misalnya "kampanye".Hal ini berguna untuk memahami struktur data dan kolom apa yang tersedia untuk kueri.
Contoh perintah untuk memulai
Tanyakan apa yang dapat dilakukan server:
What can the google-ads-mcp server do?
Tanyakan 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