Connect Groas to Claude

Groas runs and audits Google Ads accounts. Its MCP server lets Claude (and any other MCP client) read your campaigns, keywords, search terms, daily performance and the actions Groas has taken on your behalf — and, if you opt in, make changes.

1. Prerequisites

  1. A Groas account. Sign up free at app.groas.ai.
  2. At least one Google Ads account connected to it, at Dashboard → Ad platforms. The first sync takes a few minutes; until it finishes the tools report that no accounts are connected.

2. Connect in Claude (web, desktop, mobile)

  1. Open Customize → Connectors.
  2. Find Groas in the directory and click Connect. If it is not listed for your organization, choose Add custom connector and enter https://mcp.groas.ai/mcp. Leave the OAuth client ID and secret fields empty.
  3. A Groas sign-in window opens. Sign in and review the permission summary. Connections are read-only by default; with an active Groas paid-ads subscription you can tick Also allow changes to let Claude edit budgets, bids, keywords and campaigns through Groas. Click Allow. Organisation member logins cannot connect: sign in with the account owner's own Groas login.
  4. Back in Claude, enable the Groas connector in a chat and ask, for example, "Which of my campaigns lost the most conversions this week?"

On a Claude Team plan, members without connector permissions see a Request button instead; an admin then enables Groas for the organisation.

3. Connect in Claude Code

claude mcp add --transport http groas https://mcp.groas.ai/mcp

Run /mcp inside Claude Code to complete the browser sign-in the first time; the consent screen offers the same write opt-in. The same command with an API key header skips OAuth entirely — see section 6.

4. Other MCP clients (Cursor, ChatGPT, Windsurf, …)

Any client that supports remote MCP servers over Streamable HTTP with OAuth works. Point it at https://mcp.groas.ai/mcp; the server advertises its OAuth metadata, supports dynamic client registration and PKCE, and hands sign-in to app.groas.ai. A typical mcp.json entry:

{
  "mcpServers": {
    "groas": { "url": "https://mcp.groas.ai/mcp" }
  }
}

5. What Claude can do

Every tool takes an accountId; Claude discovers the ids with List Google Ads accounts first, so you can simply name the account.

Read tools (every connection)

Tool Use it to
List Google Ads accounts See which accounts you can query.
List campaigns · List ad groups · List keywords · List search terms Browse account structure with status and settings.
Campaign / ad group / keyword / product daily performance Cost, clicks, conversions and value per day for any date range.
Query Google Ads (GAQL) · Look up GAQL fields Ask arbitrary questions the fixed reports do not cover.
Account audit · Conversion tracking audit Groas's findings on account health and tracking gaps.
List Groas actions · List Groas action failures Every change Groas made autonomously, with reasoning, and anything that failed.
Research keywords · Keyword seasonality Search volume, competition and seasonal trends for new keyword ideas.
List brands and offers The brands and offers Groas manages for you.

Write tools (sign-in with Also allow changes ticked, or an API key with the write scope)

Some example prompts:

6. Write access

Two ways to let a client make changes:

Sign-in with the write opt-in. When the client asks for write access (Claude does), the Groas consent screen shows an Also allow changes checkbox, off by default. It is available only to accounts with an active Groas paid-ads subscription (or lifetime paid-ads access); free and organic-only accounts stay read-only. Groas re-checks the entitlement on every change, so a lapsed or downgraded plan stops changes immediately. To go back to read-only, remove the connector and connect again without ticking the box.

API key. Keys are not tied to the consent screen and work in any client:

  1. In Groas open Account settings → API Keys and create a key with the write scope. Keys start with grs_live_.
  2. Send it as a bearer token:
claude mcp add --transport http groas https://mcp.groas.ai/mcp \
  --header "Authorization: Bearer grs_live_…"

A key with only the read scope is read-only. Rotate or delete keys in the same settings page; a deleted key stops working immediately.

7. Permissions, safety and privacy

8. Troubleshooting

Symptom Fix
"No Google Ads accounts are connected" Connect one at Dashboard → Ad platforms and wait for the first sync to finish.
Write tools are missing or refused The connection is read-only: you did not tick Also allow changes, your paid-ads subscription is not active, or the key lacks the write scope. See section 6.
"Invalid or revoked API key" The key was deleted or mistyped. Create a new one and update the header.
Sign-in window says the consent token expired Start the connection again from the client; consent links are short-lived.
HTTP 429 Rate limit reached. Wait a minute or spread work across credentials.
Connector shows as "Custom" after an update Remove it and add Groas again from the directory.

Still stuck? Email support@groas.ai with the client you are using and the exact error text.

← Back