Google Ads MCP: bygg hele strukturen fra agenten din, atomisk

Hermosos MCP-server oppretter en Google Ads-kampanje, annonsegruppe, responsiv søkeannonse eller displayannonse og søkeordene i ett atomisk mutate-kall, så betyr en avvist annonse at budsjettet heller aldri ble opprettet. Performance Max bygges på samme måte, med ressursgruppe og alt. I tillegg får du Keyword Planner-research, konverteringssporing, sitelinks, lesing og skriving av Merchant Center-feed, GAQL-rapportering, Google Analytics 4 for å se hva klikkene faktisk gjorde, og en bekreftelsessperre på alt som starter utgifter.

Finnes det en Google Ads MCP-server? Ja. Hermoso er en hostet Google Ads MCP-server. Legg til https://app.hermoso.ai/mcp i Claude, ChatGPT eller Cursor, og koble til Google Ads-kontoen din én gang. Assistenten din kan deretter bygge søke-, display- og Performance Max-kampanjer, finne søkeordideer, sette budsjetter, bud og målretting, og kjøre rapporter. Å slå på en kampanje krever alltid din uttrykkelige bekreftelse.

Google Ads er et tre, og trær er der skriptet kampanjeoppretting vanligvis går galt. Du oppretter et budsjett, deretter en kampanje, en annonsegruppe og en annonse. Hvis annonsen blir avvist på trinn fire, står du igjen med tre foreldreløse objekter og et budsjett du ikke ville ha. Å rydde opp i det for hånd er grunnen til at de fleste gir opp automatisering av Google Ads.

Hermosos MCP-server bygger hele treet i én atomisk operasjon, med midlertidige ressurs-id-er slik at barna kan referere til foreldre som ennå ikke finnes. Enten kommer kampanjen, annonsegruppen, annonsen og søkeordene alle til å eksistere, eller så kommer ingen av dem til å gjøre det. En avvist annonse betyr at budsjettet heller aldri ble opprettet.

Installer én gang: i Claude.ai eller Claude Desktop limer du inn https://app.hermoso.ai/mcp under Settings → Connectors og godkjenner med Hermoso-kontoen din. I en kodeagent er det én kommando: /plugin marketplace add hermoso-ai/hermoso og deretter /plugin install hermoso@hermoso i Claude Code, codex plugin marketplace add hermoso-ai/hermoso og deretter codex plugin add hermoso@hermoso i Codex, eller npx skills add hermoso-ai/hermoso -a cursor i Cursor (gi din egen agent navnet etter -a), og logg deretter inn én gang med npx -y hermoso auth login. Fullstendig oppsett finner du på MCP- og CLI-siden.

Verktøyene for Google Ads

Bygg. create_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad, add_google_ads_keywords, create_google_ads_performance_max_campaign, upload_google_ads_asset, add_google_ads_assets for sitelinks, callouts og strukturerte utdrag.

Konfigurer. set_google_ads_budget, set_google_ads_bidding (seks strategier), set_google_ads_targeting (geografi og språk), find_google_ads_locations, set_google_ads_networks (Søkepartnere og Display av eller på), create_google_ads_conversion_action og list_google_ads_conversion_actions.

Research. google_ads_keyword_ideas gir deg Keyword Planner i samtalen: reelle månedlige søkevolum, konkurranse og bud-intervaller for toppen av siden, basert på et sett med søkeord, en landingsside eller et helt nettsted.

Les og endre. list_google_ads_campaigns, google_ads_report for vilkårlig GAQL, google_ads_change_history for hva som endret seg i kontoen og når, delete_google_ads_object for å fjerne ett objekt, og set_google_ads_status, den ene bekreftelsesfrie bryteren som starter reell utgift.

create_google_ads_campaign støtter også en tørrkjøringsmodus, så en agent kan validere et helt tre mot det levende API-et uten å opprette noe. Det er en god standard når den foreslår en plan for at du skal godkjenne den.

Hva agenten din kan gjøre med Google Ads MCP

Hver rad er et ekte verktøy på serveren. Still spørsmålet på vanlig språk, så velger agenten selv hvilke verktøy den kjører.

