You've probably tried asking ChatGPT to analyze a competitor and gotten back results that were generic, stale, or just wrong.
That's not an AI problem. By default, AI tools work from training data, not live rankings, traffic, or messaging.
So the tool question isn't "which AI is best." It's which two things you're pairing: a live data source that can pull current competitor data, and an AI that can query it and reason over what comes back. In this workflow, the data source is the Semrush MCP and the AI is Claude Code.
This is the workflow I use. Install Claude Code, connect the Semrush MCP, and follow an 8-step process that’s doable even for beginners.
Why your AI competitor analysis hasn’t worked
Your AI competitor analysis hasn't worked because the tool was working from memory instead of live data, and from a vague prompt instead of specific instructions.
If you've only tried using general AI tools for SEO competitor research before, chances are you ran into one (or several) of these problems.
- Outdated training data: The model's knowledge has a cutoff date, so it doesn't know what you or your competitors have changed recently
- No live web access: Even when a chatbot can search the web, it often won't bother if its training data seems sufficient for the topic. You could get stale or incorrect answers presented with full confidence.
- Hallucinated details: Traffic numbers, feature lists, and even quotes are often invented and hard to catch unless you already know the exact data points and can verify them
- Missing context: A generic prompt gives you a generic analysis. The AI doesn't know your market, positioning, or what matters to your business.
- Myopic scope: Ask it to "analyze a competitor," and it'll often fixate on one angle (usually content or SEO) while ignoring pricing, messaging, or product changes
- Still mostly manual: If you're pulling data from Semrush or Hubspot, for example, and copy-pasting it into the chat yourself, the AI isn't doing the research. You are.
None of this means AI can't do competitor analysis well. The rest of this guide covers the setup that fixes each of these.
What an effective AI competitor analysis workflow looks like
An effective AI competitor analysis pairs AI with tools that pull in live data, then tells it exactly what to do with it. A basic chatbot working alone can't validate the data it provides, which is what leads to hallucinations.
That's where MCP (Model Context Protocol) comes in.
MCP is an open standard that lets AI tools connect directly to external services. Instead of copying numbers from Semrush into a chat window, the AI queries Semrush itself and works with current data.

That one change closes most of the gaps above, because the AI is working from current data instead of memory, and you're not the one pasting it in.
For this workflow, we're connecting three tools:
- Claude Code: an AI tool built to handle multi-step tasks and work with MCP servers, available as a desktop app so you're not stuck in a terminal
- Semrush MCP: which gives Claude direct access to Semrush's keyword, traffic, and competitive data
- Google Sheets plus web search: to land the analysis somewhere, and to let Claude consolidate data from multiple sources into one document you can easily review
If you’re a beginner, this sounds harder than it is. You don't need to configure any of this as a developer would, and you definitely don’t need to know how to code.
You can tell Claude Code what you want in plain English and it figures out the how. For example, you can start with a basic prompt like:
"I want to build a reusable competitor research workflow.
I'll give you my website's URL and 2-3 competitor URLs. For each competitor, research their organic keyword rankings and content gaps versus mine, their positioning and messaging (from their site and review sites like G2), and how visible they are in AI search results.
Create a separate research agent for each competitor so this can run in parallel, and set it up as a skill I can reuse whenever I add new competitors.
Add a supervisor agent that reviews each research agent's output for accuracy, checks it's not missing any of the three research areas, and confirms the findings are backed by actual data rather than assumptions. Then have it compile everything into a single Google Sheet I can review.”

Claude Code will build that structure for you, including skills, agents, the works.

We'll come back to this at the end once you've run the workflow manually a couple of times and know what you want automated.
How to set up Claude Code and Semrush MCP
Now that you know what pieces you need, here's how to connect them. It's mostly clicking "Connect" and signing in. No code is required, and it takes about 15-30 minutes.
You'll need a paid Claude plan, since Claude Code isn't on the free tier. Pro, Max, Team, and Enterprise all work. On the Semrush side, MCP access comes with Semrush One Starter and Pro+, and with SEO Classic Pro and Guru. On SEO Classic Business and Semrush One Advanced you'll need to add an API units package.
Head to claude.com/download, install the desktop app, sign in, then open the Code tab.

From there, click the + button next to the prompt box, look for Connectors, search for Semrush.

