Anyone managing Google Ads accounts spends a disproportionate share of the day doing the same thing: pulling data, cross-referencing it, working out where the problem is. Not deciding — collecting. AI assistants are good at exactly that part, but for years they had one insurmountable flaw: they could not see the account. You could paste a report at one; you could not ask it to look.

AdsPulse exists to close that gap. It is the Google Ads MCP server we built at Konvtrack, now available in beta access at adspulse.dev.

What an MCP is, in two paragraphs

MCP stands for Model Context Protocol: the standard by which an AI assistant connects to an external system and uses its functions in a structured way. It is not a graphical integration and it is not a chatbot glued on top of a dashboard — it is a channel through which the model calls real operations, reading a report or proposing a change, and gets real data back.

Applied to Google Ads that means something concrete: instead of exporting a CSV, pasting it and hoping the context is enough, the assistant queries the account. The difference is not convenience, it is reliability — there is no copy of the data ageing between one question and the next.

What AdsPulse covers

Surface area is what separates a useful MCP from a demo. AdsPulse exposes 31 domain managers, each with its own actions, organised the way an account is actually worked:

AreaWhat it covers
Performance and reportingReports, campaigns, ad groups, ads, change history
Search and keywordsKeywords, search terms, negative keywords, keyword planner
Performance MaxPMax campaigns, asset groups, assets, channels
MeasurementConversions, conversion goals, conversion value rules
Bidding and budgetsBidding strategies, budgets, bulk operations
Audiences and targetingAudiences, targeting, placements
Creative and destinationsCreative studio, landing pages, landing page audits
Advanced analysisFree-form GAQL queries, competitive analysis, recommendations

The GAQL manager deserves its own note. GAQL is the Google Ads API query language: being able to write free-form queries — with a dedicated action that lists the available fields for a resource first — means not being limited to pre-packaged reports. It is the difference between "show me campaign performance" and "show me budget-limited campaigns with impression share lost above 30% and CPA above target over the last 90 days".

The part that matters: no write without approval

This is what we designed first, because it decides whether a tool like this can touch real accounts.

Every action that changes something follows two mandatory steps:

  1. Preview. The call runs with confirmation off: nothing is written. What comes back is an exact description of what would change, plus a confirmation token.
  2. Approval. The preview is shown in full to a person. Only after they agree is the same operation called again with that token.

The token is single-use and bound to the previewed arguments: change anything in the request and the token is void, and the cycle starts again. Destructive actions — removals, permanent exclusions — are explicitly marked as such and treated with the same care.

Why this is a product decision, not a limitation. An assistant that can change an account without friction is an assistant that will eventually change one by misunderstanding. The second step costs ten seconds per operation and makes the silent error structurally impossible: what gets written is exactly what a person read and approved.

How an account is connected

Authentication uses a personal API key. A session starts by choosing the context — a manager account (MCC), or direct access for accounts that sit under no MCC — and then the client account to work on; you can switch between clients at any point without reconfiguring anything.

Reads accept preset date ranges — last 7, 30 or 90 days, current month — which is almost always what an operational analysis needs, with GAQL alongside for any other cut of the data.

What we actually use it for

Not for running campaigns unattended: no serious account manages itself, and that is not the point. We use it to compress the time between a question and its documented answer. Three examples from ordinary work:

  • Search terms audits. Cross-referencing spend, conversions and emerging themes over 90 days is exactly the work described in governing negative keywords — and by hand it takes an afternoon.
  • Quality diagnosis. Sorting keywords by spend and isolating the ones with a component below average, as in the Quality Score review.
  • Measurement checks. Verifying attribution models, conversion windows and consistency across dozens of campaigns — the first step of the reasoning in data-driven attribution.

In all three the value is not the answer: it is that collection stops being the bottleneck and the time moves to the decision.

Beta access

AdsPulse is in beta access at adspulse.dev. It is a Konvtrack product and it comes from the accounts we run: every manager exists because we needed it before it became a feature.

If you manage Google Ads accounts and want to try it, registration starts there. If you are more interested in the work behind it, the free audit is the most direct way to see it applied to your account: you can also see how we work and which services we offer.