google-keyword-planner-mcp (GitHub binary)
The google-keyword-planner-mcp project on GitHub (by ncosentino / DevLeader) is the most capable open-source option. It ships as a pre-compiled native binary — meaning no Node.js, no Python, no Go toolchain needed. You download the right binary for your OS (e.g., kwp-mcp-go-linux-amd64 for Linux x64, kwp-mcp-go-darwin-arm64 for Apple Silicon, or kwp-mcp-go-windows-amd64.exe for Windows), place it in a permanent directory, and point your Claude Desktop config at it.
The claude_desktop_config.json entry looks like this — add it under the mcpServers key:
"mcpServers": {
"keyword-planner": {
"command": "/path/to/kwp-mcp-go-darwin-arm64",
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "your-developer-token",
"GOOGLE_ADS_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"GOOGLE_ADS_CLIENT_SECRET": "your-client-secret",
"GOOGLE_ADS_REFRESH_TOKEN": "your-refresh-token",
"GOOGLE_ADS_CUSTOMER_ID": "your-sub-account-id",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "your-manager-account-id"
}
}
}If you are using Claude Code or GitHub Copilot CLI instead of Claude Desktop, add "type": "stdio" and "args": [] to the server entry — those clients require both fields even though Claude Desktop does not.
The biggest friction point is generating the refresh token. You run a local OAuth flow, capture the printed token, and store it — you cannot retrieve it again, so save it immediately. Basic API access (auto-approved, 15,000 operations/day) is enough for most research workflows; Standard access removes daily limits but requires manual review from Google taking 1–2 weeks. For teams doing daily high-volume research, see our full Google Ads API walkthrough.


























