For anyone running ads across several accounts, the account manager is the whole point: every tool takes an account name, there is a default you can change mid-session, and the credentials for each live in one config file. The reporting itself goes down to the level that answers questions — quality scores on keywords, and the search terms that actually triggered the ads, rather than only campaign totals.
A read-oriented Google Ads reporting server built around an account manager, so one running server can address many client or in-house accounts by name.
- The configured accounts listed with which one is currently the default, and the default switched without restarting
- Accessible customer accounts listed, or the child accounts under a manager account when you name one
- Top-level spend and conversion totals for an account over a date range
- Two date ranges compared, with an optional breakdown, for period-over-period reporting
- Campaigns listed with a status filter, and campaign performance metrics over a range
- Keyword-level performance including quality scores, bounded by a row limit
- The actual search terms that triggered your ads
- Ad-level performance — headlines, descriptions, click-through rate, conversions
A Google Ads API developer token from the API Center, passed as GOOGLE_ADS_DEVELOPER_TOKEN, plus an accounts file: GOOGLE_ADS_ACCOUNTS_CONFIG points at an accounts.json holding the OAuth credentials for each account you want reachable, and the repository ships an accounts.example.json documenting its shape. Run it with uvx mcp-google-ads-multi over stdio, from the PyPI package mcp-google-ads-multi, currently 0.1.0; MCP_TRANSPORT=sse with MCP_HOST and MCP_PORT switches to remote hosting. Transient Google Ads API failures are retried with backoff. The project describes its release posture as beta.
One command plus a key — uvx mcp-google-ads-multi, then supply credentials