JobbVerktøyHva skjer
Bygg en Søk- eller Display-kampanjecreate_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad, add_google_ads_keywordsBudsjett, kampanje, annonsegruppe, responsiv annonse og søkeord i én atomisk operasjon, opprettet pauset. En tørrkjøring sjekker hele treet mot det levende API-et først.
Bygg Performance Maxcreate_google_ads_performance_max_campaignÉn kampanje på tvers av Søk, YouTube, Display, Discover, Gmail og Maps, med ressursgruppen, opprettet pauset. Den nekter på en konto uten konverteringshandling.
Søkeordsresearchgoogle_ads_keyword_ideasGoogles Keyword Planner: månedlig søkevolum, konkurranse og bud-intervaller for toppen av siden, fra startsøkeord, en landingsside eller et nettsted.
Sitelinks og calloutsadd_google_ads_assets, upload_google_ads_assetOppretter sitelinks, callouts og strukturerte utdrag og knytter dem til en kampanje eller annonsegruppe. Laster opp bildeaktiva, dine eller Hermosos.
Målretting og nettverkset_google_ads_targeting, find_google_ads_locations, set_google_ads_networksSteder og språk etter navn, og Søkepartnere eller Display slått på eller av.
Bud og budsjettset_google_ads_bidding, set_google_ads_budgetSeks budstrategier og det daglige budsjettet. Å øke et aktivt budsjett krever bekreftelse.
Konverteringssporingcreate_google_ads_conversion_action, list_google_ads_conversion_actionsOppretter konverteringshandlinger og sier om smart bidding kan fungere på kontoen.
Rapportergoogle_ads_report, list_google_ads_campaignsEt hvilket som helst GAQL-søk: kampanjer, annonsegrupper, annonser, søkeord, søkeordrapporter, demografi og geografi.
Hva som endret seggoogle_ads_change_historyHvem eller hva som endret kontoen, og når.
Start, pause eller fjernset_google_ads_status, delete_google_ads_objectAktivering setter i gang reell utgift og nekter å kjøre uten en uttrykkelig bekreftelse.
Merchant Centerlist_merchant_accounts, list_merchant_products, list_merchant_issuesLeser feeden som et Shopping- eller detalj-Performance Max-kampanje annonserer, og hvorfor et produkt er avvist.
Koble GA4link_google_ads_to_analytics, list_analytics_google_ads_links, create_analytics_key_eventKobler en GA4-egenskap slik at hendelsene dens kan importeres som Google Ads-konverteringer.

Eksempelspørsmål

Lim inn noen av disse i Claude, ChatGPT eller Cursor når Hermoso er koblet til.

  • “Finn 30 søkeord for prosjektstyringsappen vår med søkevolum over 1 000 i måneden i USA, og grupper dem etter intensjon.”
    google_ads_keyword_ideas returnerer Keyword Planner-volum, konkurranse og budintervaller, og agenten grupperer dem.
  • “Bygg en pauset Søk-kampanje for disse søkeordene: $50 om dagen, USA og Canada, engelsk, maksimer konverteringer.”
    create_google_ads_campaign bygger budsjett, kampanje, annonsegruppe, annonse og søkeord i én atomisk operasjon, pauset, og leser det tilbake.
  • “Sett opp en Performance Max-kampanje for Shopify-katalogen vår med Merchant Center-feeden vår.”
    list_merchant_accounts velger butikken, og create_google_ads_performance_max_campaign bygger den pauset med feeden knyttet til.
  • “Hvilke søkeord brukte penger forrige måned uten å konvertere? Legg til de ti verste som negative søkeord.”
    google_ads_report henter søkeordrapporten, og deretter legger add_google_ads_keywords til de negative søkeordene.
  • “Legg til fire sitelinks i varemerkekampanjen vår: priser, demo, kundehistorier og kontakt.”
    add_google_ads_assets oppretter sitelinksene og knytter dem til kampanjen.
  • “Slå av Søkepartnere i alle kampanjer og vis meg før og etter.”
    set_google_ads_networks leser den nåværende innstillingen først, og endrer den deretter kampanje for kampanje.
  • “Noen endret budene våre på fredag. Hva endret seg?”
    google_ads_change_history lister endringene med tidspunkt.
  • “Koble GA4-egenskapen vår slik at registreringer teller som konverteringer i Google Ads.”
    link_google_ads_to_analytics kobler dem sammen, og create_analytics_key_event markerer registreringshendelsen som en nøkkelhendelse.