Sign in, and approve access. No API keys or config files needed.

Once it's connected, run a quick test prompt like "Use the Semrush MCP to pull the top 5 organic keywords for sr03.amzseller.tools."
Compare the results against the Semrush dashboard. If they match, you're set. If not, check that Semrush still shows as connected under Connectors, confirm your plan includes the data you're requesting, and try being more explicit in your prompt (e.g., "use the Semrush MCP" directly).
Once you've validated that Claude is pulling real data, you're ready to start the workflow.
How to use AI tools for competitor analysis
With everything connected, here are the steps that take you from "who am I even competing with?" to a finished analysis automated with AI.
1. Define your analysis goals
Before you ask Claude to research anything, decide what you're trying to analyze.
- Are you checking for content gaps?
- Evaluating whether your pricing is competitive?
- Trying to understand why a competitor is outranking you?
Tell Claude Code the goal upfront, something like "I'm trying to find content gaps between my site and three competitors so I can plan next quarter's content."
Skipping this step is a big reason why AI research ends up unfocused.
2. Tell the AI who your competitors are
For some types of analysis, you may have a specific list of competitors you want to compare your performance to.
For instance, you notice a new competitor bidding on Google Ads, or another competitor has started outranking you in organic search.
In these cases, give Claude Code your website and a short list of competitor URLs to compare it against.

If you don't have a list yet, go the other way and give Claude the keywords you want to rank for. The Semrush MCP can pull the domains already ranking for them, which gives you your search competitors whether they're the companies you think of as rivals.
Either direction works, as long as you tell Claude which one you're doing.
3. Pull competitor data with the Semrush MCP
Ask Claude to pull organic keywords, domain metrics, and backlink data for each competitor via Semrush.
Because it's connected through MCP, this happens in the conversation, and you don’t need to export CSVs or switch tabs.
A simple prompt like "pull organic keyword overlap and gaps between my site and these three competitors" is enough to get started. If it isn't pulling enough data, say it only reports back on 3-5 keywords, prompt it again and tell it how deep you want it to go.
Every MCP call consumes Semrush API units, so "go deeper" isn't free. Ask for the specific reports you need instead of telling Claude to pull everything.
There's a balance between how much data comes back and how much of it you can read and act on. In the example below, the response is smaller, which makes the insights easier to pull out.

4. Analyze their content and keywords
With the raw data pulled, don't just ask for keyword gaps. That's the most surface-level read available, and Semrush's Keyword Gap tool already does it faster than Claude. Use the AI for the part the tool can't do, which is interpreting the gaps.

Here's what I ask Claude to dig into:
- Keyword gaps weighted by intent: A competitor ranking for 200 keywords you don't isn't alarming if most are low-intent or irrelevant. I ask Claude to flag gaps with clear commercial or high-funnel intent.
- Content format mismatches: A competitor's comparison page beating your blog post on the same query says more than the gap itself. I ask Claude to compare content types, not just titles, and plan content updates accordingly.
- Which pages are doing the heavy lifting: I ask Claude for the handful of pages pulling most of a competitor's estimated traffic, which shows where their effort is going.
- Where they've recently made moves: New pages, updated pages, or keyword jumps in the last few months usually point to a deliberate strategy shift Claude can analyze
- Where you're stronger: It's easy to fixate on gaps, so I always ask Claude to flag where I'm outranking or out-covering competitors too
A simple prompt you can try that gets you most of the way there is:
"Compare keyword overlap and gaps between my site and these competitors, but prioritize gaps with clear commercial intent, flag any content format mismatches on shared topics, and tell me which of their pages are pulling the most estimated traffic. Also tell me where I'm already outperforming them."

What comes back is a prioritized read on where to focus, not a keyword dump.
5. Analyze their positioning and messaging
Data tells you what a competitor ranks for.
It won't tell you how they're winning deals. This is where I have Claude go past Semrush and read the competitor the way a person would, instead of only measuring them.
Claude can fetch and read web pages directly, but it won't get into every site. G2 and Capterra both block automated access, and some competitors block it on their own sites, so you'll need to open those pages yourself and paste what you find into the chat.

