MCP server for Google Ads and Meta Ads. Wraps both APIs directly to manage campaigns.
Connect Runs on your machine
claude mcp add ads-mcp -e GOOGLE_ADS_CLIENT_ID=<GOOGLE_ADS_CLIENT_ID> -e GOOGLE_ADS_CLIENT_SECRET=<GOOGLE_ADS_CLIENT_SECRET> -e GOOGLE_ADS_DEVELOPER_TOKEN=<GOOGLE_ADS_DEVELOPER_TOKEN> -e GOOGLE_ADS_REFRESH_TOKEN=<GOOGLE_ADS_REFRESH_TOKEN> -e GOOGLE_ADS_CUSTOMER_ID=<GOOGLE_ADS_CUSTOMER_ID> -e GOOGLE_ADS_LOGIN_CUSTOMER_ID=<GOOGLE_ADS_LOGIN_CUSTOMER_ID> -e META_APP_ID=<META_APP_ID> -e META_APP_SECRET=<META_APP_SECRET> -e META_ACCESS_TOKEN=<META_ACCESS_TOKEN> -e META_AD_ACCOUNT_ID=<META_AD_ACCOUNT_ID> -- npx -y @gudlab/[email protected]
{
"mcpServers": {
"ads-mcp": {
"command": "npx",
"args": [
"-y",
"@gudlab/[email protected]"
],
"env": {
"GOOGLE_ADS_CLIENT_ID": "<GOOGLE_ADS_CLIENT_ID>",
"GOOGLE_ADS_CLIENT_SECRET": "<GOOGLE_ADS_CLIENT_SECRET>",
"GOOGLE_ADS_DEVELOPER_TOKEN": "<GOOGLE_ADS_DEVELOPER_TOKEN>",
"GOOGLE_ADS_REFRESH_TOKEN": "<GOOGLE_ADS_REFRESH_TOKEN>",
"GOOGLE_ADS_CUSTOMER_ID": "<GOOGLE_ADS_CUSTOMER_ID>",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "<GOOGLE_ADS_LOGIN_CUSTOMER_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_ACCESS_TOKEN": "<META_ACCESS_TOKEN>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>"
}
}
}
}
{
"mcpServers": {
"ads-mcp": {
"command": "npx",
"args": [
"-y",
"@gudlab/[email protected]"
],
"env": {
"GOOGLE_ADS_CLIENT_ID": "<GOOGLE_ADS_CLIENT_ID>",
"GOOGLE_ADS_CLIENT_SECRET": "<GOOGLE_ADS_CLIENT_SECRET>",
"GOOGLE_ADS_DEVELOPER_TOKEN": "<GOOGLE_ADS_DEVELOPER_TOKEN>",
"GOOGLE_ADS_REFRESH_TOKEN": "<GOOGLE_ADS_REFRESH_TOKEN>",
"GOOGLE_ADS_CUSTOMER_ID": "<GOOGLE_ADS_CUSTOMER_ID>",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "<GOOGLE_ADS_LOGIN_CUSTOMER_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_ACCESS_TOKEN": "<META_ACCESS_TOKEN>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>"
}
}
}
}
{
"servers": {
"ads-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@gudlab/[email protected]"
],
"env": {
"GOOGLE_ADS_CLIENT_ID": "<GOOGLE_ADS_CLIENT_ID>",
"GOOGLE_ADS_CLIENT_SECRET": "<GOOGLE_ADS_CLIENT_SECRET>",
"GOOGLE_ADS_DEVELOPER_TOKEN": "<GOOGLE_ADS_DEVELOPER_TOKEN>",
"GOOGLE_ADS_REFRESH_TOKEN": "<GOOGLE_ADS_REFRESH_TOKEN>",
"GOOGLE_ADS_CUSTOMER_ID": "<GOOGLE_ADS_CUSTOMER_ID>",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "<GOOGLE_ADS_LOGIN_CUSTOMER_ID>",
"META_APP_ID": "<META_APP_ID>",
"META_APP_SECRET": "<META_APP_SECRET>",
"META_ACCESS_TOKEN": "<META_ACCESS_TOKEN>",
"META_AD_ACCOUNT_ID": "<META_AD_ACCOUNT_ID>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
GOOGLE_ADS_CLIENT_IDRequired, secret | OAuth client ID from Google Cloud Console |
GOOGLE_ADS_CLIENT_SECRETRequired, secret | OAuth client secret from Google Cloud Console |
GOOGLE_ADS_DEVELOPER_TOKENRequired, secret | Developer token from Google Ads API Center |
GOOGLE_ADS_REFRESH_TOKENRequired, secret | Refresh token minted via `pnpm google:auth` |
GOOGLE_ADS_CUSTOMER_IDRequired | Default Google Ads account ID, 10 digits, no dashes |
GOOGLE_ADS_LOGIN_CUSTOMER_IDOptional | MCC account ID, only if the customer account is managed under one |
META_APP_IDRequired | Meta App ID from developers.facebook.com |
META_APP_SECRETRequired, secret | Meta App secret |
META_ACCESS_TOKENRequired, secret | Long-lived System User access token with ads_management scope |
META_AD_ACCOUNT_IDRequired | Default Meta ad account ID, numeric, no act_ prefix |
Details
| Package | @gudlab/[email protected] (NPM, stdio) |
| First published | 22 Sep 2026 |
| Last updated | 22 Sep 2026 |
| Registry name | io.github.gudlab/ads-mcp |
More marketing and seo servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