Performance Max, bygget på samme måte

create_google_ads_performance_max_campaign bygger Googles kampanjetype på tvers av flater (Søk, YouTube, Display, Discover, Gmail og Maps fra én kampanje), og den bygges i én atomisk operasjon fordi Google krever nettopp det: budsjett, kampanje, målretting etter sted og språk, ressursgruppen og alle aktivakoblinger går opp samtidig, så et avvist aktivum etterlater ingen halvbygd kampanje. Den opprettes pauset, og hele treet leses tilbake fra Google før agenten din forteller deg at det finnes.

Googles minimumskrav til aktiva sjekkes her før noe sendes, så et manglende kvadratisk bilde blir en tydelig melding i stedet for en uklar avvisning fra API-et: 3–15 overskrifter på 30 tegn eller mindre, 1–5 lange overskrifter på opptil 90, 2–5 beskrivelser på opptil 90, ett firmanavn på opptil 25, og minst én logo, ett markedsføringsbilde og ett kvadratisk markedsføringsbilde. Last opp bildene med upload_google_ads_asset først, og send inn ressursnavnene. En YouTube-video er valgfri. Google genererer en fra ressursgruppen hvis du utelater den.

Performance Max har ingen søkeord og ingen manuell budgivning: den optimaliserer mot konverteringer og ingenting annet. Derfor nekter bygget på en konto uten en aktiv konverteringshandling, i stedet for å opprette en kampanje som ikke kan optimaliseres, og det nevner begge veiene ut: opprett én med create_google_ads_conversion_action, eller kjør en strategi som ikke krever den. Merkevareretningslinjer er på som standard for nye PMax-kampanjer siden Google Ads API v21, noe som endrer hvor firmanavnet og logoen knyttes. Hermosos kobler dem til kampanjen for deg.

Shopping-feed (retail) Performance Max fungerer på samme måte: send inn merchantCenterId, så annonserer kampanjen Merchant Center-katalogen din, med feedLabel for å begrense den til én feed. Den bygges og leses tilbake nøyaktig som kampanjen over. Tilbakelesingen viser Merchant Center-kontoen og feed-etiketten Google faktisk lagret, slik at du kan se at det virkelig er en retail-kampanje i stedet for å ta vårt ord for det. Den annonserer hele feeden under én rotoppføringsgruppe. Å dele en feed etter merke, kategori eller egendefinert etikett er ikke bygget, og det blir avvist med navn i stedet for å ignoreres stille, slik at du aldri kan ende opp med å tro at du har begrenset en feed når du ikke har gjort det.

Merchant Center, så agenten vet hva du selger

“Hvorfor vises ikke dette produktet?” er et spørsmål som Google Ads-rapportering strukturelt ikke kan svare på, fordi et avvist produkt ikke har visninger å rapportere på. Svaret ligger i Merchant Center, og den samme Google-tilkoblingen når dit, uten egen innlogging.

Agenten din kan liste Merchant Center-kontoene som den tilkoblede Google-kontoen din kan nå, med list_merchant_accounts (et byrå har vanligvis flere, så den spør hvilken butikk i stedet for å gjette), lese produktene i en feed med list_merchant_products (den faktiske katalogen en Shopping- eller retail-Performance Max-kampanje viser), og lese kontonivå-problemene Google reiser mot kontoen med list_merchant_issues. Det er nok til å skrive annonsetekst om produkter som virkelig finnes, til priser som virkelig er aktive, og til å forklare en stille kampanje.

Den skriver også. create_merchant_data_source lager en API-produktfeed, upsert_merchant_product legger et produkt i den, update_merchant_product endrer feltene som endrer seg daglig (pris og tilgjengelighet), og delete_merchant_product og delete_merchant_data_source fjerner dem bak en bekreftelse. list_merchant_data_sources viser hvilke feeder som faktisk kan ta imot en skriving.

