google ads mcp for VS Code
io.github.davidmosiah/google-ads-mcp
Unofficial Google Ads MCP for campaigns, keywords, budgets, and gated mutations.
client:VS Code
transport:stdio
runtime:npm
Install google ads mcp in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "google-ads-developer-token",
"description": "GOOGLE_ADS_DEVELOPER_TOKEN",
"password": true
},
{
"type": "promptString",
"id": "google-ads-client-id",
"description": "GOOGLE_ADS_CLIENT_ID",
"password": true
},
{
"type": "promptString",
"id": "google-ads-client-secret",
"description": "GOOGLE_ADS_CLIENT_SECRET",
"password": true
},
{
"type": "promptString",
"id": "google-ads-login-customer-id",
"description": "GOOGLE_ADS_LOGIN_CUSTOMER_ID",
"password": true
},
{
"type": "promptString",
"id": "google-ads-redirect-uri",
"description": "GOOGLE_ADS_REDIRECT_URI",
"password": true
},
{
"type": "promptString",
"id": "google-ads-token-path",
"description": "GOOGLE_ADS_TOKEN_PATH",
"password": true
},
{
"type": "promptString",
"id": "google-ads-privacy-mode",
"description": "GOOGLE_ADS_PRIVACY_MODE",
"password": true
},
{
"type": "promptString",
"id": "google-ads-allow-mutations",
"description": "GOOGLE_ADS_ALLOW_MUTATIONS",
"password": true
},
{
"type": "promptString",
"id": "google-ads-cache",
"description": "GOOGLE_ADS_CACHE",
"password": true
},
{
"type": "promptString",
"id": "google-ads-cache-path",
"description": "GOOGLE_ADS_CACHE_PATH",
"password": true
},
{
"type": "promptString",
"id": "google-ads-cache-ttl-seconds",
"description": "GOOGLE_ADS_CACHE_TTL_SECONDS",
"password": true
},
{
"type": "promptString",
"id": "google-ads-no-retry",
"description": "GOOGLE_ADS_NO_RETRY",
"password": true
}
],
"servers": {
"google-ads-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"google-ads-mcp-unofficial"
],
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "${input:google-ads-developer-token}",
"GOOGLE_ADS_CLIENT_ID": "${input:google-ads-client-id}",
"GOOGLE_ADS_CLIENT_SECRET": "${input:google-ads-client-secret}",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "${input:google-ads-login-customer-id}",
"GOOGLE_ADS_REDIRECT_URI": "${input:google-ads-redirect-uri}",
"GOOGLE_ADS_TOKEN_PATH": "${input:google-ads-token-path}",
"GOOGLE_ADS_PRIVACY_MODE": "${input:google-ads-privacy-mode}",
"GOOGLE_ADS_ALLOW_MUTATIONS": "${input:google-ads-allow-mutations}",
"GOOGLE_ADS_CACHE": "${input:google-ads-cache}",
"GOOGLE_ADS_CACHE_PATH": "${input:google-ads-cache-path}",
"GOOGLE_ADS_CACHE_TTL_SECONDS": "${input:google-ads-cache-ttl-seconds}",
"GOOGLE_ADS_NO_RETRY": "${input:google-ads-no-retry}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs