mcpField
M
mcp-google-ads-transparency-monitor

mcp-google-ads-transparency-monitor

Local
github.com/mambalabsdevBusiness & Marketing0Updated 1w ago

About mcp-google-ads-transparency-monitor

An MCP server that retrieves a company’s ads from Google Ads Transparency Center by domain or advertiser name. It returns ad formats and dates alongside a summary of Google’s reported ad-count band.

Key features

  1. 01Search by domain or advertiser
  2. 02Retrieve ad formats and display dates
  3. 03Return creative and Transparency Center links
  4. 04Summarize Google’s ad-count band
  5. 05Filter by region, format, or recency

Use cases

  1. 01Review a company’s Google ads
  2. 02Compare advertisers across domains
  3. 03Find recent video or image ads
  4. 04Check ad activity by region

MCP support

Exposes the `get_google_ads` tool to MCP clients. It starts an Apify actor run and returns dataset rows from the public Google Ads Transparency Center.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"com-mambabuilt-mcp-google-ads-transparency-monitor": {
"command": "npx",
"args": [
"-y",
"@mambalabsdev/mcp-google-ads-transparency-monitor"
],
"env": {
"APIFY_TOKEN": "<APIFY_TOKEN>"
}
}
}
}
Run commandnpx -y @mambalabsdev/mcp-google-ads-transparency-monitor
Environment variables to set
APIFY_TOKENSecretApify API token from https://console.apify.com/account/integrations

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@mambalabsdev/mcp-google-ads-transparency-monitor1.0.1

Tools

1

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
regionstringNoWhere the ads were shown: anywhere, or a two letter country code such as US, GB, DE, or FR. Default anywhere.
domainsarrayNoSeveral company domains. Each gets its own ad rows and summary row. Up to 500 inputs per run.
formatsarrayNoLimit to text, image, or video ads. Omit for all formats.
max_adsstringNoAd rows per input, 1 to 1000. Each ad row is billed. Default 50.
skipCacheenumNotrue reads fresh results instead of the free 24 hour cache in your account. Default false.false | true
proxy_modeenumNoauto connects directly and moves to the Apify proxy default pool if Google refuses a request; direct never uses a proxy; residential uses Apify residential proxy. Proxy use adds nothing to the price. Default auto.auto | direct | residential
since_daysstringNoOnly ads last shown in this many days. 0 returns every ad Google lists. Default 90.
company_domainstringNoA company website domain, for example stripe.com. Returns the ads Google lists for that domain. Give this, advertiser_name, or one of the lists.
max_charge_usdstringNoOptional. The run stops before any row that would take its charges over this amount.
advertiser_namestringNoAn advertiser name as Google verifies it, for example Stripe, Inc. Exact name matches are used, up to 5 advertisers; otherwise the closest suggestion, labeled closest.
include_summaryenumNoOne extra summary row per input, billed only when ads were found. Default true.true | false
advertiser_namesarrayNoSeveral advertiser names.

Details

From the project README

Google Ads Transparency Monitor MCP Server

Smithery Glama score MCP Registry npm version npm downloads license mcpservers.org

Google Ads Transparency Monitor MCP server

An MCP server for the Mamba Labs Google Ads Transparency Monitor actor on Apify. Give it a company domain or an advertiser name. Each run reads Google's public Ads Transparency Center and returns one row per ad, with the format, first and last shown dates, a creative link, and the ad's page, plus a company summary row with Google's total ad count band.

What's Inside

What it does

List the Google ads a company runs. Give a company domain (for example stripe.com) or an advertiser name, or lists of either. You get one row per ad with the advertiser, ad ID, format (text, image, or video), first and last shown dates, a creative link, and the ad's Transparency Center page, plus one summary row per input that says whether the company runs Google ads, how many (Google's own count band, for example 8,000 to 9,000), and in which formats. Rows with no ads, blocked requests, or a changed Google page come back free with a row_status saying so.

All of the work runs on Apify. This package is a thin client that starts the actor run, waits for it, and hands back the dataset rows.

Quick start

You need Node.js 18 or newer and an Apify account with an API token.

Add this to your Claude Desktop config (claude_desktop_config.json), Cursor, or any MCP client:

{
  "mcpServers": {
    "mamba-google-ads-transparency-monitor": {
      "command": "npx",
      "args": [
        "-y",
        "@mambalabsdev/mcp-google-ads-transparency-monitor"
      ],
      "env": {
        "APIFY_TOKEN": "your-apify-token"
      }
    }
  }
}

Restart the client. The get_google_ads tool appears.

Prerequisites

Example prompts

  • "Does notion.so run Google ads? How many, and in which formats?"
  • "Show me the 10 most recent video ads HubSpot ran in the US."
  • "For stripe.com, ramp.com, and brex.com, which ones advertised on Google in the last 30 days?"

Tool

get_google_ads. One tool. Example arguments:

{
  "company_domain": "stripe.com",
  "max_ads": "20",
  "since_days": "90"
}

Inputs

Every buyer facing input of the live actor, unchanged. Omitted inputs take the actor's own defaults. Give one of company_domain, advertiser_name, domains, or advertiser_names.

InputTypeRequiredDescription
company_domainstringnoA company website domain, for example stripe.com.
advertiser_namestringnoAn advertiser name as Google verifies it, for example Stripe, Inc.
domainsarraynoSeveral company domains. Up to 500 inputs per run.
advertiser_namesarraynoSeveral advertiser names.
regionstringnoanywhere, or a two letter country code such as US, GB, DE, or FR. Default anywhere.
formatsarraynotext, image, video. Omit for all formats.
max_adsstringnoAd rows per input, 1 to 1000. Default 50.
since_daysstringnoOnly ads last shown in this many days; 0 for all. Default 90.
include_summarystringnotrue or false. Default true.
max_charge_usdstringnoOptional cost cap for the run.
skipCachestringnotrue reads fresh results instead of the free 24 hour cache. Default false.
proxy_modestringnoauto, direct, or residential. Default auto.

Pricing

Pay per event on Apify, billed to your Apify account. Prices in USD.

EventFree planBronzeSilverGold
ad-found, per ad row returned$0.002$0.0019$0.0018$0.0017
company-summary, per input with ads$0.003$0.00285$0.0027$0.00255
apify-actor-start, per run start$0.0005$0.0005$0.0005$0.0005

Rows with no ads, blocked rows, changed source rows, error rows, and cached rows are free.

Your keys

The actor needs no provider key. It reads Google's public Ads Transparency Center and holds no key of its own. If a run uses the Apify proxy, that traffic adds nothing to your price: Mamba Labs pays the platform costs of the run. proxy_mode is a reliability setting.

Full actor documentation

apify.com/mambalabs/google-ads-transparency-monitor

License

MIT. See LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.