Early on, LinkedIn pundits started calling time on Google Ads MCP servers.

Not because the concept was wrong. Because the AI kept making things up.

We'd ask for a search terms report. The server would dump 2,000 rows of data directly into the AI's context. The AI would try to process it all inline. And somewhere around row 400, it would start hallucinating: wrong numbers, invented campaign names, confident summaries of things that didn't exist.

The failure mode wasn't the AI. It was the architecture. We were asking a language model to hold a spreadsheet in its head, instead of running analysis via code on a csv.

The fix isn't smarter AI - it's less data in the conversation

Google Ads is structurally different from most things you use an AI assistant for.

The data volumes are large. A single search terms report for a mid-size account can run to thousands of rows. A keyword list across 50 campaigns is not something you want printed inline in a chat window.

When I ran into the hallucination problem, the solution wasn't to cap the data or reduce what HireOtto could pull. It was to separate two things that were getting conflated: reading the data and processing it.

The AI is excellent at structural analysis: spotting patterns, grouping terms, flagging waste, surfacing the top 10 from a list of 3,000. What it doesn't need to do is hold all 3,000 rows in the conversation at once.

That's what output modes solve.

Summary → results appear inline in the chat. Fast, readable, ready to act on. Best for quick checks where you want to see the data and do something immediately. Capped at 50 rows by default (you can ask for more).

Summary and CSV → inline summary plus a download link for the full export. This is the default for most reporting tools. You get the fast read in chat; the complete data lives in the CSV.

CSV only → just the download link. Nothing printed inline. The AI client doesn't try to process the rows at all. Best for automation, large accounts, or any time you're pulling data that's going straight into a spreadsheet or a downstream tool like Make.

The CSV links are signed and expire after 30 minutes by default (you can ask for more).

Being intentional about which mode you use

Most of you are probably getting summary_and_csv without thinking about it — that's the default for reporting and change history tools while keyword planner and listing tools default to summary.

That's fine for most situations. But it's worth knowing the choice exists.

  • If you're running a quick Monday check on 8 campaigns, summary is enough — no CSV needed.

  • If you're pulling the full search terms list for an account you'll work through in Sheets, skip the inline summary entirely: csv_only keeps the context clean and the AI focused.

  • If you're building a Make automation that pulls data and routes it downstream, csv_only is the only mode that makes sense — the AI client is just a pass-through.

You can say it naturally in the prompt:

Pull keyword performance for the last 30 days — just the CSV.
Show me the top 20 search terms by spend this month.
Export the full campaign performance report, CSV only, export limit 10,000.

Your AI reads intent from natural language, so you don't need to memorise the mode names. But if you want to be explicit, output mode: csv_only works too.

Why this matters beyond HireOtto

I don't know how many other Google Ads MCP servers handle this deliberately.

What I do know is that the operators who gave up on Google Ads MCP last year - "the AI keeps making stuff up" - were almost always hitting a data volume problem, not an AI problem. The server was flooding the context. The AI was doing its best with too much.

If you ever run into slow responses, unexpected AI behaviour, or summaries that don't quite match what you know about the account - switch to csv_only for that pull. Get the data out of the conversation. Then ask the AI to analyze the CSV.

That's the pattern that works. The AI reasons while the CSV holds the data.

If you've been running into anything like this, or if you want to know which mode makes sense for a specific workflow you're building, reply and let me know.

— Suyash

Keep Reading