สกิล Google Ads สำหรับ Claude Code: 4 ตัวที่ให้ AI อ่านบัญชี แต่ห้ามกดแก้

ทุกเช้าวันจันทร์ผมต้องเปิด Google Ads หลายบัญชีเพื่อดูว่าสัปดาห์ที่แล้วแคมเปญไหนใช้งบเกิน คำค้นไหนกินเงินแต่ไม่มี conversion แล้วค่อยสรุปส่งทีม งานนี้ไม่ได้ยาก แต่ซ้ำทุกสัปดาห์ ผมเลยอยากรู้ว่าถ้าให้ AI อย่าง Claude Code อ่านข้อมูลจาก Google Ads API เองได้ จะช่วยลดเวลาตรงนี้ได้แค่ไหน และปล่อยให้มันแก้แคมเปญเองได้ถึงระดับไหน
บทความนี้รีวิวสกิล 4 ตัวที่ผมติดตั้งไว้ในเครื่อง คือ google-ads-api-mcp-setup และ google-ads-api-quickstart ที่มาจากทีม Google Ads API เอง กับอีก 2 ตัวจากชุมชน คือ google-ads และ google-ads-manager ผมอ่าน SKILL.md ทุกไฟล์จนจบ และติดตั้ง MCP server ของ Google ใน venv แยกเพื่อดูว่ามันเปิดเครื่องมืออะไรให้ AI ใช้บ้าง ทุกอย่างทำโดยไม่ได้ต่อบัญชี Google Ads จริง จึงไม่มีการเรียก API ส่วนที่ผมยังไม่ได้ทดสอบ ผมเขียนบอกไว้ในแต่ละจุด
$ npx skills add https://github.com/google/skills --skill google-ads-api-mcp-setupUse the google-ads-api-quickstart skill to walk me through getting Google Ads API access (Cloud project, OAuth desktop client, refresh token, manager account ID). Then use google-ads-api-mcp-setup to connect the official google-ads-mcp server to Claude Code. Don't ask me to paste secrets into the chat. Tell me which values go where, and stop before running any query against a live account.เชื่อม Claude Code เข้ากับ Google Ads ผ่าน MCP server ทางการของ Google เพื่อให้ AI อ่านข้อมูลแคมเปญได้ด้วยภาษาปกติ (แบบอ่านอย่างเดียว)
- ไล่ตั้งค่าตั้งแต่ Python, pipx, credential ไปจนถึงไฟล์ config ของ Claude, Cursor และ Antigravity
- ใช้คู่กับ google-ads-api-quickstart ที่สอนขอสิทธิ์ API และ OAuth และมีวิธีแก้ error ที่เจอบ่อย
- MCP server ตอนนี้มีเครื่องมือ 3 ตัวและเป็นแบบอ่านอย่างเดียวทั้งหมด แก้บิด หยุดแคมเปญ หรือสร้างโฆษณาไม่ได้
- สกิลจากชุมชนอีก 2 ตัวช่วยเรื่องกลยุทธ์และเทมเพลต แต่ไม่ได้ต่อ API
ตัวเลขของสกิล google-ads-api-mcp-setup จาก skills.sh และ GitHub ณ 26 ก.ย. 2569
วิธีใช้ติดตั้งสกิล ขอสิทธิ์ API และต่อ MCP
สกิล 4 ตัวนี้ทำหน้าที่ต่างกัน
ชื่อคล้ายกันมาก แต่ถ้าดูจากเนื้อหาจริงจะแบ่งได้เป็น 2 กลุ่ม
- google-ads-api-quickstart (จาก google/skills) พาไปถึงการเรียก API ครั้งแรก ใช้ credential 5 ตัว มีตัวอย่างโค้ด 6 ภาษา (Python, Java, .NET, PHP, Ruby, Perl) และ REST และมีวิธีแก้ error
USER_PERMISSION_DENIEDกับDEVELOPER_TOKEN_NOT_APPROVED - google-ads-api-mcp-setup (จาก google/skills) ติดตั้ง MCP server ทางการ
google-ads-mcpแล้วต่อเข้ากับ Claude Desktop, Claude Code, Cursor หรือ Antigravity ตัวสกิลกำหนดให้ AI เช็ก Python กับ pipx ก่อนเสนอคำสั่งติดตั้งใด ๆ - google-ads (จาก kostja94/marketing-skills) เป็นความรู้ด้านกลยุทธ์ เช่น โครงสร้างแคมเปญ การเลือกกลยุทธ์ bidding ตามจำนวน conversion การดูแล Performance Max และ checklist ก่อนเปิดแคมเปญ ไม่ได้ต่อ API
- google-ads-manager (จาก claude-office-skills/skills) เป็นเทมเพลต YAML สำหรับวางแคมเปญ กลุ่มคีย์เวิร์ด โฆษณา RSA และรายงาน ส่วนหัวไฟล์อ้างถึง MCP ชื่อ
ads-mcpที่มีเครื่องมือgoogle_ads_createแต่ server ทางการไม่มีเครื่องมือชื่อนี้ ผมจึงถือว่าตัวนี้ใช้เป็นเทมเพลตได้อย่างเดียว
สรุปคือ 2 ตัวแรกทำให้ AI เข้าถึงข้อมูลในบัญชีได้ ส่วน 2 ตัวหลังช่วยให้ AI คิดเรื่องกลยุทธ์ได้เป็นระบบขึ้น
ขั้นที่ 1: ติดตั้งสกิล
คำสั่งติดตั้งทั้ง 4 ตัวตามที่หน้า skills.sh แสดงไว้
npx skills add https://github.com/google/skills --skill google-ads-api-mcp-setup
npx skills add https://github.com/google/skills --skill google-ads-api-quickstart
npx skills add https://github.com/kostja94/marketing-skills --skill google-ads
npx skills add https://github.com/claude-office-skills/skills --skill google-ads-manager
ในหน้า Agent skills ของ Google มีคำสั่งสำหรับ Claude Code แบบ plugin ด้วย คือ claude plugin marketplace add google/skills แล้วตามด้วย claude plugin install google-ads@skills แต่ตอนที่ผมเปิดไฟล์ marketplace.json ของ repo ดู (26 ก.ย. 2569) ยังไม่พบ plugin ชื่อ google-ads ในรายการ ผมจึงใช้ npx skills add ตามข้างบน
ขั้นที่ 2: ขอสิทธิ์ใช้ Google Ads API
ขั้นนี้ใช้เวลามากที่สุด และเป็นขั้นที่ AI ทำแทนเราไม่ได้ เพราะต้องล็อกอินและยืนยันตัวตนเอง สกิล quickstart ให้เตรียม 5 อย่าง
- Developer token อยู่ใน API Center ของบัญชี Manager (MCC) ต้องล็อกอินด้วยบัญชี Manager เท่านั้น
- OAuth Client ID และ Client Secret สร้างใน Google Cloud Console โดยเปิดใช้ Google Ads API แล้วสร้าง client แบบ Desktop App ถ้าหน้า consent screen ยังอยู่ในโหมด Testing ต้องเพิ่มอีเมลที่ใช้เข้า Google Ads เป็น Test User ไม่อย่างนั้นจะผ่านขั้นยืนยันสิทธิ์ไม่ได้
- Refresh token สกิลแนะนำให้สร้างด้วย
gcloud auth application-default loginพร้อม scopeadwords - Customer ID ของบัญชีที่จะดึงข้อมูล ใส่เป็นตัวเลข 10 หลักโดยไม่มีขีด
- Login Customer ID คือเลขบัญชี MCC ถ้าเข้าบัญชีลูกค้าผ่าน MCC ต้องใส่ค่านี้ สกิลบอกว่าการลืมใส่ค่านี้เป็นสาเหตุอันดับหนึ่งของ error
USER_PERMISSION_DENIED
ตรงนี้มีเรื่องที่สกิลยังตามไม่ทัน เอกสารของ Google ตอนนี้ผูกระดับสิทธิ์ API ไว้กับ Google Cloud project แล้ว และหน้า MCP server ระบุว่าเวอร์ชันปัจจุบันไม่ต้องใช้ developer token ส่วน README ของ server ก็เขียนหัวข้อ developer token ว่า Optional แต่ตัวสกิลยังบอกว่าต้องมีครบ 5 อย่าง ใครเริ่มใหม่ตอนนี้ควรเช็กในเอกสารล่าสุดก่อน
ระดับสิทธิ์มี 4 ขั้น Test ใช้ได้กับบัญชีทดสอบเท่านั้น Explorer เริ่มดึงบัญชีจริงได้ วันละ 2,880 operations Basic ได้วันละ 15,000 และต้องยืนยันแบรนด์ของ Cloud project ก่อนสมัคร ส่วน Standard ไม่จำกัดจำนวน มีข้อควรรู้คือระดับ Explorer ใช้ Keyword Planner ผ่าน API ไม่ได้
ขั้นที่ 3: เช็กเครื่องก่อนลง MCP server
สกิล mcp-setup สั่งให้ AI รัน python3 --version กับ pipx --version ก่อนทุกครั้ง ผมลองรันเองก่อนแล้วเจอว่า Python ที่มากับ macOS ของผมเป็น 3.9.6 ส่วน pipx และ gcloud ไม่ได้ติดตั้งไว้
เรื่องเวอร์ชันก็มีจุดที่ไม่ตรงกัน สกิลเขียนว่าต้องใช้ Python 3.12 ขึ้นไป แต่ pyproject.toml ของ google-ads-mcp 0.0.4 และหน้า PyPI ระบุไว้ว่า 3.10 ขึ้นไป ผมไม่อยากลง pipx แบบ global เลยสร้าง venv ด้วย Python 3.11 ที่มีอยู่ในเครื่องแล้วติดตั้งแพ็กเกจลงไป จากนั้นเขียนสคริปต์สั้น ๆ ให้ทำตัวเป็น MCP client คุยกับ server ผ่าน stdio เพื่อขอรายการเครื่องมือ ขั้นนี้ไม่ได้ใส่ credential และไม่ได้เรียก Google Ads API
ผลที่ได้มีจุดต่างจากสกิลอีกเรื่อง สกิลบอกว่าเครื่องมือ search รับค่า customer_id กับ query ที่เป็น GAQL ทั้งประโยค แต่ใน 0.0.4 เครื่องมือชื่อ search_search และรับค่าแยกเป็นช่อง คือ fields, resource, conditions, orderings และ limit แล้ว server จะประกอบเป็น GAQL ให้เอง ถ้า AI ทำตามสกิลตรง ๆ อาจส่งค่าผิดรูปแบบไปในครั้งแรก แต่ปกติมันจะอ่าน schema ของเครื่องมือแล้วแก้ได้เอง
ขั้นที่ 4: ต่อเข้ากับ Claude Code
README ของ server บอกให้ Claude Code ใส่ค่าในไฟล์ ~/.claude/settings.json ส่วนตัว Claude Code เองมีคำสั่ง claude mcp add ที่ส่งค่าตัวแปรด้วย -e ได้ (ผมเช็กจาก claude mcp add --help แล้ว) ถ้าใช้วิธี Application Default Credentials จะเขียนได้ประมาณนี้
claude mcp add google-ads \
-e GOOGLE_PROJECT_ID=YOUR_PROJECT_ID \
-e GOOGLE_APPLICATION_CREDENTIALS=/path/to/credentials.json \
-e GOOGLE_ADS_LOGIN_CUSTOMER_ID=YOUR_MCC_ID \
-- pipx run google-ads-mcp
ผมยังไม่ได้รันคำสั่งนี้จริง เพราะเครื่องผมยังไม่มี credential และไม่อยากแก้ config ของ Claude Code ให้ชี้ไปที่ server ที่ยังใช้งานไม่ได้ หลังต่อสำเร็จ README แนะนำให้ลองถามว่า "what customers do I have access to?" ก่อน แล้วค่อยถามเรื่องแคมเปญ ถ้าดูแลหลายบัญชี ใส่ customer ID ลงในคำถามไปเลยจะง่ายกว่า
ตัวอย่างคำสั่งที่ใช้ได้เมื่อต่อสำเร็จ
- "ดึงแคมเปญที่ ENABLED ของบัญชี 1234567890 พร้อม cost, clicks, conversions ของ 7 วันล่าสุด เรียงตาม cost"
- "หา search term ที่ใช้เงินเกิน 500 บาทแต่ไม่มี conversion ใน 30 วัน แล้วเสนอ negative keyword ให้ผมเลือกเอง"
- "เอาข้อมูลนี้มาเทียบกับ checklist ของสกิล google-ads แล้วบอกว่าบัญชีนี้ขาดอะไร"
ข้อสามเป็นตัวอย่างที่ใช้สกิลหลายตัวพร้อมกัน คือให้ MCP ดึงข้อมูลจริงมา แล้วใช้สกิลกลยุทธ์ช่วยวิเคราะห์ ส่วนการแก้ในบัญชี คนต้องเข้าไปทำเองใน Google Ads
รีวิวจุดเด่น ความเสี่ยง และข้อจำกัด
MCP server ของ Google ทำอะไรได้จริง
google-ads-mcp เป็นโปรเจกต์ Apache-2.0 ที่ทีม Google Ads ดูแลเอง ตอนที่ผมดู เวอร์ชันล่าสุดคือ 0.0.4 ซึ่งออกเมื่อ 25 ก.ย. 2569 เลขเวอร์ชันยังเป็น 0.0.x แปลว่ายังอยู่ช่วงต้นของโปรเจกต์ มีเครื่องมือ 3 ตัว
- list_accessible_customers ดูว่า credential นี้เข้าถึงบัญชีไหนได้บ้าง
- get_resource_metadata ดูว่า resource อย่าง campaign หรือ ad_group มี field อะไรให้ดึงได้บ้าง
- search ดึงข้อมูลจริงด้วย GAQL เช่น ค่าใช้จ่าย คลิก conversion และสถานะ
นอกจากนี้ยังมี resource สำหรับเปิดดูรายการ metrics, segments, discovery document และ release notes ในโค้ด เครื่องมือทั้ง 3 ตัวติดป้าย readOnlyHint=True และหน้าเอกสารของ Google ก็เขียนว่า Mode: Read-only (current release)
จุดเด่น
- มาจาก Google เอง ทั้งสกิลและ server ไม่ต้องเสี่ยงกับ MCP ของคนอื่นที่ต้องส่ง token ของเราให้ ตัวสกิลเองก็ห้าม AI แนะนำ server จากแหล่งอื่นที่ยังไม่ได้ตรวจสอบ
- ช่วยเรื่องที่คนติดบ่อยที่สุด คือขั้นตั้ง credential และ error
USER_PERMISSION_DENIEDจากการไม่ใส่ login_customer_id ซึ่งเจอบ่อยมากกับเอเจนซีที่ดูแลลูกค้าผ่าน MCC - อ่านอย่างเดียวคือข้อดี ช่วงเริ่มต้นผมอยากให้ AI อ่านข้อมูลได้แต่แก้อะไรไม่ได้ เพราะความผิดพลาดที่แย่ที่สุดที่เกิดได้คือรายงานผิด ไม่ใช่งบลูกค้าหาย
- สกิลกลยุทธ์ช่วยให้ AI ตอบเป็นระบบ สกิล google-ads มีเกณฑ์ที่ใช้งานได้จริง เช่น ถ้ามี conversion น้อยกว่า 30 ครั้งต่อเดือนยังไม่ควรใช้ smart bidding และ Performance Max ต้องให้เวลาเรียนรู้อย่างน้อย 6 สัปดาห์
ความเสี่ยงถ้าให้ AI แก้แคมเปญที่กำลังรันอยู่
MCP ทางการแก้อะไรไม่ได้ แต่ Google Ads API เองแก้ได้ทุกอย่าง สกิล quickstart ก็สอนเขียนสคริปต์ด้วย client library ซึ่งต่อยอดไปเป็นโค้ดที่เปลี่ยนงบ หยุดคีย์เวิร์ด หรือสร้างแคมเปญได้ ถ้าจะทำถึงขั้นนั้น ผมแบ่งงานแบบนี้
- ให้ AI ทำเองได้ ดึงรายงาน สรุปรายสัปดาห์ หาความผิดปกติ เช่น งบหมดเร็วผิดปกติหรือ conversion หายไป ร่าง negative keyword ร่างข้อความโฆษณา และเช็กบัญชีตาม checklist
- ให้ AI เสนอ แล้วคนกดยืนยัน เพิ่ม negative keyword หยุดคีย์เวิร์ดที่ไม่มี conversion และปรับบิดทีละน้อย
- คนต้องทำเองเท่านั้น เปลี่ยนงบรายวัน เปลี่ยนกลยุทธ์ bidding เปิดหรือปิดแคมเปญ แก้ conversion action และแก้การตั้งค่าบิลลิ่ง งานพวกนี้กระทบทั้งการเรียนรู้ของระบบและเงินของลูกค้า
ความเสี่ยงที่ผมกังวลที่สุดคือ AI อ่านข้อมูลช่วงสั้นเกินไปแล้วสรุปเร็วเกินไป เช่น เห็น CPA พุ่งขึ้น 2 วันก็เสนอให้หยุดแคมเปญ ทั้งที่แคมเปญยังอยู่ในช่วงเรียนรู้ อีกเรื่องคือ README ของ server เขียนไว้เองว่า MCP จะส่งข้อมูลบัญชีเข้าไปในโมเดลที่เราต่อไว้ ถ้าเป็นบัญชีลูกค้า ต้องดูสัญญาเรื่องการใช้ข้อมูลก่อน
ข้อจำกัดที่เจอจริง
- เนื้อหาในสกิลเริ่มเก่ากว่าตัว server ผมเจอ 3 จุด คือเรื่อง Python 3.12 กับ 3.10 เรื่อง developer token ที่เอกสารใหม่บอกว่าไม่ต้องใช้แล้ว และรูปแบบค่าที่เครื่องมือ search รับ อีกเรื่องคือเวอร์ชัน API สำรองในสกิลเขียนไว้ว่า v24 แต่หน้าเอกสารระดับสิทธิ์ลิงก์ไปที่ v25 แล้ว
- ขั้นขอสิทธิ์ใช้เวลาและต้องทำเอง ต้องมีบัญชี MCC และ Cloud project และถ้าจะใช้กับบัญชีจริงต้องได้สิทธิ์ระดับ Explorer ขึ้นไป
- google-ads-manager ต่ออะไรไม่ได้ ตัวอย่างรายงานในสกิลเป็นตัวเลขสมมติ และเครื่องมือที่ส่วนหัวไฟล์อ้างถึงไม่มีอยู่ใน server ทางการ repo นี้อัปเดตล่าสุดเมื่อ 31 ม.ค. 2569
- สกิล google-ads อ้างตัวเลขที่ไม่ได้บอกแหล่ง เช่น Quality Score ที่ขึ้นจาก 5 เป็น 7 ช่วยลด CPC ได้ 30–50% ควรใช้เป็นแนวทาง ไม่ใช่ตัวเลขที่ใช้สัญญากับลูกค้า และสกิลยังอ้างถึงสกิลอื่นในชุดเดียวกันที่ผมไม่ได้ติดตั้ง
- ตัวอย่างทั้งหมดอิงตลาดอเมริกา ทั้งหน่วยเงิน โซนเวลา และตัวอย่างคีย์เวิร์ด ถ้าจะใช้กับบัญชีไทยต้องบอก AI ให้ปรับเอง
ถ้าอยากใช้ AI ช่วยแต่ยังไม่พร้อมเรื่องขอสิทธิ์ API และตั้งค่าเอง ทีม M Creation ในฐานะ Google Partner รับดูแลแคมเปญ Google Ads โดยให้คนเป็นผู้ตัดสินใจทุกครั้งที่มีการแก้ในบัญชีจริง
คำถามที่พบบ่อย
ให้ AI หยุดแคมเปญหรือปรับบิดผ่าน MCP ทางการได้ไหม
ไม่ได้ เวอร์ชัน 0.0.4 มีเครื่องมืออ่านข้อมูลแค่ 3 ตัว ทั้งตัวสกิลและเอกสารของ Google เขียนตรงกันว่าเป็นแบบอ่านอย่างเดียว ถ้าจะแก้ผ่าน API ต้องเขียนสคริปต์เองด้วย client library ซึ่งผมแนะนำให้มีคนกดยืนยันทุกครั้ง
ใช้ฟรีไหม
สกิลทั้ง 4 ตัวเป็นโอเพนซอร์ส และ Google Ads API ไม่มีค่าเรียกใช้ แต่มีโควตาตามระดับสิทธิ์ เช่น Explorer ได้วันละ 2,880 operations กับบัญชีจริง ค่าใช้จ่ายที่เหลือคือค่า Claude ตามแพ็กเกจที่ใช้อยู่ ถ้าใช้ Cloud Run ก็มีค่า Google Cloud เพิ่ม
ต้องมีบัญชี MCC ไหม
ถ้าใช้วิธี developer token ต้องมี เพราะ token อยู่ใน API Center ของบัญชี Manager เท่านั้น เอเจนซีที่ดูแลหลายบัญชีผ่าน MCC ต้องตั้ง GOOGLE_ADS_LOGIN_CUSTOMER_ID ด้วย ส่วนเอกสารใหม่ของ MCP ผูกสิทธิ์ไว้ที่ Cloud project แต่ผมยังไม่ได้ลองวิธีนี้กับบัญชีจริง
ทดลองโดยไม่แตะบัญชีจริงได้ไหม
ได้ โดยสร้าง Test Manager Account แล้วสร้างบัญชีทดสอบไว้ข้างใต้ บัญชีทดสอบไม่แสดงโฆษณาจริง และใช้ได้ตั้งแต่ยังอยู่ระดับ Test ผมแนะนำให้ทำขั้นนี้ก่อนต่อกับบัญชีลูกค้า
ควรติดตั้งครบทั้ง 4 ตัวไหม
ถ้าจะให้ AI อ่านข้อมูลจริง ใช้ 2 ตัวของ Google ก็พอ ส่วน google-ads ช่วยเรื่องการวิเคราะห์และคุ้มที่จะติดตั้งไว้ ส่วน google-ads-manager ผมคิดว่าจะใช้ก็ต่อเมื่อต้องการเทมเพลตโครงสร้างแคมเปญแบบรวดเร็ว และต้องรู้ว่าตัวเลขในนั้นเป็นตัวอย่างสมมติ
ขาย API ทำเงินยังไง? ธุรกิจที่คิดเงินครั้งละ 6 สตางค์ โดยมีต้นทุนก้อนใหญ่ที่คนนอกมองไม่เห็น
เครื่องมือส่องโซเชียลคู่แข่ง: ลองจริง 3 ตัวกับ Bibigo จ่ายราว 1 บาท แล้วเจอว่ายอดวิวไม่ได้อยู่ที่เพจแบรนด์
MCP คืออะไร? หัวชาร์จ USB-C ของ AI ที่ทำให้ Claude ใช้เครื่องมือจริงได้ แต่มี 1 ความเสี่ยงที่ต้องรู้ก่อนเสียบ
API คืออะไร? ไม่ใช่เรื่องของโปรแกรมเมอร์ ส่องคู่แข่งทั้งแบรนด์ 18 ครั้ง จ่ายราว 1 บาท (2026)