Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"google-ads": {
"env": {
"GOOGLE_ADS_DEVELOPER_TOKEN": "your-token",
"GOOGLE_ADS_CREDENTIALS_PATH": "/path/to/credentials.json"
},
"args": [
"-y",
"mcp-gads@latest"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Google Ads MCP server — query campaigns, keywords, assets & more via natural language. Built with Bun + TypeScript. Works with Claude, Cursor, and any MCP client.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'mcp-gads' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked mcp-gads against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in marketing
DataForSEO API modelcontextprotocol server
一键同步文章到多个内容平台,支持今日头条、WordPress、知乎、简书、掘金、CSDN、typecho各大平台,一次发布,多平台同步发布。解放个人生产力
MCP server for the PostFast API — schedule and manage social media posts via AI tools
Google Ads MCP with MCC support: 35 tools for campaigns, keywords, reporting, GAQL.
MCP Security Weekly
Get CVE alerts and security updates for io.github.pijusz/mcp-gads and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Google Ads MCP server — query campaigns, keywords, assets & more via natural language.
Built with Bun + TypeScript. Works with Claude, Cursor, and any MCP client.
You need a Google Ads API developer token and OAuth client credentials.
export GOOGLE_ADS_DEVELOPER_TOKEN=your-token
export GOOGLE_ADS_CREDENTIALS_PATH=./credentials.json
npx mcp-gads setup
This opens your browser, completes OAuth, and saves a refresh token.
claude mcp add google-ads --scope user --transport stdio \
-e GOOGLE_ADS_DEVELOPER_TOKEN=your-token \
-e GOOGLE_ADS_CREDENTIALS_PATH=/path/to/credentials.json \
-- npx -y mcp-gads@latest
That's it. Restart Claude Code and the tools are available. Every session runs the latest version automatically.
Also works with
bunx mcp-gads@latestif you have Bun. Requires Node 18+ when running vianpx.
If your environment blocks npm registry access at runtime, install once and run the published binary name directly:
npm i -g mcp-gads@latest
claude mcp add google-ads --scope user --transport stdio \
-e GOOGLE_ADS_DEVELOPER_TOKEN=your-token \
-e GOOGLE_ADS_CREDENTIALS_PATH=/path/to/credentials.json \
-- mcp-gads
Download a pre-built binary from Releases:
| Platform | File |
|---|---|
| macOS (Apple Silicon) | mcp-gads-darwin-arm64 |
| macOS (Intel) | mcp-gads-darwin-x64 |
| Linux | mcp-gads-linux-x64 |
| Windows | mcp-gads-windows-x64.exe |
macOS / Linux:
curl -Lo mcp-gads https://github.com/pijusz/mcp-gads/releases/latest/download/mcp-gads-darwin-arm64
chmod +x mcp-gads
sudo mv mcp-gads /usr/local/bin/
claude mcp add google-ads --scope user --transport stdio \
-e GOOGLE_ADS_DEVELOPER_TOKEN=your-token \
-e GOOGLE_ADS_CREDENTIALS_PATH=/path/to/credentials.json \
-- /usr/local/bin/mcp-gads
Windows (PowerShell):
Invoke-WebRequest -Uri "https://github.com/pijusz/mcp-gads/releases/latest/download/mcp-gads-windows-x64.exe" -OutFile "$env:LOCALAPPDATA\mcp-gads.exe"
claude mcp add google-ads --scope user --transport stdio -e GOOGLE_ADS_DEVELOPER_TOKEN=your-token -e GOOGLE_ADS_CREDENTIALS_PATH=C:\path\to\credentials.json -- "%LOCALAPPDATA%\mcp-gads.exe"
Codex uses TOML, not JSON. Install once, then add to ~/.codex/config.toml:
npm i -g mcp-gads
[mcp_servers.gads]
command = "mcp-gads"
[mcp_servers.gads.env]
GOOGLE_ADS_DEVELOPER_TOKEN = "your-token"
GOOGLE_ADS_CREDENTIALS_PATH = "/absolute/path/to/credentials.json"
Three gotchas that cause silent failures on Codex:
npx -y without raising the timeout. Codex's default startup_timeout_sec is 10s, which is too short for npx's first-run download. A global install (above) or the prebuilt binary sidesteps this entirely. If you must use npx, add startup_timeout_sec = 30.[mcp_servers.gads.env]. Codex does not inherit the parent shell environment into stdio servers — exporting vars in your shell won't reach the server.GOOGLE_ADS_CREDENTIALS_PATH. Codex spawns the server with its own cwd, so relative paths silently miss.On Windows some Codex versions use startup_timeout_ms = 20000 instead of _sec.
Add to your claude_desktop_config.json:
{
"m
... [View full README on GitHub](https://github.com/pijusz/mcp-gads#readme)