Model Context Protocol (MCP) הוא תקן פתוח שמאפשר למודלים גדולים של שפה (LLM) ליצור אינטראקציה מאובטחת עם נתונים ואפליקציות חיצוניים. שרת ה-MCP של Google Ads מספק גשר סטנדרטי ל-Google Ads API, שמאפשר לסוכני AI לנתח ולאחזר נתוני קמפיינים באמצעות שפה טבעית.
משאבים ותמיכה מהקהילה
מאגר GitHub: אפשר למצוא הדגמות ודוגמאות, לדווח על באגים או להציע תכונות במאגר google-ads-mcp.
אפשר להשתמש בכרטיסייה 'בעיות' כדי לדווח על באגים ולשלוח בקשות להוספת תכונות.
קהילה: אפשר להצטרף לערוץ
#ads-api-ai-toolsב-Discord של קהילת הפרסום של Google.
סקירה כללית טכנית
הטמעה של שרת MCP מבטלת את הצורך בכתיבת קוד מותאם אישית לחיבור בין מערכות שונות לצורך אימות של Google Ads API, אחזור משאבים וניתוח נתונים. השרת חושף כלים ספציפיים שמודל LLM יכול לגלות ולהפעיל באופן אוטונומי.
מפרטים חשובים
- פרוטוקול: MCP (Model Context Protocol)
- מצב: קריאה בלבד (הגרסה הנוכחית)
- שפה: Python
- העברה: קלט/פלט רגיל (
stdio) - אימות: OAuth 2.0 או חשבון שירות
איך פועל לולאת האינטראקציה
- בקשה: משתמש שולח שאילתה כמו "מהם ביצועים ברמת הקמפיין שלי השבוע?".
- גילוי: מודל ה-LLM בודק את הכלים הזמינים לו ומזהה את יכולות החיפוש של
google-ads-mcp. - ביצוע: שרת ה-MCP מריץ את הלוגיקה הבסיסית של Python כדי לשלוח שאילתה ל-Google Ads API.
- הזרקת הקשר: תוצאות מובנות מוחזרות לחלון ההקשר של מודל ה-LLM.
- תשובה: מודל ה-LLM מסנתז את הנתונים לתשובה שקריאה לאנשים.
שנתחיל?
כדי להגדיר את שרת ה-MCP של Google Ads ולהשתמש בו, צריך לפעול לפי השלבים הבאים.
דרישות מוקדמות
לפני ההגדרה, צריך לוודא שיש לכם את פרטי הכניסה הבאים ממסוף המפתחים של Google Ads:
- קוד מפתח: מחרוזת הגישה הייחודית שלכם באורך 22 תווים.
- מזהה הפרויקט: מזהה הפרויקט שלכם ב-Google Cloud.
- פרטי כניסה של OAuth: זוג של מזהה לקוח וסוד לקוח ב-OAuth2, או קבוצה של פרטי כניסה שמוגדרים כברירת מחדל באפליקציה.
הגדרות אישיות
כדי לשלב את השרת במארח שתואם ל-MCP, מוסיפים את הרשומה הבאה לקובץ התצורה של ה-MCP במארח, כמו settings.json. במסמכי העזרה של המארח מוסבר איפה בדיוק נמצא קובץ ההגדרה ומה שם הקובץ.
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"
}
}
}
}
פריסה ב-Google Cloud
במקום לארח את שרת ה-MCP הזה באופן מקומי, אתם יכולים לארח אותו ב-Google Cloud Run או בכל תשתית אחרת מבוססת-ענן. האפשרות הזו שימושית אם רוצים לשתף את השרת בין סוכנים שונים או להפעיל אותו כשירות אינטרנט.
דרישות מוקדמות
- פרויקט ב-Google Cloud.
כלי שורת הפקודה
gcloudמותקן, מאומת ומוגדר עם פרויקט פעיל:gcloud config set project YOUR_PROJECT_ID
יצירה והעברה בדחיפה של קובץ אימג' של Docker
אפשר להשתמש ב-Cloud Build כדי ליצור את קובץ האימג' ולהעביר אותו בדחיפה ל-Artifact Registry בלי להתקין את Docker באופן מקומי.
יוצרים מאגר ב-Artifact Registry:
gcloud artifacts repositories create mcp-servers --repository-format=docker --location=us-central1בנייה ושליחה של התמונה:
gcloud builds submit --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/mcp-servers/google-ads-mcp:latest .הערה: צריך לבצע את השלב הזה בכל פעם שרוצים לעדכן את השרת הפרוס לגרסה העדכנית.
פריסה ב-Google Cloud Run
מקפידים להגדיר את משתני הסביבה הנדרשים:
GOOGLE_PROJECT_ID: מזהה הפרויקט ב-Google Cloud.-
GOOGLE_ADS_DEVELOPER_TOKEN: קוד המפתח שבו רוצים ששרת ה-MCP ישתמש. -
GOOGLE_ADS_MCP_OAUTH_CLIENT_ID: מזהה הלקוח של OAuth שבו רוצים שהשרת של MCP ישתמש. -
GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: סוד הלקוח של OAuth שבו אתם רוצים ששרת ה-MCP ישתמש. -
GOOGLE_ADS_MCP_BASE_URL: כתובת ה-URL הבסיסית שדרכה אפשר לגשת לשרת ה-MCP שלכם: המערכת של Google Cloud Run תקצה אותה באופן אוטומטי אחרי הפריסה הראשונה. אפשר לעדכן את משתני הסביבה אחרי הפריסה. -
FASTMCP_HOST: מגדירים את הערך הזה ל-0.0.0.0 כדי לאפשר ל-FastMCP לקבל חיבורים מכל כתובות ה-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"
הגדרת לקוח ה-MCP
אחרי הפריסה, מעדכנים את הגדרות הלקוח של MCP (לדוגמה, ~/.gemini/settings.json) כך שישתמש בכתובת ה-URL של Cloud Run.
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
}
}
}
יכולות ליבה (כלים)
השרת חושף כלים שנועדו לגלות חשבונות ולדווח על ביצועים:
-
list_accessible_customers: מחזירה את רשימת מספרי הלקוחות ב-Google Ads ושמות החשבונות שהמשתמש המאומת יכול לגשת אליהם. -
search: מריץ בקשות של Google Ads Query Language (GAQL) כדי לאחזר מדדי משאבים, תקציבים וסטטוסים.
get_resource_metadata: אחזור מטא-נתונים לגבי סוג משאב ב-Google Ads API, לדוגמה campaign.המידע הזה שימושי כדי להבין את מבנה הנתונים ואילו שדות זמינים לשליחת שאילתות.
הנחיות לדוגמה להתחלה
לשאול מה השרת יכול לעשות:
What can the google-ads-mcp server do?
שאלות על לקוחות:
What customers do I have access to?
שאלות לגבי קמפיינים:
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