Adalysis published the explainer for its Google Ads MCP server on 10 September 2026, and the product page behind it is live now. The company sells an auditing product, so it wrote down exactly what the connector can and cannot do, and the permissions model too.
Which makes the other thing it publishes more interesting. The same company keeps a change history — a genuine one, not a marketing phrase — and one documented setting decides whether that record names your analyst or your admin. The third governance property we have found shipped as a switch in two weeks, and the one that governs the only field that makes a record worth keeping.
The careful part is the AI layer
Its MCP documentation states the boundary plainly:
“Currently, it’s read-only. All of its tools read data and nothing more.”
The docs go further than the marketing page. The connector cannot change, pause, or create anything in your Google Ads accounts, or change your Adalysis settings; nothing it does is applied to a live account. It inherits your permissions exactly — “the connector sees exactly the accounts you could already see when signed in to Adalysis. Not one account more.” There is no API key to generate, copy, or store. Connection runs through OAuth, and revoking it is one step: delete the key under Settings → Integrations and access stops immediately.
That is better documented than most of this cohort manages — the paragraph you want to hand over when a client asks what an AI tool can touch inside their ad account.
So read the two places “approve” appears in the same document. The first is setup step six — “sign in to Adalysis and approve it” — an OAuth consent button. The second is a sample prompt: “List the ads in this campaign with their text, performance, ad strength, and approval status.” That is a field the connector reads from Google.
The record is real, and it is a mirror
Adalysis keeps a change history and documents it as one. Under Settings there is a Change history view with a Local change history tab for “changes made directly in Adalysis” and a Google Ads change history tab, plus a Microsoft Ads view reached by switching platforms. A separate user login history shows logins for the whole team, and the ad-testing documentation notes that archived results “record all changes from both the automated or manual test result screens.”
That is more record surface than most of this category has — and by its own description, a mirror of somebody else’s ledger: “Google Ads change history shows changes made in Google Ads.”
So the record has two halves and neither is the agency’s. One is what the platform already logs about itself, rendered inside a tool you rent. The other lives in Adalysis. When an account is restricted, when a client leaves, when a connector key is deleted, the record you can reach is the record your tool can still show you. Ott’s Activity Logging stores its four fields — timestamp, actor, before-and-after values, linked object — independently of the platform that accepted the change, so the record survives the restriction rather than dying with it. That is not a knock on Adalysis’ architecture; it is a statement about where the evidence sits.
Who made the change is a setting
Here is the line, from Adalysis’ team-member documentation:
Changes appear in Change History under:
- Admin user: Changes made by this team member will appear in Google’s Change History under the Adalysis admin user (account owner). This setting is useful when you want to keep the team permissions in Adalysis independent of those in Google Ads. In other words, team members don’t need direct access to Google Ads accounts for them to be able to make changes to it in Adalysis.
- Team member: Changes made by this team member will appear in Google’s Change History under their own email address. The team member email address must also have access permission in Google Ads to the relevant account or MCC.
Read that as an engineer and it is thoughtful design: it lets an agency run its own access model without mirroring every analyst into every client’s Google Ads account. Read it as the person answering a regulator and it is a record whose actor field has two positions, one of which is the wrong name.
The mechanics matter, because precision is the argument. The person who clicked still has a session, the change still happened, and the login history still knows they were in the tool. But the change entry itself — the thing you would hand over — attributes the work to the account owner. Three analysts sharing a client are one name in the log.
This is the third act in a series we did not plan. On 15 September we wrote about a vendor documenting an approval menu whose first option reads “No human approval: Changes apply immediately.” On 16 September, one selling audit-log retention by the day beside a sibling page promising logs are never purged on a timer. The rule holds: in the write era every governance property is a setting, and every setting has a position that produces no evidence. Supermetrics made the gate a setting. Synter made the lifetime a setting. Adalysis made the name a setting.
239 pages, and zero approvals
Absence claims are cheap, so here is the count. Adalysis publishes a machine-readable index of its whole help centre — 239 pages — and its docs have Markdown versions, which makes the scan exact rather than approximate:
| Term | Docs index (239 pages) | MCP docs | Team members | Change history |
|---|---|---|---|---|
| actor | 0 | 0 | 0 | 0 |
| human | 0 | 0 | 0 | 0 |
| attribution | 0 | 0 | 0 | 0 |
| approv (any form) | 22 — all Google Ads policy statuses | 2 — OAuth consent + a Google read field | 0 | 0 |
| record | 0 | 0 | 0 | 0 |
| retention | 0 | 0 | 0 | 0 |
| export | 0 | 0 | 0 | 0 |
| jurisdiction | 0 | 0 | 0 | 0 |
| compliance | 0 | 0 | 0 | 0 |
| governance | 0 | 0 | 0 | 0 |
The word “audit” appears 97 times in that same index. The word “compliance” appears zero times.
What Adalysis ships instead of approval is access control, documented honestly: a team member is either “View only — can see all data but can’t make changes” or “View & edit — can make changes in Adalysis.” That is a real gate on who may act, and a different object from approval, which is an event: a named person deciding that this change, on this client, today, is the one that goes. Permission is a precondition. Approval is a decision, and a decision is what a regulator asks you to produce.
An audit that is a to-do list
Adalysis’ own definition of its central noun, from the file it publishes for AI assistants: “Daily PPC audits for account health, performance and effective spend.” The product page says it in the imperative: 100+ prebuilt checks run daily, ranked by urgency, fixable directly in Adalysis. The help centre adds an auto-resolve path — “Resolve straightforward alerts automatically and save valuable time” — and one prebuilt alert is named “Auto-apply settings are enabled.”
That is a good product, and a different object from the thing a finance agency gets asked for. Two audits, one noun:
| An Adalysis audit | The audit a regulator means | |
|---|---|---|
| Unit | An account or campaign | A decision |
| Produces | A ranked list of issues to fix | A reconstruction of what happened |
| Direction | Forward — what to do next | Backward — what was done, by whom |
| Time horizon | Today, and yesterday against it | Fourteen months ago, on demand |
| Names a person | Only if the attribution setting says so | Always the question being asked |
| Survives losing the account | No — the change history is the platform’s | It has to, or it is not evidence |
Adalysis even ships a nudge toward the second column: a prebuilt alert called “Bidding change review reminders,” at four levels, so a team gets prompted to look at what changed. A reminder is a workflow. It is not a record that the review happened, who did it, or what they concluded.
The AI-facing description is three months behind the product
That file deserves a second look for what it is. Adalysis publishes an “AI instructions” page — its words: “structured information about Adalysis, intended for AI assistants such as ChatGPT, Claude, Perplexity, Gemini, and other large language models.” A deliberate document that tells every model how to describe the company.
It also says this: “Adalysis primarily focuses on automation, monitoring, and analysis rather than AI-driven campaign management. Current AI functionality is limited compared with many AI-first PPC platforms.” And it dates itself: “Last updated: June, 2026.”
So the canonical description of Adalysis handed to AI assistants in September 2026 is a June document that calls its AI functionality limited, never mentions the September connector, and quotes a “$149 per month” starting price while the live pricing page prices on “Maximum monthly ad spend (in USD).”
No point being scored here, because we would fail the same test: any page describing your product to machines goes stale the moment you ship. It belongs for a narrower reason. When a client’s compliance officer asks an assistant what Adalysis does, they get the June answer — and the September answer is the one that concerns them. Credit where it lands, though: Adalysis also publishes a “What Adalysis is not” list, including “A fully autonomous AI agent that manages campaigns without human review.” Refusing a category in writing, on the page machines read, is a discipline most of this cohort has not adopted.
AgencyAnalytics extended the same direction
The second September data point is not a competitor moving differently, but one moving identically. AgencyAnalytics’ MCP feature page adds two sources to what its connector reads: “Google Search Console, Google Analytics, Google Ads, Rank Tracker, SE Ranking, Bing Webmaster Tools, and Site Auditor are among the sources it reads.”
Its scoping is read-time scoping done properly: “A question put to AgencyAnalytics runs against one client’s connected data, so the answer stays inside that account,” and “your existing AgencyAnalytics permissions carry over automatically.” Per-user connections, per-client answers, no shared credential.
Now count the words on that page — about 2,115 words of visible text: approval 0 · record 0 · compliance 0 · governance 0 · export 0 · jurisdiction 0 · retention 0. The single occurrence of “audit” is the product name Site Auditor, a tool that crawls websites. The single occurrence of “write” is about a human writing an email: “Your team writes the client communications right where they’re already working, with accurate figures ready the moment they ask for them.”
That sentence is a feature description with an evidence gap inside it. The AI produces the numbers, the human writes the email, the email leaves the building, and nothing on the page covers what the numbers were when the recommendation went out, or that a machine produced them. Read-time scoping answers “who can see which client, right now.” A record answers “who asked what, when, and what did the data say when it left.” Different questions, and only one is written down. The head-to-head with AgencyAnalytics covers the rest of the stack.
Six questions that separate a to-do list from a record
None of this requires switching tools. It requires running the drill once on your own stack, before a client asks. Each question ends in a decision you can make now.
- Open your change history and pick one entry from last quarter. Does it name a person, or a role? If it says “admin” for a change one of your analysts made, you have found the setting.
- Find the attribution control and read both positions aloud. In Adalysis that is the Admin user / Team member choice in Settings → Team. Decide deliberately which position your client accounts sit on, and write down why.
- Ask where the record physically lives. If it is a view of the platform’s own log, it dies with the account. If it is your tool’s database, it does not.
- Search your own documentation for “approv”. Do it the way we did: every hit, read individually. If they are all policy statuses and consent buttons, you have no approval event anywhere in your stack — and neither does most of the category.
- Pick one live campaign and write down which client it belongs to. Client → Brand → Account is the boundary a compliance team asks about, and it is usually the one an ad account does not express.
- Then ask an assistant what your platform does. If the answer comes from a page dated months ago — theirs or yours — you have found the second gap, and it is five minutes of work to close.
The pattern is the same as the three settings. A capability that names a person, at a moment, on a specific client’s account is a record. Everything else is a workflow that happens to produce a log, and a workflow is what a regulator declines to accept in place of evidence.
Adalysis documented the half that is easy to document, better than almost anyone: read-only is a statement about capability, so it fits in a paragraph. The other half is a statement about people — who decided, who reviewed, who is on the hook — and people are the part that goes in a setting. The governance repos learned this the same way: they shipped gates for machines and none for names.