Tre ting er greit å vite på forhånd. Google blokkerer alle Merchant API-kall til Hermosos Cloud-prosjekt er registrert mot Merchant Center-kontoen din, så register_merchant_developer utfører den koblingen én gang og sier det med navn. Det er ikke en ødelagt tilkobling, og å koble til på nytt hjelper ikke. Produktskrivinger går bare inn i en API-datakilde: en filfeed, en autofeed og feeden Merchant Centers egen grensesnitt lager, viser seg alle normalt, og alle avviser skriving. Derfor finner Hermoso en skrivbar feed for deg, lager en hvis det ikke finnes noen, og avviser med navn hvis det finnes flere, i stedet for å legge produktet ditt i et marked kampanjene dine kanskje ikke retter seg mot. Og upsert_merchant_product er en hel-rad-skriving, mens update_merchant_product er en oppdatering. Send alle feltene du vil beholde til den første, og bare feltene du endrer til den andre.

Ingen av dette betyr at du må flytte katalogen din. Hvis feeden allerede ligger i Shopify eller plattformen din, kan du beholde den der og la agenten lese den. Skrivingene er til for tilfellene der ingen eier feeden ennå, eller der én pris eller tilgjengelighet må rettes nå i stedet for ved neste synkronisering.

Google Analytics 4, slik at du ser hva klikkene gjorde

Google Ads-rapportering stopper ved klikket. Det som skjedde etterpå (økten, registreringen, bestillingen) ligger i Google Analytics, og den samme Google-innloggingen når dit. Det er en egen tilkobling, fordi den trenger sin egen tillatelse.

Agenten din kan finne ut hvilken GA4-egenskap den skal lese, med list_analytics_properties. Det betyr noe, fordi hvert Analytics-kall tar en numerisk egenskaps-id, og det du faktisk har er G-XXXXXXXXX-måle-ID-en fra sporingskoden din. Deretter returnerer analytics_report økter, brukere, konverteringer og inntekter fordelt på kanal, kilde/medium, kampanje, landingsside, land, enhet eller dato, og analytics_realtime viser hvem som er på siden akkurat nå. Så “bygg kampanjen” og “fortell meg hva den tjente” er den samme samtalen.

Den skriver også, og dette er delen som mater rett tilbake til Google Ads: create_analytics_key_event markerer en hendelse GA4 allerede samler inn som en nøkkelhendelse, som er akkurat det Google Ads importerer som en konvertering, og en konverteringshandling er det hver smart-bidding-strategi på denne siden er umulig å levere uten. create_analytics_custom_dimension registrerer en hendelsesparameter slik at rapporter kan deles opp etter den, og list_analytics_definitions viser hva egenskapen allerede måler før du legger til noen av dem. To ting gjelder for alltid: dette er bare GA4, siden API-et ikke har noen Universal Analytics-flate i det hele tatt, og en egendefinert dimensjon kan arkiveres, men aldri slettes, med 50 hendelsesspesifikke plasser per egenskap, så agenten sjekker det eksisterende settet først.

Utgiftssperren er bredere enn ett verktøy

Å pause en kampanje er ikke den eneste måten å unngå utgifter på, og å behandle det slik er en reell felle: å opprette en aktiv annonsegruppe, annonse eller et søkeord under en allerede aktiv forelder, viser annonser i neste auksjon. Derfor beskytter den samme bekreftelsen som sikrer set_google_ads_status, også create_google_ads_ad_group, create_google_ads_ad og add_google_ads_keywords når forelderen er aktiv. Det leses av raden hvert av disse allerede henter, uten ekstra rundtur. Negative søkeord begrenser bare utgifter, så de sperres aldri.

GAQL-rapportering, med ett forbehold verdt å kjenne til

google_ads_report tar vilkårlig GAQL, så agenten din kan be om den delen den trenger, i stedet for å være låst til en fast rapportform. Én ting å huske hvis du skriver søk for hånd eller lar en modell skrive dem: GAQL er ikke SQL. Det har ingen underspørringer, og IN tar en bokstavelig liste. En WHERE id IN (SELECT …) er ugyldig og vil feile i stedet for å stille returnere feil rader. Send resultatet rett til et regneark med create_sheet og append_to_sheet, eller til et dokument med create_doc.

