mcp-google-ads
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | SSE bind host | 127.0.0.1 |
| MCP_PORT | No | SSE bind port | 3001 |
| MCP_TRANSPORT | No | Transport type: stdio or sse | stdio |
| GOOGLE_ADS_ACCOUNTS_CONFIG | No | Path to accounts config file | ~/.config/mcp-google-ads/accounts.json |
| GOOGLE_ADS_DEVELOPER_TOKEN | Yes | Your Google Ads API developer token |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accountsB | List all configured Google Ads accounts and which is the current default. |
| set_default_accountA | Set the default account used when no account is specified in other tools. |
| list_customersA | List all accessible Google Ads customer accounts. If customer_id is provided, lists child accounts under that MCC. Otherwise lists all accessible accounts for this login. |
| get_account_summaryB | Get top-level spend and conversion totals for an account. |
| list_campaignsC | List campaigns for an account. |
| get_campaign_performanceC | Get campaign performance metrics for a date range. |
| compare_periodsC | Compare performance between two date ranges. |
| get_keyword_performanceA | Get keyword-level performance including quality scores. |
| search_terms_reportB | Get actual search terms that triggered your ads. |
| get_ad_performanceB | Get ad-level performance (headlines, descriptions, CTR, conversions). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Most tools are clearly distinct by entity (accounts, campaigns, keywords, ads) and action (list, get, set, compare). However, list_accounts and list_customers both list accounts with subtle differences (configured vs accessible) that could cause confusion.
Tool names predominantly follow a verb_noun pattern (list_*, get_*, set_*). The deviations are 'compare_periods' (verb_noun but not get/list) and 'search_terms_report' (noun phrase without a verb), but the overall pattern is still readable and predictable.
Ten tools is well within the ideal range for a domain-specific server. Each tool covers a distinct aspect of Google Ads reporting and account management, and none feel redundant or excessive.
The server provides comprehensive read/reporting coverage: account listing, summaries, campaign/keyword/ad performance, search terms, and period comparison. It lacks management operations like creating or updating campaigns, but this seems intentionally scoped to analytics and account selection, so the gaps are minor.