Server data from the Official MCP Registry
Keyword ideas, search volumes, CPC ranges, trends and forecasts from Google Ads Keyword Planner.
About
Keyword ideas, search volumes, CPC ranges, trends and forecasts from Google Ads Keyword Planner.
Security Report
The Google Keyword Planner MCP server is a clean, well-structured read-only client for the Google Ads API that requires OAuth credentials supplied via environment variables and sends them only to Google endpoints. Its permissions (network_http to Google APIs and env_vars for credentials) match its stated purpose, and no shell execution, hardcoded secrets, exfiltration, or obfuscated code was found. Remaining issues are minor: a configurable base URL and token endpoint override via environment variables, and a few low-severity quality notes around error handling and input validation. Supply chain analysis found 1 known vulnerability in dependencies (0 critical, 1 high severity).
6 files analyzed · 5 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
What You'll Need
Set these up before or after installing:
Environment variable: GOOGLE_ADS_CLIENT_ID
Environment variable: GOOGLE_ADS_CLIENT_SECRET
Environment variable: GOOGLE_ADS_REFRESH_TOKEN
Environment variable: GOOGLE_ADS_CUSTOMER_ID
Environment variable: GOOGLE_ADS_LOGIN_CUSTOMER_ID
Environment variable: KEYWORD_PLANNER_DEFAULT_LANGUAGE
Environment variable: KEYWORD_PLANNER_DEFAULT_LOCATIONS
Environment variable: GOOGLE_ADS_DEVELOPER_TOKEN
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-afeezadebayo-google-keyword-planner": {
"env": {
"GOOGLE_ADS_CLIENT_ID": "your-google-ads-client-id-here",
"GOOGLE_ADS_CUSTOMER_ID": "your-google-ads-customer-id-here",
"GOOGLE_ADS_CLIENT_SECRET": "your-google-ads-client-secret-here",
"GOOGLE_ADS_REFRESH_TOKEN": "your-google-ads-refresh-token-here",
"GOOGLE_ADS_DEVELOPER_TOKEN": "your-google-ads-developer-token-here",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "your-google-ads-login-customer-id-here",
"KEYWORD_PLANNER_DEFAULT_LANGUAGE": "your-keyword-planner-default-language-here",
"KEYWORD_PLANNER_DEFAULT_LOCATIONS": "your-keyword-planner-default-locations-here"
},
"args": [
"-y",
"google-keyword-planner-mcp"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
Google Keyword Planner MCP server
An MCP server that gives Claude and other MCP clients direct access to Google Ads Keyword Planner data: keyword ideas, average monthly searches, competition, top-of-page bid ranges, monthly trends and click and cost forecasts.
Built by Afeez Adebayo. MIT licensed.
What you can ask
- "Find 100 keyword ideas for online accounting software in Nigeria, sorted by search volume."
- "Get search volume for these 50 keywords in the UK and US, with their trends."
- "Pull keyword ideas from https://example.com/pricing."
- "Forecast clicks and cost for these exact-match keywords at a ₦300 max CPC for 30 days."
Tools
| Tool | What it does |
|---|---|
generate_keyword_ideas | Ideas from seed keywords, a URL, keywords plus a URL, or a whole site. Returns average monthly searches, competition, low and high top-of-page bids, 3-month change, change across the period (first to last month shown), and optional monthly volumes. Filter by minimum volume and sort by searches, competition, bid or relevance. |
get_search_volume | Historical metrics for up to 10,000 exact keywords, with close variants and a list of keywords Google returned no data for. Optional month range. |
forecast_keywords | Impressions, clicks, cost, CTR and average CPC for keywords at a given max CPC over 1 to 365 days. |
find_locations | Look up Google location IDs by place name. |
list_languages | List targetable languages with codes and IDs. |
list_accessible_customers | List the Google Ads accounts your login can access. |
check_connection | Confirm credentials and show the account, currency and defaults. |
Locations and languages accept plain names ("Nigeria", "Lagos", "English") as well as Google IDs. Bids and costs are shown in your Google Ads account currency.
What you need
Keyword Planner data comes from the Google Ads API. Since 9 September 2026, Google no longer uses developer tokens: API access belongs to the Google Cloud project that owns your OAuth client. You need:
-
A Google Ads account. It must be enabled, but it doesn't need running campaigns. A manager account is optional.
-
A Google Cloud project with the Google Ads API enabled. In the Google Cloud console, create a project and enable the Google Ads API. This gives Test access, which only works with test accounts.
-
Basic access for that project. Keyword Planner isn't included in Explorer access, so you need Basic access:
- Configure the OAuth consent screen (Google Auth Platform > Branding) and complete brand verification.
- Open the Google Ads API Overview page for the project and apply for Basic access. Google reviews it automatically, usually within minutes of brand verification.
- If your project is on the Google Cloud free trial, Google may reject the application; upgrading the billing account to a paid tier fixes this (you won't be charged for the Google Ads API).
-
An OAuth client ID of type Desktop app, in the same project. Set the consent screen's publishing status to In production, because refresh tokens from apps in Testing status expire after 7 days.
-
A refresh token. Clone this repository and run:
npm install GOOGLE_ADS_CLIENT_ID=your-client-id GOOGLE_ADS_CLIENT_SECRET=your-secret npm run authOpen the printed link, sign in with the Google account that can access your Ads account, and copy the refresh token it prints.
Install
Claude Desktop (one click)
Download google-keyword-planner.mcpb from the latest release and open it. Claude Desktop asks for your credentials and stores the secrets securely.
Any MCP client (from source)
git clone https://github.com/afeezadebayo/google-keyword-planner-mcp.git
cd google-keyword-planner-mcp
npm install && npm run build
Then add it to your client config:
{
"mcpServers": {
"google-keyword-planner": {
"command": "node",
"args": ["/path/to/google-keyword-planner-mcp/server/index.js"],
"env": {
"GOOGLE_ADS_CLIENT_ID": "...",
"GOOGLE_ADS_CLIENT_SECRET": "...",
"GOOGLE_ADS_REFRESH_TOKEN": "...",
"GOOGLE_ADS_CUSTOMER_ID": "123-456-7890",
"GOOGLE_ADS_LOGIN_CUSTOMER_ID": "",
"KEYWORD_PLANNER_DEFAULT_LANGUAGE": "English",
"KEYWORD_PLANNER_DEFAULT_LOCATIONS": "Nigeria"
}
}
}
}
For Claude Code:
claude mcp add google-keyword-planner \
-e GOOGLE_ADS_CLIENT_ID=... -e GOOGLE_ADS_CLIENT_SECRET=... \
-e GOOGLE_ADS_REFRESH_TOKEN=... -e GOOGLE_ADS_CUSTOMER_ID=123-456-7890 \
-- node /path/to/google-keyword-planner-mcp/server/index.js
Configuration
| Variable | Required | Notes |
|---|---|---|
GOOGLE_ADS_CLIENT_ID | Yes | OAuth client (Desktop app). Its Cloud project needs Basic access. |
GOOGLE_ADS_CLIENT_SECRET | Yes | |
GOOGLE_ADS_REFRESH_TOKEN | Yes | From npm run auth. |
GOOGLE_ADS_CUSTOMER_ID | Yes | The account to query. Dashes are fine. |
GOOGLE_ADS_LOGIN_CUSTOMER_ID | No | Your manager account ID, if you access the account through one. |
GOOGLE_ADS_API_VERSION | No | Defaults to v25. Change it when Google retires a version. |
KEYWORD_PLANNER_DEFAULT_LANGUAGE | No | Used when a request doesn't name a language. |
KEYWORD_PLANNER_DEFAULT_LOCATIONS | No | Comma-separated names or IDs used when a request doesn't name locations. |
GOOGLE_ADS_DEVELOPER_TOKEN | No | Legacy. Google retired developer tokens on 9 September 2026; it's only sent if you set it. |
Good to know
- Volumes are estimates. Keyword Planner rounds search volumes into ranges and groups close variants. Accounts with little or no ad spend may see broader ranges.
- Rate limits. Keyword Planner allows a limited number of requests per minute. The server retries rate-limit and server errors automatically with back-off.
- Errors explain the fix. Common problems (a Cloud project with only Test access, a missing manager account ID, an expired refresh token) come back with a plain-English explanation of how to fix them.
- Privacy. The server runs on your machine and talks only to Google. Credentials stay in your MCP client's config.
Development
npm install
npm run typecheck
npm run build
npm test # runs every tool against a local mock of the Google Ads API
Releases are automated: bumping version in package.json and pushing to main builds the bundle, creates a GitHub release and publishes the listing to the official MCP Registry.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Rea
Freeby Morluto · Developer Tools
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
