Google Ads MCP Unofficial MCP Server
by davidmosiahio.github.davidmosiah/google-ads-mcpv0.1.3
Unofficial Google Ads MCP for campaigns, keywords, budgets, and gated mutations.
context tax
queued
security
queued
cold start
queued
freshness
Maintained33d ago
Install Google Ads MCP Unofficial MCP server
Install in Claude Code
claude mcp add google-ads-mcp-unofficial -e GOOGLE_ADS_DEVELOPER_TOKEN='<google-ads-developer-token>' -e GOOGLE_ADS_CLIENT_SECRET='<google-ads-client-secret>' -- npx -y google-ads-mcp-unofficialInstall in Cursor
{
"mcpServers": {
"google-ads-mcp-unofficial": {
"command": "npx",
"args": [
"-y",
"google-ads-mcp-unofficial"
],
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "<google-ads-developer-token>",
"GOOGLE_ADS_CLIENT_SECRET": "<google-ads-client-secret>"
}
}
}
}Add to ~/.cursor/mcp.json (global) or .cursor/mcp.json (project).
Install in Claude Desktop
{
"mcpServers": {
"google-ads-mcp-unofficial": {
"command": "npx",
"args": [
"-y",
"google-ads-mcp-unofficial"
],
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "<google-ads-developer-token>",
"GOOGLE_ADS_CLIENT_SECRET": "<google-ads-client-secret>"
}
}
}
}Settings → Developer → Edit Config (claude_desktop_config.json), then restart.
Install in VS Code
{
"servers": {
"google-ads-mcp-unofficial": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"google-ads-mcp-unofficial"
],
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "<google-ads-developer-token>",
"GOOGLE_ADS_CLIENT_SECRET": "<google-ads-client-secret>"
}
}
}
}Add to .vscode/mcp.json in your workspace.
Install in Windsurf
{
"mcpServers": {
"google-ads-mcp-unofficial": {
"command": "npx",
"args": [
"-y",
"google-ads-mcp-unofficial"
],
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "<google-ads-developer-token>",
"GOOGLE_ADS_CLIENT_SECRET": "<google-ads-client-secret>"
}
}
}
}Add to ~/.codeium/windsurf/mcp_config.json.
Configuration
| Variable | Required | Secret | Description |
|---|---|---|---|
| GOOGLE_ADS_DEVELOPER_TOKEN | — | yes | Google Ads API developer token from your Google Ads Manager account. Required. |
| GOOGLE_ADS_CLIENT_ID | — | — | Google OAuth2 client ID. Required. |
| GOOGLE_ADS_CLIENT_SECRET | — | yes | Google OAuth2 client secret. Prefer storing in ~/.google-ads-mcp/config.json via setup. |
| GOOGLE_ADS_LOGIN_CUSTOMER_ID | — | — | Manager (MCC) customer ID used as login-customer-id header, no dashes (e.g., 1234567890). Optional but required for multi-account access. |
| GOOGLE_ADS_REDIRECT_URI | — | — | OAuth redirect URI. Defaults to http://127.0.0.1:3000/callback. |
| GOOGLE_ADS_TOKEN_PATH | — | — | Optional local path for OAuth tokens. Defaults to ~/.google-ads-mcp/tokens.json (0600). |
| GOOGLE_ADS_PRIVACY_MODE | — | — | Optional payload mode: summary, structured, or raw. Defaults to structured. raw returns full Google Ads API payloads. |
| GOOGLE_ADS_ALLOW_MUTATIONS | — | — | Set to true to enable write tools (pause/resume keywords/campaigns, set bids, set budgets). Default false (read-only). Agents changing real ad spend is high-stakes; review every change. |
| GOOGLE_ADS_CACHE | — | — | Optional SQLite cache toggle. Set to true or sqlite to enable. |
| GOOGLE_ADS_CACHE_PATH | — | — | Optional local SQLite cache path. Defaults to ~/.google-ads-mcp/cache.sqlite. |
| GOOGLE_ADS_CACHE_TTL_SECONDS | — | — | Optional cache TTL in seconds. Defaults to 60. Set to 0 to keep entries indefinitely (entries are still overwritten on each hit). |
| GOOGLE_ADS_NO_RETRY | — | — | Set to true to disable the HTTP retry middleware. Default false. |
Freshness
Maintained — last maintenance signal 33d ago. The newest of the signals below sets the band.
Last commit (default branch)
2026-09-07 · 33d ago · GitHub
Latest release
2026-08-29 · 42d ago · GitHub · v0.1.7
Package published
no data · npm/PyPI
Registry entry updated
2026-07-03 · 3mo ago · official registry · v0.1.3
FAQ
›How do I install the Google Ads MCP Unofficial MCP server in Claude Code?
Run: claude mcp add google-ads-mcp-unofficial -e GOOGLE_ADS_DEVELOPER_TOKEN='<google-ads-developer-token>' -e GOOGLE_ADS_CLIENT_SECRET='<google-ads-client-secret>' -- npx -y google-ads-mcp-unofficial. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Google Ads MCP Unofficial require an API key?
Yes. It expects GOOGLE_ADS_DEVELOPER_TOKEN, GOOGLE_ADS_CLIENT_SECRET, of which 2 are secrets.
›Can I use Google Ads MCP Unofficial as a remote (hosted) MCP server?
No hosted endpoint is published; it runs locally over stdio.
›Is Google Ads MCP Unofficial in the official MCP registry?
Yes, as io.github.davidmosiah/google-ads-mcp.
Alternatives to Google Ads MCP Unofficial
Other crm & marketing MCP servers.