Les tilbake, og rapporter så

Etter mutate-kallet leses treet tilbake fra Google, og sammendraget du får, er bygget fra den tilbakelesingen, aldri fra det som ble forespurt. Det er en liten disiplin som fanger den spesifikke feilen der en agent med sikkerhet forteller en historie om en kampanje som plattformen faktisk tvang eller avviste.

Det den ikke gjør uten å spørre

En agent med et budsjett er bare nyttig hvis skadeomfanget er avgrenset, så utgiftsmyndigheten er sperret på serveren og ikke i en prompt. Meta-kampanjer, annonsesett og annonser opprettes PAUSED, uten overstyring fra kalleren. Statusbryterne som kan slå på reell annonseutgift (én på hver annonseplattform: set_meta_campaign_status, set_google_ads_status, set_microsoft_ads_status, set_reddit_ads_status, set_linkedin_ads_status, set_pinterest_ads_status, set_x_ads_status og set_openai_ads_status blant dem) nekter å kjøre uten et uttrykkelig bekreftelsesflagg, og den samme sperren dekker å opprette et aktivt Google Ads-annonsesett, annonse eller søkeord under en allerede aktiv forelder, fordi det vises i neste auksjon. Sletting krever også bekreftelse. På genereringssiden viser hermoso_capabilities hver modells eksakte kreditkostnad før noe kjøres, og hver rendering reserverer et estimat og gjør opp den faktiske kostnaden etterpå, så en mislykket utsending refunderes i stedet for å stille belaste deg.

Koble til Google Ads-kontoen din

Du kobler Google Ads til Hermoso gjennom Googles egen OAuth-flyt under Innstillinger, Koblinger i Hermoso. Ingen passord går gjennom modellen. Google Ads-tilkoblinger deles på merkevarenivå, så et helt team på en merkevare jobber fra én tilkobling i stedet for at hver person autoriserer på nytt.

Den kreative delen

Kampanjestyring er bare nyttig hvis det er noe å kjøre. Den samme serveren undersøker hva som allerede vinner i markedet ditt på tvers av Meta-, Google- og LinkedIn-annonsebibliotekene, rendrer ferdige bilde- og videoannonser forankret i det faktiske produktet ditt på tvers av over 100 modeller, og laster opp aktivaene. Derfor er “hva bør vi kjøre” og “bygg det” én samtale i stedet for to verktøy. Se oversikten over markedsførings-MCP, den fullstendige verktøylisten, eller Meta Ads MCP hvis du kjører begge.

Ofte stilte spørsmål

Finnes det en MCP-server for Google Ads?

Ja. Hermosos MCP-server bygger og administrerer Google Ads fra enhver MCP-klient: create_google_ads_campaign, create_google_ads_ad_group, create_google_ads_ad og add_google_ads_keywords for å bygge et søke- eller display-tre; create_google_ads_performance_max_campaign for Performance Max; set_google_ads_budget, set_google_ads_bidding og set_google_ads_targeting for konfigurasjon; google_ads_keyword_ideas for Keyword Planner-research; list_google_ads_campaigns og google_ads_report for rapportering; Merchant Center-lesing for produktfeeden bak en Shopping-kampanje; og en bekreftelsessperret set_google_ads_status for å aktivere.

Kan en AI-agent opprette en Google Ads-kampanje?

Ja, og hele treet opprettes i én atomisk operasjon med midlertidige ressurs-id-er: kampanje, annonsegruppe, responsiv søke- eller displayannonse og søkeord sammen. Hvis annonsen blir avvist, ble budsjettet heller aldri opprettet, så du står ikke igjen med foreldreløse objekter som må ryddes opp. En tørrkjøringsmodus validerer treet mot det levende API-et uten å opprette noe.

Kan den opprette en Performance Max-kampanje?

