Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/upgrade-ventures/upgradeseo/competitor-analysisnpx skills add upgrade-ventures/upgradeseo --skill competitor-analysisgit clone --depth 1 https://github.com/upgrade-ventures/upgradeseoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/upgrade-ventures/upgradeseo/competitor-analysis)<a href="https://agentmods.dev/skills/upgrade-ventures/upgradeseo/competitor-analysis"><img src="https://agentmods.dev/badge/skills/upgrade-ventures/upgradeseo/competitor-analysis.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00022 | $0.00901 |
| Opus 5 | $0.00011 | $0.00451 |
| Sonnet 5 | $0.00004 | $0.00180 |
| Haiku 4.5 | $0.00002 | $0.00090 |
Grade A, and why
competitor-analysis scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
91% identical to competitor-analysis — 15 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 84 lines — stays where its author put it; the contents beside it link to each section on GitHub.
UpgradeSEO Competitor Analysis
Goal
Analyze one competitor deeply enough to decide what to learn from, avoid, counter-position against, or outrank.
Use this for a named competitor. For identifying the market leaders first, use competitive-landscape.
Required inputs
projectId- Competitor domain
- User's domain when comparison is requested
- Optional topic/category/location/language
UpgradeSEO MCP tools
get_domain_overview: baseline organic traffic and keyword count.get_search_console_performance: when comparing to the user's own domain and Search Console is connected, use it as the first-party baseline (real clicks/impressions/CTR/position) instead of estimating the user's own performance from third-party data.get_ranked_keywords: exact keyword, URL, rank, intent, traffic, CPC, and SERP-type rows for the competitor domain or page.get_backlinks_overview: backlink/referring-domain profile.find_serp_competitors: validate whether the named competitor is a real search competitor across the target keyword set.search_local_businesses,get_local_serp_results, andget_google_business_questions: use for local SEO competitors when Maps/local-pack visibility, nearby businesses, categories, or Google Q&A matter.get_serp_results: validate direct head-to-head SERPs for important keywords.research_keywords: expand gaps or category terms when needed.
Workflow
- Call
get_domain_overviewfor the competitor, passing provided location/language when supported. - If comparing to the user, call
get_domain_overviewfor the user's domain too — and if Search Console is connected,get_search_console_performancefor the user's real baseline. - Call
get_ranked_keywordsfor the competitor. Use filters likemaxRank,minSearchVolume,excludeBrandTerms, andresultTypesto keep rows relevant. - If comparing to the user, call
get_ranked_keywordsfor the user's domain/page too, or useget_serp_resultsfor the shared terms when a lighter check is enough. - For local SEO, use
search_local_businessesandget_local_serp_resultsaround the relevant business location(s) before drawing local-pack conclusions. Addget_google_business_questionsonly when Q&A evidence matters. - Use
find_serp_competitorswhen the competitor was supplied by the user but its search overlap is unclear. - Group competitor keywords into themes:
- Product/category terms
- Alternatives/comparisons
- Templates/tools/calculators
- Educational guides
- Branded demand
- Local/neighborhood terms when relevant
- Call
get_backlinks_overviewfor the competitor, especially if authority appears to explain rankings. Continue without backlink evidence if it is unavailable. - Use
get_serp_resultsfor important shared or target keywords to compare positioning, passing provided location/language when supported. - Produce an actionable plan:
- What they are doing well
- Where they are vulnerable
- Which pages/keywords to pursue
- What to avoid copying
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 84 lines · 22 tokens per session scan A b3b316ec4361
competitor-analysis is a skill published in the GitHub repository upgrade-ventures/upgradeseo (1 stars, last pushed 17d ago), licensed MIT. It adds 22 tokens to every session and 901 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 91% identical to competitor-analysis, differing in 15 lines, and is treated as a copy.
Other skills, from other repositories
semrush-backlink-audit
Audit backlink profiles with the semrush CLI. Use when the user asks for backlink analysis, referring domains, authority score, anchor text, indexed linked pages, backlink competitors, link gaps, backlink history, toxic or suspicious link signals, or off-page SEO recommendations based on Semrush CLI backlink data.
semrush-cli-setup
Install, configure, validate, and troubleshoot the semrush CLI. Use when the user needs Semrush API auth, SEMRUSHAPIKEY or SEMRUSHOAUTHTOKEN setup, output/cache/rate-limit configuration, shell completions, API balance checks, structured error handling, or a prerequisite check before running other Semrush CLI skills.
semrush-keyword-research
Research, expand, score, and prioritize SEO keywords with the semrush CLI. Use when the user asks for keyword research, search volume, CPC, difficulty, related keywords, broad-match keywords, question keywords, keyword clustering inputs, SERP domains for a query, or a prioritized keyword opportunity table powered by…
semrush-batch-workflows
Create, estimate, run, and adapt semrush CLI TOML batch recipes. Use when the user needs reusable Semrush CLI workflows, competitor audit recipes, keyword opportunity recipes, backlink audit recipes, paid-search recipes, traffic summary recipes, scheduled SEO data pulls, or API-unit estimates before multi-step Semrush…
semrush-competitor-research
Analyze SEO competitors, organic keywords, top pages, subdomains, and keyword gaps with the semrush CLI. Use when the user asks for competitor research, organic competitor discovery, content gaps, domain comparison, missing or untapped keywords, page-level SEO opportunities, or a competitive SEO audit using Semrush…
semrush-local-seo
Manage and analyze local SEO data with semrush CLI v4 commands. Use when the user asks for Semrush local listings, local business location records, Google Maps or map-rank campaigns, map-rank keywords, heatmaps, local competitors, NAP/listing QA, or local SEO reporting through the Semrush CLI.