SEO research skill

Data-driven SEO research and analysis through the Hyper MCP — keyword research, competitor analysis, content planning, AI search visibility (ChatGPT, Claude, Perplexity, Google AI Overviews), backlink trends, search intent classification, page speed / Core Web Vitals, and full site audits.

by hyperfx-ai·MIT license·GitHub ↗

★ 90 Stars on the repo·Checked

npx degit hyperfx-ai/marketing-skills/skills/seo-research#main ~/.claude/skills/seo-research

SKILL.md · 9.0 KB · installs the whole folder to ~/.claude/skills/seo-research

Files of SEO research

Files 1 file
Show the full text147 lines

SEO Research

Data-driven SEO research and analysis. Every recommendation must be backed by real data from the HyperSEO tools exposed by the Hyper MCP. Never guess metrics, never assume rankings, never recommend without evidence.

Out of scope — defer to other skills

Request Send them to
Google Ads campaign creation google-ads
Meta (Facebook / Instagram) ads meta-ads
Competitor ad research from the Meta Ads Library meta-ads-library
Pinterest Ads campaign pinterest-ads
Organic Instagram / TikTok / LinkedIn publishing instagram, tiktok, linkedin

Requirements

If search("hyperseo_search_volume_get") does not find hyperseo_search_volume_get, stop and tell the user to enable the Hyper MCP and turn on the HyperSEO toolkit.

How to run the tools in this skill

Every tool in this skill is named by its canonical tool name. Run it with the call your surface gives you:

Surface Find a tool Run it
MCP client (Claude, Cursor, Codex, ChatGPT) search("<what you want to do>"), then describe("<name>") call("<name>", {...})
Hyper CLI hyperai search "<what you want to do>", then hyperai describe <name> hyperai call <name> --json '{...}'

If a tool is not found, its integration is not connected or not enabled for the workspace: stop and tell the user which integration to connect.

Tool surface

Tool group Tools
Keyword research hyperseo_search_volume_get, hyperseo_keyword_difficulty_get, hyperseo_keyword_ideas_generate, hyperseo_site_keywords_search, hyperseo_intents_search
SERP & AI Overviews hyperseo_serp_results_get, hyperseo_ai_overviews_get
Competitor analysis hyperseo_competitors_search, hyperseo_competitor_domains_search, hyperseo_domain_intersections_search, hyperseo_traffic_get_bulk
Domain & rankings hyperseo_domain_overview_get, hyperseo_domain_keywords_get, hyperseo_rank_history_get
Backlinks hyperseo_backlinks_history_get
AI search visibility hyperseo_ai_search_volume_get, hyperseo_mentions_track
Technical health hyperseo_pagespeed_get

Initial Assessment

Before running any tools, understand what the user actually needs:

  1. What is the goal? Are they researching keywords, auditing a site, planning content, analyzing competitors, or checking AI visibility?
  2. What is the domain / business? Get the actual domain. Don't infer it.
  3. What is the target market? Default to US (location code 2840) unless told otherwise.
  4. What is the current state? Are they starting from scratch or optimizing existing content?

Based on the answers, read the appropriate reference file:

User need Reference
"Find keywords for…" / "What should I target?" references/keyword-research.md
"Who are my competitors?" / "Analyze [domain]" references/competitor-analysis.md
"What should I write about?" / "Content plan" references/content-seo-planning.md
"Am I visible in AI search?" / "Track my brand in ChatGPT" references/ai-search-optimization.md
"Audit my site" / "How is my domain doing?" references/site-audit.md

When the task spans multiple areas (e.g., "help me with SEO for my new site"), start with a site audit, then move to keyword research, then content planning.

Core SEO Principles

Apply these throughout all analysis.

Search intent comes first. Every keyword has an intent. Use hyperseo_intents_search to classify at scale, then match content format to intent:

  • Informational ("what is X") → guides, explainers.
  • Commercial ("best X", "X vs Y") → comparison pages, reviews.
  • Transactional ("buy X", "X pricing") → product / landing pages.
  • Navigational ("X login") → not targetable by others.

E-E-A-T matters. Experience, Expertise, Authoritativeness, Trustworthiness. Google evaluates content quality. Recommend content strategies that demonstrate genuine expertise, not keyword-stuffed filler.

Topic authority over individual keywords. Ranking for one keyword in isolation is hard. Recommend topic clusters: a pillar page supported by related content that builds topical authority.

AI search is a separate channel. Traditional Google search volume and AI-chatbot query volume are different metrics measuring different behavior. Always check both when relevant. A keyword with low Google volume may have high AI query volume, and vice versa.

Prioritize by ROI. Low difficulty + decent volume = do first. High difficulty + high volume = long-term investment. Low volume + high difficulty = skip unless strategically important.

