Two of the tools answer the questions people ask constantly — how are campaigns doing, which ads are working — and the other two hand you the query language for everything else, with CSV output when the answer is going into a spreadsheet. The guidance bundled with the server on segments and metrics is worth reading first: in GAQL, which fields you select silently changes how rows are grouped, and that is where a wrong number usually comes from.
A Google Ads client for MCP. It lists the accounts your credentials reach and runs Google Ads Query Language against them, with a couple of ready-made performance reports on top.
- Every Google Ads account the credentials can see — list_accounts
- Any GAQL query executed against an account — execute_gaql_query
- The same, with a choice of output format: table, JSON or CSV — run_gaql
- Campaign metrics for an account over a period you name — get_campaign_performance
- Ad creative performance in detail, for comparing what the copy is doing — get_ad_performance
- GAQL guidance shipped alongside the server, covering resources, attributes, segments and metrics and how each affects the shape of a result
Google Ads API access: a developer token in GOOGLE_ADS_DEVELOPER_TOKEN, a credentials file at GOOGLE_ADS_CREDENTIALS_PATH, and GOOGLE_ADS_AUTH_TYPE set to oauth or to service account. Manager accounts also set GOOGLE_ADS_LOGIN_CUSTOMER_ID to the manager id, which is the setting people most often get wrong. Python, and the server launched from the repository through your MCP client's config.
One command plus a key — uvx mcp-google-ads, then supply credentials