A few things I always ask it to dig into:
- The gap between homepage claims and pricing page reality: Competitors lead with a big promise ("all-in-one platform") that falls apart once you see what's gated behind higher tiers, so I ask Claude to flag the mismatch
- Who they're talking to: If the homepage is aimed at enterprise buyers but the G2 and Capterra reviews are mostly small teams, that's a signal about who's converting versus who they're chasing
- Recurring complaints in reviews: The same complaint across a dozen reviews is a conversion opportunity if you solve it, so ask Claude for recurring themes and sentiment, not just star ratings.
- What they emphasize that you don't (and vice versa): If every competitor leads with "ease of use" and you lead with "power and flexibility," you're occupying different ground, and I want to see it side by side
- Proof points, not adjectives: Anyone can say "industry-leading," so I ask Claude to pull what each competitor backs with data, case studies, or logos, versus what's just asserted
This step isn’t about getting a summary of your competitors’ websites. You're looking for the space between what they claim and what they can support, because that gap is where you have room to position against them.
6. Benchmark visibility with AI search competitive analysis tools
Benchmarking AI search visibility shows how often competitors turn up in AI-generated answers across ChatGPT, Google AI Mode, Gemini, and Perplexity compared to you.
This step sits outside the Claude Code workflow. AI search visibility data isn't available through the Semrush MCP, so you'll run it in the AI Visibility Toolkit, which is a separate subscription from the plans that include MCP access. It's worth the detour.

I check two reports specifically.
Visibility Overview, which gives an AI Visibility Score and shows which of a competitor's pages get cited most.

Competitor Research, which puts your domain next to up to four competitors on mentions and topic coverage.

The valuable output is the list of topics where competitors show up in AI answers and you don't, as those are direct opportunities.
This is only going to matter more as agentic and AI-first search grows, so it's worth benchmarking now rather than treating it as an afterthought.
7. Verify the AI’s findings
Before you act on anything, spot-check the outputs. AI research tools can still get things wrong, such as miscounting keywords, misreading a chart, or flattening nuance into a confident-sounding claim that doesn't hold up.
What to spot-check:
- Any specific figure the analysis leans on, such as traffic estimates, keyword counts, ranking positions, AI Visibility Scores.
- Claims about what a competitor is doing strategically (e.g., "they're prioritizing comparison content"). These are inferences, not data points, and worth a gut-check against the actual pages.
- Anything that seems surprisingly good or bad. Outlier numbers are the ones most likely to be a misread.
The check itself is quick: pull the same metric directly in the Semrush dashboard and compare it to what Claude reported, or for content and positioning claims, open the competitor's page and confirm it matches the description.
If a number looks off, ask Claude to show its work, which report it pulled from, and what it filtered on. Often that surfaces the error on its own, like a stale date range or a domain mix-up.
For instance, here's Claude reporting on asana.com/resources/best-project-management-software.

To verify, search the exact page in the Semrush dashboard and open the Overview report.

The dashboard numbers are materially different from what Claude reported.
That's your cue to dig into which report or date range it pulled from. If Claude quoted a stale or a differently-scoped figure (all-time instead of monthly, say), you'll catch it before it shapes your strategy.
8. Build your competitor analysis in Google Sheets
Once you're confident in the findings, have Claude Code build a competitor analysis template it can port the data into, and that you can reuse next time.
Here's a prompt that gives it enough structure to produce something usable relatively quickly:
"Create a Google Sheet called 'Competitor Analysis — [your brand]' with one tab per competitor, plus a summary tab.
On the summary tab, add a table with columns for: Competitor / Top 3 Keyword Gaps (with search intent noted) / Content Format Gaps / Positioning Summary / Recurring Review Complaints / AI Search Visibility Score / Priority Level (High/Medium/Low, based on how actionable the gap is).
On each competitor's individual tab, break out the full keyword gap list, the messaging/positioning notes, and the AI visibility topics we're missing that they're winning.
Populate this only with findings we've confirmed from tool calls. If a field wasn't researched (e.g. we skipped review sites, or a competitor's positioning wasn't checked), write 'Not researched' in that cell instead of leaving it blank or guessing. If the AI Search Visibility Score isn't available through your connected tools, write 'Not available via connected tools — check Semrush's AI Visibility Toolkit directly' instead of inventing a number.
If your Google Sheets connector can't create multiple tabs or apply conditional formatting, don't fail silently. Tell me that up front, then output the same structure as a markdown table or CSV I can paste in and format myself. Use conditional formatting on Priority Level (red/yellow/green) only if it's actually supported."