Tool Quick Reference

Task Tool Key output
Check search volume and CPC hyperseo_search_volume_get Monthly volume, CPC, competition.
Assess ranking difficulty hyperseo_keyword_difficulty_get Difficulty score 0–100.
Generate keyword ideas hyperseo_keyword_ideas_generate Related keywords with metrics.
Find keywords for a site hyperseo_site_keywords_search Keywords a domain could target.
See who ranks on Google hyperseo_serp_results_get Top positions, URLs, domains.
Check Google AI Overview hyperseo_ai_overviews_get AI-generated summary and cited sources.
See what a domain ranks for hyperseo_domain_keywords_get Current rankings and traffic.
Find competing domains (by keywords) hyperseo_competitors_search Domains ranking for similar keywords.
Find competing domains (by domain) hyperseo_competitor_domains_search Competitors based on shared organic keywords.
Get domain health metrics hyperseo_domain_overview_get Authority, traffic, backlinks.
Track backlink trends hyperseo_backlinks_history_get New / lost backlinks over time.
Check AI chatbot query volume hyperseo_ai_search_volume_get Monthly queries to ChatGPT, Claude, etc.
Track brand mentions in LLMs hyperseo_mentions_track Brand citations across AI models.
Compare traffic across domains hyperseo_traffic_get_bulk Organic / paid ETV and keyword counts per domain.
Track ranking history over time hyperseo_rank_history_get Monthly organic traffic and keyword trends.
Classify keyword search intent hyperseo_intents_search Intent type with confidence scores.
Find keyword overlaps between domains hyperseo_domain_intersections_search Shared SERP keywords with positions.
Check page speed / Core Web Vitals hyperseo_pagespeed_get Performance score, FCP, LCP, TBT, CLS.
Location codes

Default is US (2840). Common alternatives: UK 2826, Canada 2124, Australia 2036, Germany 2276.

Output Standards

Always present keyword data as tables:

| Keyword | Volume | Difficulty | CPC | Priority |
|---------|--------|-----------|-----|----------|

Always include the raw numbers alongside interpretation. Don't say "high volume" without showing the number.

Sort recommendations by priority. Quick wins first, long-term bets last.

When comparing domains, use side-by-side tables showing organic keywords, traffic, backlinks, and domain rank.

For content plans, include: target keyword, search volume, difficulty, recommended content format, and priority tier.

Critical Rules

  1. Never guess metrics. If you don't have data, run the tool first.
  2. Research before recommending. Don't suggest keywords without checking volume and difficulty.
  3. Ask for the domain. Don't infer URLs from business names.
  4. Check both channels. When relevant, compare Google search volume with AI search volume.
  5. Be honest about difficulty. If a keyword is realistically unwinnable for the user's domain authority, say so and suggest alternatives.
  6. Think in clusters, not isolated keywords. Group related keywords into topic clusters.
  7. Validate against SERPs. Before recommending a content format, check what actually ranks with hyperseo_serp_results_get.
