How to use
- Copy the installation command and review the source package before installing it in your own agent environment.
- Check the source document for required tools, credentials and supported hosts.
- Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/ryze-ai-adgent/open-seo-mcp-skills --skill keyword-researchBefore you start
- Installation does not include a model subscription, API allowance or permission to access your files.
- Repository stars and installation counts describe activity, not an independent quality or security test.
Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.
Keyword Research
Requires
The free Ryze MCP connector (https://connector.get-ryze.ai/mcp). Claude Code: claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp. claude.ai / Desktop / Cursor: add it as a custom connector with the same URL. Setup: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp
Seed → ideas → metrics → clusters. Volumes come from Google Ads planner data (the source everyone else resells), enriched with DataForSEO intent/difficulty.
Workflow
- Expand the seed.
google_ads__generateKeywordIdeaswith the seed keyword(s) and/or the user's URL. Collect up to ~200 ideas. - Metrics.
google_ads__generateKeywordHistoricalMetricson the candidate list — monthly volume, competition, CPC range, 12-month trend. - Intent + difficulty (optional enrich). If the workspace exposes DataForSEO tools, call the Labs
keyword_overviewendpoint for the top ~50 (search intent, keyword difficulty, SERP features). Request shape:native__get_provider_docsproviderdataforseo. Skip silently if unavailable — Google metrics alone are enough for a v1 plan. - What they already rank for.
google_search_console__runRawSearchAnalytics(dimensionquery, filtered to the topic) — mark keywords the site already has positions for; those are optimize-not-create. - Cluster. Group by intent and topic into content clusters: pillar + supporting pages. For each cluster: target keyword, supporting keywords, total volume, intent, existing page (if any) or "new page".
Output
One table per cluster (keyword, volume, CPC, intent, current position if any), then a ranked plan: which clusters to attack first and why (volume × winnability — favor clusters where the site already has striking-distance positions). Plain language, no filler.
Rules
- Never invent volumes. If a metrics call fails, show the keyword without numbers and say why.
- CPC belongs in the output — it tells the user what the traffic is worth, and this doubles as an ads negative-keyword source.