Ja. create_google_ads_performance_max_campaign bygger budsjett, kampanje, målretting, ressursgruppe og alle aktivakoblinger i én atomisk operasjon, fordi Google krever dem sammen. Kampanjen opprettes pauset og leses tilbake før agenten rapporterer om den. Googles minimumskrav til aktiva håndheves før noe sendes: 3–15 overskrifter, 1–5 lange overskrifter, 2–5 beskrivelser, et firmanavn, og minst én logo, ett markedsføringsbilde og ett kvadratisk markedsføringsbilde. PMax byr bare på konverteringer, så den nekter å bygges på en konto uten aktiv konverteringshandling, i stedet for å opprette en kampanje som ikke kan optimaliseres. Shopping-feed (retail) PMax fungerer på samme måte: send inn merchantCenterId, så annonserer kampanjen Merchant Center-katalogen din, med feedLabel for å begrense den til én feed, og tilbakelesingen viser Merchant Center-kontoen og feed-etiketten Google faktisk lagret.

Fungerer det med Google Merchant Center?

Ja, både lesing og skriving, over den samme Google-tilkoblingen. Agenten kan liste Merchant Center-kontoene kontoen din kan nå, lese produktene i en feed (katalogen en Shopping- eller retail-Performance Max-kampanje faktisk viser), og lese problemene på kontonivå Google reiser, som er det eneste stedet å finne ut hvorfor et produkt ikke vises, siden et avvist produkt ikke har visninger for Google Ads-rapportering å vise. Google krever en engangsregistrering av Hermosos Cloud-prosjekt mot Merchant Center-kontoen din før API-et svarer, og det finnes et verktøy som utfører den. Det skriver også: create_merchant_data_source, upsert_merchant_product, update_merchant_product for prisendringer og tilgjengelighetsendringer som endrer seg daglig, og bekreftelsessperret delete_merchant_product og delete_merchant_data_source. Google godtar bare produktskrivinger i en API-datakilde, så Hermoso finner en skrivbar feed for deg og avviser med navn hvis kontoen har flere.

Kan den gjøre søkeordresearch?

Ja. google_ads_keyword_ideas kaller Googles Keyword Planner og returnerer reelle månedlige søkevolum, konkurranse og bud-intervaller for toppen av siden, basert på søkeord, en landingsside-URL eller et helt nettsted. Agenten kan ta dem rett over til add_google_ads_keywords, eller skrive dem til et Google-regneark.

Kan den begynne å bruke Google Ads-budsjettet mitt?

Bare med en uttrykkelig bekreftelse. set_google_ads_status er bryteren som aktiverer reelle penger, og fordi opprettelse av et aktivt barn under en allerede aktiv forelder viser annonser i neste auksjon, beskytter den samme bekreftelsen også create_google_ads_ad_group, create_google_ads_ad og add_google_ads_keywords når forelderen er aktiv. Negative søkeord begrenser bare utgifter og sperres aldri.

Kan den kjøre rapporter?

Ja. google_ads_report tar vilkårlig GAQL, så agenten kan be om den delen den trenger. Merk at GAQL ikke er SQL: det har ingen underspørringer, og IN tar en bokstavelig liste, så en WHERE id IN (SELECT …) er ugyldig. Resultatene kan skrives rett til et Google-regneark eller -dokument.

Hvilke bud og målretting kan den sette?

Seks budstrategier, kampanjeplan, og målretting etter geografi og språk, med find_google_ads_locations for å finne målsteder etter navn. Budsjetter settes med set_google_ads_budget, og søkeord støtter negative søkeord og CPC per søkeord.

Får agenten passordet til Google-kontoen min?

Nei. Du kobler til Google Ads gjennom Googles egen OAuth-flyt under Innstillinger, Koblinger i Hermoso, og Hermoso holder på tokenet som oppstår. Agenten kaller bare Hermosos verktøy. Google Ads-tilkoblinger deles på merkevarenivå, så et helt team jobber fra én tilkobling.

Kan den lage annonsekreativene også?

Ja. Den samme serveren undersøker konkurrentenes annonser, planlegger konseptet, rendrer ferdige bilde- og videoannonser på tvers av over 100 modeller med det faktiske produktet ditt komponert inn, og laster opp aktiva med upload_google_ads_asset, så research, kreativ og kampanjebygging skjer i én samtale.

Koble til Google Ads én gang, så kan agenten din undersøke markedet, skrive annonsen, bygge treet og rapportere om det, med en hard sperre før noe bruker penger.

Start gratis →   Les MCP-dokumentasjonen →