1---
2name: seo-research
3description: Data-driven SEO research and analysis through the Hyper MCP — keyword research, competitor analysis, content planning, AI search visibility (ChatGPT, Claude, Perplexity, Google AI Overviews), backlink trends, search intent classification, page speed / Core Web Vitals, and full site audits. Use when the user asks for an SEO audit, keyword research, content strategy, competitor benchmarks, brand visibility in AI search, ranking history, or any organic search analysis.
4requires_toolkits:
5 - hyperseo
6icon: hyperseo
7short_description: Keyword research, SERP and AI-visibility analysis, competitor benchmarking, and site audits.
8---
9 
10# SEO Research
11 
12Data-driven SEO research and analysis. Every recommendation must be backed by real data from the HyperSEO tools exposed by the Hyper MCP. Never guess metrics, never assume rankings, never recommend without evidence.
13 
14## Out of scope — defer to other skills
15 
16| Request | Send them to |
17| --- | --- |
18| Google Ads campaign creation | `google-ads` |
19| Meta (Facebook / Instagram) ads | `meta-ads` |
20| Competitor *ad* research from the Meta Ads Library | `meta-ads-library` |
21| Pinterest Ads campaign | `pinterest-ads` |
22| Organic Instagram / TikTok / LinkedIn publishing | `instagram`, `tiktok`, `linkedin` |
23 
24## Requirements
25 
26- **Hyper MCP installed and connected.** [https://app.hyperfx.ai/mcp](https://app.hyperfx.ai/mcp)
27- **HyperSEO toolkit enabled** at [https://app.hyperfx.ai/apps](https://app.hyperfx.ai/apps) — provides the `hyperseo_*` tool surface that wraps DataForSEO and AI search query data.
28 
29If `search("hyperseo_search_volume_get")` does not find `hyperseo_search_volume_get`, stop and tell the user to enable the Hyper MCP and turn on the HyperSEO toolkit.
30 
31### How to run the tools in this skill
32 
33Every tool in this skill is named by its canonical tool name. Run it with the call your surface gives you:
34 
35| Surface | Find a tool | Run it |
36| --- | --- | --- |
37| MCP client (Claude, Cursor, Codex, ChatGPT) | `search("<what you want to do>")`, then `describe("<name>")` | `call("<name>", {...})` |
38| Hyper CLI | `hyperai search "<what you want to do>"`, then `hyperai describe <name>` | `hyperai call <name> --json '{...}'` |
39 
40If a tool is not found, its integration is not connected or not enabled for the workspace: stop and tell the user which integration to connect.
41 
42## Tool surface
43 
44| Tool group | Tools |
45| --- | --- |
46| Keyword research | `hyperseo_search_volume_get`, `hyperseo_keyword_difficulty_get`, `hyperseo_keyword_ideas_generate`, `hyperseo_site_keywords_search`, `hyperseo_intents_search` |
47| SERP & AI Overviews | `hyperseo_serp_results_get`, `hyperseo_ai_overviews_get` |
48| Competitor analysis | `hyperseo_competitors_search`, `hyperseo_competitor_domains_search`, `hyperseo_domain_intersections_search`, `hyperseo_traffic_get_bulk` |
49| Domain & rankings | `hyperseo_domain_overview_get`, `hyperseo_domain_keywords_get`, `hyperseo_rank_history_get` |
50| Backlinks | `hyperseo_backlinks_history_get` |
51| AI search visibility | `hyperseo_ai_search_volume_get`, `hyperseo_mentions_track` |
52| Technical health | `hyperseo_pagespeed_get` |
53 
54## Initial Assessment
55 
56Before running any tools, understand what the user actually needs:
57 
581. **What is the goal?** Are they researching keywords, auditing a site, planning content, analyzing competitors, or checking AI visibility?
592. **What is the domain / business?** Get the actual domain. Don't infer it.
603. **What is the target market?** Default to US (location code `2840`) unless told otherwise.
614. **What is the current state?** Are they starting from scratch or optimizing existing content?
62 
63Based on the answers, read the appropriate reference file:
64 
65| User need | Reference |
66| --- | --- |
67| "Find keywords for…" / "What should I target?" | [`references/keyword-research.md`](./references/keyword-research.md) |
68| "Who are my competitors?" / "Analyze [domain]" | [`references/competitor-analysis.md`](./references/competitor-analysis.md) |
69| "What should I write about?" / "Content plan" | [`references/content-seo-planning.md`](./references/content-seo-planning.md) |
70| "Am I visible in AI search?" / "Track my brand in ChatGPT" | [`references/ai-search-optimization.md`](./references/ai-search-optimization.md) |
71| "Audit my site" / "How is my domain doing?" | [`references/site-audit.md`](./references/site-audit.md) |
72 
73When the task spans multiple areas (e.g., "help me with SEO for my new site"), start with a site audit, then move to keyword research, then content planning.
74 
75## Core SEO Principles
76 
77Apply these throughout all analysis.
78 
79**Search intent comes first.** Every keyword has an intent. Use `hyperseo_intents_search` to classify at scale, then match content format to intent:
80 
81- Informational ("what is X") → guides, explainers.
82- Commercial ("best X", "X vs Y") → comparison pages, reviews.
83- Transactional ("buy X", "X pricing") → product / landing pages.
84- Navigational ("X login") → not targetable by others.
85 
86**E-E-A-T matters.** Experience, Expertise, Authoritativeness, Trustworthiness. Google evaluates content quality. Recommend content strategies that demonstrate genuine expertise, not keyword-stuffed filler.
87 
88**Topic authority over individual keywords.** Ranking for one keyword in isolation is hard. Recommend topic clusters: a pillar page supported by related content that builds topical authority.
89 
90**AI search is a separate channel.** Traditional Google search volume and AI-chatbot query volume are different metrics measuring different behavior. Always check both when relevant. A keyword with low Google volume may have high AI query volume, and vice versa.
91 
92**Prioritize by ROI.** Low difficulty + decent volume = do first. High difficulty + high volume = long-term investment. Low volume + high difficulty = skip unless strategically important.
93 
94## Tool Quick Reference
95 
96| Task | Tool | Key output |
97| --- | --- | --- |
98| Check search volume and CPC | `hyperseo_search_volume_get` | Monthly volume, CPC, competition. |
99| Assess ranking difficulty | `hyperseo_keyword_difficulty_get` | Difficulty score 0–100. |
100| Generate keyword ideas | `hyperseo_keyword_ideas_generate` | Related keywords with metrics. |
101| Find keywords for a site | `hyperseo_site_keywords_search` | Keywords a domain could target. |
102| See who ranks on Google | `hyperseo_serp_results_get` | Top positions, URLs, domains. |
103| Check Google AI Overview | `hyperseo_ai_overviews_get` | AI-generated summary and cited sources. |
104| See what a domain ranks for | `hyperseo_domain_keywords_get` | Current rankings and traffic. |
105| Find competing domains (by keywords) | `hyperseo_competitors_search` | Domains ranking for similar keywords. |
106| Find competing domains (by domain) | `hyperseo_competitor_domains_search` | Competitors based on shared organic keywords. |
107| Get domain health metrics | `hyperseo_domain_overview_get` | Authority, traffic, backlinks. |
108| Track backlink trends | `hyperseo_backlinks_history_get` | New / lost backlinks over time. |
109| Check AI chatbot query volume | `hyperseo_ai_search_volume_get` | Monthly queries to ChatGPT, Claude, etc. |
110| Track brand mentions in LLMs | `hyperseo_mentions_track` | Brand citations across AI models. |
111| Compare traffic across domains | `hyperseo_traffic_get_bulk` | Organic / paid ETV and keyword counts per domain. |
112| Track ranking history over time | `hyperseo_rank_history_get` | Monthly organic traffic and keyword trends. |
113| Classify keyword search intent | `hyperseo_intents_search` | Intent type with confidence scores. |
114| Find keyword overlaps between domains | `hyperseo_domain_intersections_search` | Shared SERP keywords with positions. |
115| Check page speed / Core Web Vitals | `hyperseo_pagespeed_get` | Performance score, FCP, LCP, TBT, CLS. |
116 
117### Location codes
118 
119Default is US (`2840`). Common alternatives: UK `2826`, Canada `2124`, Australia `2036`, Germany `2276`.
120 
121## Output Standards
122 
123**Always present keyword data as tables:**
124 
125```
126| Keyword | Volume | Difficulty | CPC | Priority |
127|---------|--------|-----------|-----|----------|
128```
129 
130**Always include the raw numbers** alongside interpretation. Don't say "high volume" without showing the number.
131 
132**Sort recommendations by priority.** Quick wins first, long-term bets last.
133 
134**When comparing domains**, use side-by-side tables showing organic keywords, traffic, backlinks, and domain rank.
135 
136**For content plans**, include: target keyword, search volume, difficulty, recommended content format, and priority tier.
137 
138## Critical Rules
139 
1401. **Never guess metrics.** If you don't have data, run the tool first.
1412. **Research before recommending.** Don't suggest keywords without checking volume and difficulty.
1423. **Ask for the domain.** Don't infer URLs from business names.
1434. **Check both channels.** When relevant, compare Google search volume with AI search volume.
1445. **Be honest about difficulty.** If a keyword is realistically unwinnable for the user's domain authority, say so and suggest alternatives.
1456. **Think in clusters, not isolated keywords.** Group related keywords into topic clusters.
1467. **Validate against SERPs.** Before recommending a content format, check what actually ranks with `hyperseo_serp_results_get`.
147 

Discussion

Alternatives

Also in SEO & keywordsSee all 401 in Marketing →
Backlink Profile AnalysisBacklink profile analysis: referring domains, anchor text distribution, toxic link detection, competitor gap analysis. Works with free APIs (Moz, Bing Webmaster, Common Crawl) and DataForSEO extension. Use when user says backlinks, link profile, referring domains, anchor text, toxic links, link gap, link building, disavow, or backlink audit.Marketing · MIT/setup-cmsConnect a CMS to notfair SEO tools. Guides users through configuring WordPress, Strapi, Contentful, or Ghost — tests the connection, and writes credentials to .env.local. Once set up, seo-analysis automatically cross- references CMS content against Google Search Console data. Use whenever the user says "connect my CMS", "set up WordPress", "configure Strapi", "add Contentful", "connect Ghost", or "CMS setup". Also trigger if the user asks why no CMS data appears in a seo-analysis report.Marketing · MITCore Web Vitals optimizationOptimize Core Web Vitals (LCP, INP, CLS) for better page experience using field and lab evidence. Use when asked to "improve Core Web Vitals", "fix LCP", "reduce CLS", "optimize INP", "page experience optimization", or "fix layout shifts".Marketing · MITSEO link strategyResearch backlink opportunities, record contact evidence, and generate personalized local outreach drafts from user-provided product and contact data. Use for backlink planning and draft preparation; never send messages or submit forms without explicit authorization for the exact target and payload.Marketing · MIT