If Claude Code has Google Sheets access connected, it'll build and populate the sheet directly.
If not, ask it to output the same structure as a CSV or markdown table you can paste in manually. The prompt still works, just swap "Create a Google Sheet" for "Create a table."
Turn your AI competitor analysis workflow into a reusable Claude Code skill
This part is optional. Once you've run the workflow above manually a few times and trust what it produces, it's worth turning into something you can rerun in seconds instead of re-explaining the steps to Claude every time.
The way to do that in Claude Code is by setting up skills and agents.
Skills are a saved set of instructions that tell Claude how to repeat a task, so you're not re-prompting from scratch. Agents are separate instances of Claude, each working on its own piece of a task, running side by side. A supervisor agent is one you assign to check the others' work before it reaches you. All of them live as files on your computer.

For instance, here’s an example skill file you can set up to run this process:
# Competitor Analysis Skill
## Goal
Before running, confirm the analysis goal with the user (e.g. content gaps,
positioning check, pricing comparison). This shapes what to prioritize below.
## Inputs required
- User's website URL
- 2-3 competitor URLs (or target keywords, if competitors aren't known yet —
use Semrush MCP to identify top-ranking competitors first)
## Research steps (run per competitor)
1. **Data pull (Semrush MCP):** organic keywords, domain metrics, backlink
data, keyword overlap and gaps vs. the user's site.
2. **Content and keyword analysis:** don't just list gaps, weight them by
commercial/high-funnel intent, flag content format mismatches on shared
topics (e.g. their comparison page vs. our blog post), identify which
pages are pulling the most estimated traffic, note recent content moves,
and flag where the user's site is already outperforming them.
3. **Positioning and messaging:** crawl homepage, product pages, and pricing page. Cross-reference messaging against review sites, but note that G2 and Capterra block automated access and have to be read manually and pasted in.
Flag mismatches between marketing claims and actual pricing-tier
features, likely buyer profile (from reviews) vs. marketing target,
recurring complaint themes, and what claims are backed by proof points
(data, case studies, logos) vs. just asserted.
4. **AI search visibility:** use the AI Visibility Toolkit's Visibility
Overview and Competitor Research reports. Flag topics where competitors
are cited across ChatGPT/Google AI Mode/Gemini/Perplexity and the user isn't.
5. **Verification:** flag any claim or figure that can't be directly
confirmed against Semrush data or the competitor's own site — don't
present unverified figures as fact.
## Output
Google Sheet with one summary tab (Competitor, Top Keyword Gaps, Content
Format Gaps, Positioning Summary, Recurring Complaints, AI Visibility Gap,
Priority Level) plus one detailed tab per competitor. Use conditional
formatting on Priority Level (red/yellow/green).And this is what an agent file looks like:

Don't expect this to be perfect on the first run. If the output isn't quite right, tell Claude exactly what to change and run it again. Iterating like this a few times is normal, and it's how the workflow gets tailored to what matters for your business.
Common AI competitor analysis mistakes to avoid
When automating competitor analysis with AI, most weak results trace back to one of these issues.
- Skipping the supervisor agent: Without one, nothing's checking the research agents' work for accuracy or gaps before it reaches you
- Analyzing too many competitors at once: Running six or eight competitors through the same pass dilutes the quality of research per competitor and makes the supervisor agent's job harder. Two to three direct competitors, done well, beats a long list done thinly.
- Treating it as a one-off report: Competitive positioning shifts with new content, ranking changes, and AI visibility swings. Running the skill once and filing the output away means it's stale within weeks. Rerun it monthly or quarterly instead.
- Treating the supervisor agent's sign-off as verification: It checks the research agents against each other, not against Semrush. You still do the spot-check in step 7.
- Picking competitors Claude can't read: If a competitor blocks Claude's browser, the positioning half of the analysis comes back thin, and it won't always tell you that's why
The future of competitor analysis is AI
Competitor analysis isn't going away, but doing all of it by hand is. The teams pulling ahead are the ones pairing AI with live data instead of leaning on a chatbot's memory.
Semrush MCP is where that starts. Connect it once, and Claude Code can start pulling real competitive data in your next conversation.
"A few seconds" contradicts the 15 to 30 minutes in the setup section.
