ryze-ai-adgent/open-seo-mcp-skills

competitor-gap

Find keywords a competitor ranks for that the user's site doesn't — the content gap, prioritized by volume and winnability.

View source

How to use

  1. Copy the installation command and review the source package before installing it in your own agent environment.
  2. Check the source document for required tools, credentials and supported hosts.
  3. 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 competitor-gap

Before 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.
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

Competitor Gap

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

Their rankings are estimates (DataForSEO), yours are real (GSC). Diff them.

Workflow

  1. Competitor's keywords. Via the workspace's DataForSEO tools — Labs ranked_keywords for the competitor domain (request shape: native__get_provider_docs, provider dataforseo). Pull top ~500 by volume. If DataForSEO isn't exposed in this workspace, check for connected ahrefs/semrush providers and use their organic-keywords endpoint instead; if none, stop and say which connection is missing.
  2. Competitor overview. Labs domain_rank_overview — their estimated organic traffic and keyword count, for context.
  3. Your keywords. google_search_console__runRawSearchAnalytics, dimension ["query"], last 90 days, high rowLimit — the full set of queries the user's site gets impressions for.
  4. Diff into three buckets:
  • Gap — competitor ranks top 20, you have zero impressions → new content needed
  • Behind — you both rank but they're ≥ 5 spots ahead → improve existing page
  • Ahead — you outrank them (report briefly; it's the moat)
  1. Prioritize the Gap and Behind buckets by volume × relevance to the user's product. Drop branded competitor terms unless the user wants comparison pages — then list them separately as "vs / alternative" page candidates.

Output

Verdict (how big the gap is, in keywords and estimated traffic), then: Gap table (keyword, their position, volume, suggested page), Behind table (keyword, their pos, your pos, your page, fix), and a top-10 action list. Note explicitly which numbers are estimates (theirs) vs real (yours).

Related by task

from this repository

More skills

All skills