Model Context Protocol (MCP) เป็นมาตรฐานแบบเปิดที่ช่วยให้โมเดลภาษาขนาดใหญ่ (LLM) โต้ตอบกับข้อมูลและแอปพลิเคชันภายนอกได้อย่างปลอดภัย เซิร์ฟเวอร์ MCP ของ Google Ads เป็นสะพานเชื่อมมาตรฐานไปยัง Google Ads API ซึ่งช่วยให้ AI Agent วิเคราะห์และดึงข้อมูลแคมเปญโดยใช้ภาษาธรรมชาติได้
แหล่งข้อมูลและการสนับสนุนจากชุมชน
ที่เก็บ GitHub: ดูเดโม ตัวอย่าง และรายงานข้อบกพร่องหรือแนะนำฟีเจอร์ในที่เก็บ google-ads-mcp
ใช้แท็บปัญหาเพื่อรายงานข้อบกพร่องและส่งคำขอฟีเจอร์
ชุมชน: เข้าร่วมช่อง
#ads-api-ai-toolsใน Discord ของชุมชนการโฆษณาของ Google
ภาพรวมทางเทคนิค
การใช้เซิร์ฟเวอร์ MCP นี้จะช่วยลดความจำเป็นในการเขียน "โค้ดเชื่อม" ที่กำหนดเองสำหรับการตรวจสอบสิทธิ์ Google Ads API, การดึงข้อมูลทรัพยากร และการแยกวิเคราะห์ข้อมูล เซิร์ฟเวอร์จะแสดงเครื่องมือเฉพาะที่ LLM สามารถค้นพบและเรียกใช้ได้โดยอัตโนมัติ
ข้อมูลจำเพาะที่สำคัญ
- โปรโตคอล: MCP (Model Context Protocol)
- โหมด: อ่านอย่างเดียว (รุ่นปัจจุบัน)
- ภาษา: Python
- การรับส่ง: อินพุต/เอาต์พุตมาตรฐาน (
stdio) หรือ HTTP ที่สตรีมได้ (streamable-http/ Cloud Run) - การตรวจสอบสิทธิ์: OAuth 2.0 หรือบัญชีบริการ
วิธีการทำงานของลูปการโต้ตอบ
- คำขอ: ผู้ใช้ส่งคำถาม เช่น "ประสิทธิภาพของแคมเปญในสัปดาห์นี้เป็นอย่างไร"
- การค้นพบ: LLM จะตรวจสอบเครื่องมือที่มีอยู่และระบุความสามารถในการค้นหาของ
google-ads-mcp - การดำเนินการ: เซิร์ฟเวอร์ MCP จะเรียกใช้ตรรกะ Python ที่เกี่ยวข้องเพื่อค้นหา Google Ads API
- การแทรกบริบท: ระบบจะแสดงผลลัพธ์ที่มีโครงสร้างในหน้าต่างบริบทของ LLM
- คำตอบ: LLM สังเคราะห์ข้อมูลเป็นคำตอบที่มนุษย์อ่านได้
เริ่มต้นใช้งาน
ทำตามขั้นตอนต่อไปนี้เพื่อกำหนดค่าและใช้เซิร์ฟเวอร์ MCP ของ Google Ads
ข้อกำหนดเบื้องต้น
ก่อนกำหนดค่า โปรดตรวจสอบว่าคุณมีข้อมูลเข้าสู่ระบบต่อไปนี้จากคอนโซล Google Cloud
- รหัสโปรเจ็กต์: รหัสโปรเจ็กต์ Google Cloud (
GOOGLE_PROJECT_ID) ตรวจสอบหน้าภาพรวม Google Ads API เพื่อให้แน่ใจว่าโปรเจ็กต์มีสิทธิ์เข้าถึงระดับ Explorer, ระดับพื้นฐาน หรือระดับมาตรฐาน หากไม่มี ให้สมัครรับระดับการเข้าถึงอย่างใดอย่างหนึ่งเหล่านี้ โปรดทราบว่าโทเค็นของนักพัฒนาแอป (GOOGLE_ADS_DEVELOPER_TOKEN) ได้หยุดให้บริการไปแล้วเมื่อวันที่ 9 กันยายน 2026 และไม่จำเป็นต้องใช้ในเซิร์ฟเวอร์ Google Ads MCP เวอร์ชันล่าสุดอีกต่อไป เนื่องจากระดับการเข้าถึง API เชื่อมโยงกับโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ Google - ข้อมูลเข้าสู่ระบบ OAuth: คู่รหัสไคลเอ็นต์/รหัสลับไคลเอ็นต์ OAuth 2.0 หรือข้อมูลเข้าสู่ระบบเริ่มต้นของแอปพลิเคชันชุดหนึ่ง
การกำหนดค่า
หากต้องการผสานรวมเซิร์ฟเวอร์เข้ากับโฮสต์ที่เข้ากันได้กับ MCP ให้เพิ่มรายการต่อไปนี้ลงในไฟล์การกำหนดค่า MCP ของโฮสต์ เช่น settings.json และชี้ GOOGLE_APPLICATION_CREDENTIALS ไปยังไฟล์ JSON ของ ADC (หรือกำหนดค่า ADC เริ่มต้นด้วย gcloud auth application-default login) หากคุณเข้าถึงบัญชีผ่านบัญชีดูแลจัดการ คุณก็ตั้งค่า GOOGLE_ADS_LOGIN_CUSTOMER_ID ได้ด้วย
โปรดดูเอกสารประกอบของโฮสต์เพื่อหาตำแหน่งและชื่อไฟล์ที่แน่นอนของการกำหนดค่านี้
{
"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_APPLICATION_CREDENTIALS": "/path/to/credentials.json"
}
}
}
}
ไม่บังคับ: เพิ่มทักษะและผู้ช่วยนักพัฒนาซอฟต์แวร์ให้กับ Agent
เซิร์ฟเวอร์ MCP ของ Google Ads ให้สิทธิ์เข้าถึงข้อมูลบัญชีแบบเรียลไทม์ในระดับอ่านอย่างเดียวแก่ไคลเอ็นต์ AI หากต้องการช่วยให้ Agent สร้างคำค้นหา Google Ads Query Language (GAQL) ที่ถูกต้อง วิเคราะห์การเปลี่ยนแปลงด้านประสิทธิภาพของบัญชี และสร้างโค้ดไลบรารีของไคลเอ็นต์ ให้จับคู่เซิร์ฟเวอร์ MCP กับเครื่องมือที่ใช้ร่วมกันต่อไปนี้
ทักษะของ Agent สำหรับ Google Ads API: โมดูลแบบพกพาของวิธีการและเวิร์กโฟลว์เฉพาะสำหรับ Google Ads API ซึ่งรวมถึง
google-ads-api-mcp-setup,google-ads-api-account-diagnosticsและgoogle-ads-api-quickstartที่จะสอน Agent ของคุณถึงวิธีใช้เซิร์ฟเวอร์ MCP ของ Google Ads อย่างมีประสิทธิภาพโดยใช้โอเวอร์เฮดของโทเค็นน้อยลง ติดตั้งด้วยคำสั่งเดียว (ต้องใช้ Node.js) หรือดูคู่มือทักษะของ Agent สำหรับ Google Ads API สำหรับตัวเลือก Antigravity, Claude Code, Codex และ Cursornpx skills add google/skills/skills/adsผู้ช่วยนักพัฒนาซอฟต์แวร์ Google Ads API: ปลั๊กอินแบบโมดูลสำหรับ Google Antigravity และ Claude Code ที่ให้การตรวจสอบสคีมา Protobuf ในเครื่อง, การตรวจสอบ GAQL แบบเป็นโปรแกรม, การสร้างโค้ดไลบรารีของไคลเอ็นต์ (รวมถึงสคริปต์การเปลี่ยนแปลง) และการแก้ปัญหา Conversion ออฟไลน์ ดูวิธีการทำงานได้ในผู้ช่วยนักพัฒนาซอฟต์แวร์ Google Ads API คืออะไร หรือทำตามคู่มือการติดตั้ง
การติดตั้งใช้งานบน 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ไปที่ไดเรกทอรีโปรเจ็กต์
cd <full path>/google-ads-mcpสร้างและส่งรูปภาพโดยทำดังนี้
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 ซึ่งมีระดับการเข้าถึง API ที่เหมาะสมGOOGLE_ADS_MCP_OAUTH_CLIENT_ID: รหัสไคลเอ็นต์ OAuth 2.0 (กำหนดค่าเป็นเว็บแอปพลิเคชันในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ของ Google) สำหรับการตรวจสอบสิทธิ์ OAuth ระดับแอปพลิเคชัน ตรวจสอบว่าเป็นไปดังนี้- คุณได้เพิ่ม URI การเปลี่ยนเส้นทางที่ได้รับอนุญาตที่เหมาะสมสำหรับไคลเอ็นต์ AI ที่คุณวางแผนจะเชื่อมต่อ (เช่น
https://claude.ai/api/mcp/auth_callback,https://chatgpt.com/connector_platform_oauth_redirectหรือhttps://antigravity.google/oauth-callback) - คุณได้เพิ่มขอบเขต
https://www.googleapis.com/auth/adwordsลงในหน้าจอขอความยินยอม OAuth ในส่วน API และบริการ > หน้าจอขอความยินยอม OAuth > การเข้าถึงข้อมูล (เพิ่มหรือนำขอบเขตออก) - หากสถานะการเผยแพร่หน้าจอขอความยินยอม OAuth ตั้งค่าเป็นกำลังทดสอบ (ค่าเริ่มต้น) แสดงว่าคุณได้เพิ่มบัญชี Google ที่เชื่อมต่อกับเซิร์ฟเวอร์ MCP เป็นผู้ใช้ทดสอบในส่วน APIs & Services > OAuth consent screen > Audience (Test users > + Add users)
- คุณได้เพิ่ม URI การเปลี่ยนเส้นทางที่ได้รับอนุญาตที่เหมาะสมสำหรับไคลเอ็นต์ AI ที่คุณวางแผนจะเชื่อมต่อ (เช่น
GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET: รหัสลับไคลเอ็นต์ OAuth ที่สอดคล้องกับรหัสไคลเอ็นต์ OAuthGOOGLE_ADS_MCP_BASE_URL: URL ฐานสาธารณะที่เข้าถึงเซิร์ฟเวอร์ MCP ได้ (เช่นhttps://google-ads-mcp-xyz-uc.a.run.app) เนื่องจาก Google Cloud Run จะสร้าง URL นี้ระหว่างการติดตั้งใช้งานครั้งแรก ให้ติดตั้งใช้งานโดยไม่มีตัวแปรนี้ก่อน แล้วจึงอัปเดตบริการหลังการติดตั้งใช้งานFASTMCP_HOST: ตั้งค่านี้เป็น0.0.0.0เพื่ออนุญาตให้ FastMCP ยอมรับการเชื่อมต่อจากที่อยู่ IP ทั้งหมด
ติดตั้งใช้งานบริการใน Google Cloud Run โดยทำดังนี้
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_MCP_OAUTH_CLIENT_ID=YOUR_CLIENT_ID,GOOGLE_ADS_MCP_OAUTH_CLIENT_SECRET=YOUR_CLIENT_SECRET,FASTMCP_HOST=0.0.0.0"
หลังจาก Cloud Run ทำการติดตั้งใช้งานเสร็จแล้ว ให้ดึงข้อมูล URL ของบริการที่กำหนดและอัปเดตบริการด้วยตัวแปรสภาพแวดล้อม GOOGLE_ADS_MCP_BASE_URL ดังนี้
gcloud run services update google-ads-mcp \
--region us-central1 \
--update-env-vars="GOOGLE_ADS_MCP_BASE_URL=https://your-cloud-run-url.a.run.app"
โมเดลการตรวจสอบสิทธิ์และความปลอดภัย
การติดตั้งใช้งานด้วย --allow-unauthenticated จะปิดใช้การตรวจสอบ IAM ระดับโครงสร้างพื้นฐานของ Cloud Run (roles/run.invoker) เพื่อให้ไคลเอ็นต์ AI ภายนอกเชื่อมต่อได้โดยไม่ต้องใช้โทเค็นบัญชีบริการ Google Cloud
แต่จะมอบสิทธิ์การตรวจสอบสิทธิ์ให้กับเลเยอร์ของแอปพลิเคชันแทน ดังนี้
- เมื่อระบุ
GOOGLE_ADS_MCP_OAUTH_CLIENT_IDและGOOGLE_ADS_MCP_OAUTH_CLIENT_SECRETเซิร์ฟเวอร์ MCP จะบังคับใช้ Google OAuth 2.0 กับคำขอขาเข้าทั้งหมด โดยท้าทายผู้โทรที่ไม่ได้รับการตรวจสอบสิทธิ์ด้วยการตอบกลับ HTTP 401 คำขอเครื่องมือทั้งหมดจะดำเนินการอย่างเคร่งครัดภายใต้ข้อมูลประจำตัว OAuth ของผู้โทรที่ตรวจสอบสิทธิ์แล้ว - การละเว้น
--allow-unauthenticatedจะบังคับใช้ IAM ของโครงสร้างพื้นฐาน Cloud Run ซึ่งกำหนดให้ผู้เรียกต้องส่งโทเค็นข้อมูลประจำตัว OIDC ของ Google Cloud ไปกับคำขอแต่ละรายการ เนื่องจากไคลเอ็นต์ AI มาตรฐาน (เช่น Claude และ ChatGPT) ตรวจสอบสิทธิ์โดยใช้ OAuth ของผู้ใช้ปลายทางแทนโทเค็นข้อมูลประจำตัว Cloud IAM ของ Google Cloud การเชื่อมต่อโดยตรงจากแพลตฟอร์มเหล่านี้จึงต้องใช้--allow-unauthenticatedกับ OAuth ระดับแอปพลิเคชัน
กำหนดค่าไคลเอ็นต์ MCP
หลังจากการติดตั้งใช้งาน ให้กำหนดค่าไคลเอ็นต์ MCP ด้วย URL ของ Cloud Run เนื่องจากเซิร์ฟเวอร์ต้องใช้การตรวจสอบสิทธิ์ OAuth 2.0 ไคลเอ็นต์จึงต้องรองรับโฟลว์ MCP OAuth หรือระบุโทเค็นสำหรับผู้ถือที่ได้รับอนุญาต ดังนี้
- ไคลเอ็นต์ที่เปิดใช้ OAuth: สำหรับไคลเอ็นต์ที่รองรับการค้นพบ MCP OAuth (เช่น Antigravity) การเชื่อมต่อกับปลายทางจะทริกเกอร์พรอมต์การตรวจสอบสิทธิ์เพื่อลงชื่อเข้าใช้ด้วย Google และให้สิทธิ์ขอบเขต
https://www.googleapis.com/auth/adwords(แสดงเป็น.../auth/adwordsในคอนโซล Google Cloud) - แพลตฟอร์ม AI ของบุคคลที่สาม (Claude, ChatGPT): ในการตั้งค่าเครื่องมือเชื่อมต่อหรือการผสานรวมของไคลเอ็นต์ ให้เพิ่มเครื่องมือเชื่อมต่อที่กำหนดเองซึ่งชี้ไปยัง URL ของ Cloud Run ด้วยเส้นทาง
/mcp(เช่นhttps://your-cloud-run-url.a.run.app/mcp) เลือกการตรวจสอบสิทธิ์ OAuth 2.0 (โดยใช้รหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์ OAuth ของคุณเอง) และตรวจสอบว่าได้เพิ่ม URI Callback ของไคลเอ็นต์ลงใน URI การเปลี่ยนเส้นทางที่ได้รับอนุญาตของไคลเอ็นต์ OAuth แล้ว (ผู้เข้าร่วมที่อยู่ในรายการที่อนุญาตของโปรแกรมนำร่องปลายทางที่โฮสต์สามารถดูคู่มือการตั้งค่า MCP ที่โฮสต์ได้ด้วย) - ไคลเอ็นต์ที่ไม่มีการรองรับ OAuth: ไคลเอ็นต์ที่ไม่รองรับโฟลว์ HTTP OAuth จะได้รับการตอบกลับ HTTP 401 Unauthorized สำหรับเครื่องมือเหล่านี้ ให้ใช้การกำหนดค่า stdio ในเครื่องแทน
ตัวอย่างการกำหนดค่าสำหรับไคลเอ็นต์ที่รองรับ OAuth (เช่น ~/.gemini/settings.json) มีดังนี้
{
"mcpServers": {
"google-ads-mcp": {
"httpUrl": "https://your-cloud-run-url.a.run.app/mcp"
}
}
}
ความสามารถหลัก (เครื่องมือ)
เซิร์ฟเวอร์จะแสดงเครื่องมือที่ออกแบบมาเพื่อการค้นพบบัญชีและการรายงานประสิทธิภาพ ดังนี้
list_accessible_customers: แสดงรายการรหัสลูกค้า Google Ads และชื่อบัญชีที่ผู้ใช้ที่ตรวจสอบสิทธิ์แล้วเข้าถึงได้search: ดำเนินการตามคำขอ 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
ขั้นตอนถัดไป
- ติดตั้งทักษะของ Agent สำหรับ Google Ads API
- ดูข้อมูลเกี่ยวกับผู้ช่วยนักพัฒนาซอฟต์แวร์ Google Ads API
- ติดตั้งและใช้ Google Ads API Developer Assistant