Manage Google Ads campaigns, ad groups, keywords, and budgets — automate your PPC advertising with AI.
Use with AI AssistantsMCP
Connect Claude, Cursor, or any MCP-compatible client — then call tools directly
① Add This MCP Server
Paste into your AI client config — then all its tools are available instantly.
{
"mcpServers": {
"google-ads": {
"url": "https://mcp.aerostack.dev/s/aerostack/mcp-google-ads",
"headers": {
"Authorization": "Bearer YOUR_AEROSTACK_TOKEN"
}
}
}
}Replace YOUR_AEROSTACK_TOKEN with your API token from the dashboard.
② Call a Tool
Ask your AI assistant to call a specific tool, or send raw JSON-RPC:
Natural Language Prompt
“Use the _ping tool to verify google tasks credentials by calling a lightweight read endpoint. used internally by aerostack to validate credentials”
Using a Workspace?
Add this MCP to your Workspace — your team shares one token, secrets are stored securely, and every AI agent in the workspace can call it without per-user setup.
Manage Google Ads campaigns, ad groups, keywords, and budgets through the Google Ads REST API v17 — fully automated by AI agents.
Google Ads is the world's largest digital advertising platform, used by millions of businesses to reach customers through search, display, video, and shopping ads. This MCP server gives your agents complete access to the Google Ads API v17: listing and inspecting campaigns, ad groups, and ads, pulling keyword performance metrics, executing custom GAQL queries, and reviewing account budgets.
Live endpoint: https://mcp.aerostack.dev/s/aerostack/mcp-google-ads
| Tool | Description |
|---|---|
| _ping | Health check — returns "pong" if the server is running and secrets are configured |
| list_campaigns | List campaigns with status filter, budget, bidding strategy, and performance metrics |
| get_campaign | Get full details of a specific campaign — status, budget, bidding, optimization score, metrics |
| list_ad_groups | List ad groups within a campaign with CPC bids and performance metrics |
| get_ad_group_ads | Get ads in an ad group — headlines, descriptions, final URLs, approval status, metrics |
| search_query | Execute a raw GAQL query for advanced reporting and custom data pulls |
| get_keyword_metrics | Get keyword performance — impressions, clicks, CPC, conversions, quality score |
| get_account_budget | Get account-level budget info — approved/proposed limits, amount served, billing setup |
| Variable | Required | Description | How to Get |
|---|---|---|---|
| GOOGLE_ADS_DEVELOPER_TOKEN | Yes | API developer token for accessing the Google Ads API | Google Ads → Tools & Settings → Setup → API Center |
| GOOGLE_ADS_CLIENT_ID | Yes | OAuth2 client ID for authentication | Google Cloud Console → APIs & Services → Credentials → Create OAuth client ID |
| GOOGLE_ADS_CLIENT_SECRET | Yes | OAuth2 client secret for authentication | Same location as client ID |
| GOOGLE_ADS_REFRESH_TOKEN | Yes | OAuth2 refresh token for offline access | Obtained via OAuth2 consent flow with https://www.googleapis.com/auth/adwords scope |
| GOOGLE_ADS_CUSTOMER_ID | Yes | Google Ads customer ID (10 digits, no dashes) | Google Ads → top-right corner shows your customer ID |
GOOGLE_ADS_DEVELOPER_TOKENGOOGLE_ADS_CLIENT_IDGOOGLE_ADS_CLIENT_SECRETGOOGLE_ADS_REFRESH_TOKENGOOGLE_ADS_CUSTOMER_IDOnce added, every AI agent in your workspace can manage Google Ads automatically — no per-user setup needed.
"List all my active Google Ads campaigns and their spend for this month"
"Show me the top 10 keywords by clicks in ad group 123456789 over the last 30 days"
"Which campaigns have a CTR below 2%? I want to pause underperformers"
"Run a GAQL query to get daily cost breakdown for campaign 987654321 over the last 7 days"
"What's my account budget status — how much have I spent vs. my approved limit?"
curl -X POST https://mcp.aerostack.dev/s/aerostack/mcp-google-ads \
-H 'Content-Type: application/json' \
-H 'X-Mcp-Secret-GOOGLE-ADS-DEVELOPER-TOKEN: your-dev-token' \
-H 'X-Mcp-Secret-GOOGLE-ADS-CLIENT-ID: your-client-id' \
-H 'X-Mcp-Secret-GOOGLE-ADS-CLIENT-SECRET: your-client-secret' \
-H 'X-Mcp-Secret-GOOGLE-ADS-REFRESH-TOKEN: your-refresh-token' \
-H 'X-Mcp-Secret-GOOGLE-ADS-CUSTOMER-ID: 1234567890' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_campaigns","arguments":{"status":"ENABLED","limit":10}}}'
MIT
Live Endpoint
https://mcp.aerostack.dev/s/aerostack/mcp-google-ads
Sub-50ms globally · Zero cold start
@aerostack
Pre-built functions for the most common MCP tool patterns. Clone, extend, and deploy.
by @aerostack
Search, index, and manage documents in your Elasticsearch cluster — AI-native full-text search and analytics.
by @aerostack
Scrape web pages, crawl entire sites, extract structured data, and search the web — AI-native web data extraction for RAG pipelines.
by @aerostack
Read, write, and format Google Sheets data — use your spreadsheets as a live AI-accessible data source.
by @aerostack
Manage CMS collections, publish content, and control site deployments in Webflow — AI-powered web publishing.
by @aerostack
Create, read, edit, and format Google Docs — paragraph styling, tables, images, comments, and real-time collaboration via Google Docs API.
by @aerostack
Create and manage Google Meet spaces, schedule meetings via Google Calendar, list participants, access recordings and transcripts.
Yes. The MCP exposes create_task_list, create_task, update_task, and complete_task tools. Claude can scaffold a full project task hierarchy and mark items done as work progresses.
Use complete_task with the task ID. The task moves to completed state and remains in the list. clear_completed_tasks bulk-removes all completed items from a list when you want to clean up.
Yes. get_task fetches a single task by its ID and returns all fields including due date, notes, status, and parent task. Use get_task_list first to confirm the list ID if you don't have it cached.
create_task accepts a parent parameter to nest it under another task, creating a subtask. list_tasks returns the full hierarchy. Multi-level nesting beyond one level is not supported by the Google Tasks API.