---
name: frase-competitive-intelligence
description: Deep competitive analysis, opportunity detection, and topic clustering using Frase — analyze competitors, score opportunities, and organize content into topical clusters. Works via MCP or CLI.
---

# Frase Competitive Intelligence

This skill teaches you how to analyze competitors, detect content opportunities, and organize topics into clusters using Frase.

**Works with:** Frase MCP server (`@frase/mcp-server`) OR Frase CLI (`@frase/cli`)

## Prerequisites

- Frase MCP server connected OR `frase` CLI installed (`npx @frase/cli`)
- `FRASE_API_KEY` environment variable set (get from https://next.frase.io/settings/api)
- A Frase site with Google Search Console connected (for opportunity detection)

## Workflow

### Step 1: Analyze a Competitor Page

Crawl any URL and analyze it against SERP competitors.

**Via MCP:**
```
1. Use `start_competitive_analysis` with:
   - url: the page URL to analyze (required)
   - competitor_urls: array of up to 3 competitor URLs for direct comparison (optional)
   - site_id: associate with a tracked site (optional)
   - location_name: location for localized SERP results (optional, use `search_locations` to find exact values)
   - industry: industry context for more targeted analysis (optional)
2. This is async — poll with `get_competitive_analysis` using the returned ID
3. Returns gap analysis:
   - Missing topics the competitor covers that you don't
   - Thin sections where you need more depth
   - Structural gaps (missing FAQs, tables, comparison sections)
   - Content quality comparison
```

**Via CLI:**
```bash
frase competitive analyze "https://competitor.com/their-article"
frase competitive analyze "https://competitor.com/page" --competitor-urls "https://rival.com/page"
```

### Step 2: Get Detailed Analysis

**Via MCP:**
```
1. Use `get_competitive_analysis` with the analysis ID
2. Review detailed findings:
   - Topic coverage comparison (your content vs theirs)
   - Word count and depth analysis
   - Heading structure comparison
   - Internal/external link analysis
```

**Via CLI:**
```bash
frase competitive get <analysis-id>
frase competitive get <analysis-id> --json   # full details
```

### Step 3: List Past Analyses

**Via MCP:**
```
1. Use `list_competitive_analyses` with site_id
2. Review historical competitive analyses
3. Track how competitors evolve over time
```

**Via CLI:**
```bash
frase competitive list --site-id <id>
```

### Step 4: Detect Opportunities

Frase unifies opportunity detection from multiple signals: GSC data, competitor gaps, content decay, and programmatic patterns.

**Via MCP:**
```
1. Use `list_opportunities` with:
   - site_id: your site ID
   - view: "quick-wins" | "growth" | "strategic" | "all" (optional filter, default: "all")
2. Each opportunity includes a composite score:
   - Impact (35%): traffic potential via CTR modeling by position
   - Effort (25%): implementation difficulty
   - Speed (20%): estimated time to rank
   - Strategic (20%): business value alignment
3. Views filter by effort level:
   - quick-wins: low effort, proven demand
   - growth: medium effort, validated gaps
   - strategic: high effort, high reward
```

**Via CLI:**
```bash
frase opportunities list --site-id <id>
frase opportunities list --site-id <id> --view quick-wins
frase opportunities list --site-id <id> --view growth
frase opportunities list --site-id <id> --view strategic
```

### Step 5: Act on Opportunities

**Via MCP:**
```
1. Use `get_opportunity` with the opportunity ID for full details
2. Use `create_from_opportunity` to generate a brief automatically:
   - Pulls in keyword data, competitor analysis, and gap insights
   - Creates a pre-populated brief ready for content generation
3. Follow the content pipeline: generate → optimize → publish
```

**Via CLI:**
```bash
frase opportunities get <opportunity-id>
frase opportunities create-brief <opportunity-id> --site-id <id>
# Then follow the content pipeline:
frase content create --brief-id <new-brief-id>
frase optimize start --content-id <content-id>
```

### Step 6: Organize with Topic Clusters

Group content into topical clusters for authority building.

**Via MCP:**
```
1. Use `list_clusters` to see existing topic clusters
2. Use `create_cluster` with:
   - name: cluster name (required)
   - pillar_topic: main pillar topic (required)
   - site_id: associate with a site (optional)
3. Use `assign_to_cluster` to add content to a cluster:
   - cluster_id: the cluster ID
   - content_id or brief_id: what to assign
   - role: "pillar" or "supporting"
4. Use `suggest_clusters` with site_id for AI-powered cluster suggestions
```

**Via CLI:**
```bash
frase cluster list --site-id <id>
frase cluster create "Content Marketing" --site-id <id>
frase cluster assign <cluster-id> --content-id <id> --role supporting
frase cluster suggest --site-id <id>      # AI-powered suggestions
```

## Opportunity Scoring Methodology

| Factor | Weight | What It Measures |
|--------|--------|------------------|
| Impact | 35% | Traffic potential — CTR modeling by current/target position, search volume |
| Effort | 25% | Implementation difficulty — content exists? competitors strong? |
| Speed | 20% | Time to rank — domain authority vs competition, keyword difficulty |
| Strategic | 20% | Business value — commercial intent, conversion potential |

**Composite score:** 0-100. Higher = better opportunity.

## Cluster Strategy

Topic clusters build topical authority:

```
                    ┌────────────────┐
                    │  Pillar Page   │
                    │ "SEO Guide"   │
                    └───────┬────────┘
              ┌─────────────┼─────────────┐
              ▼             ▼             ▼
     ┌────────────┐ ┌────────────┐ ┌────────────┐
     │ Supporting  │ │ Supporting  │ │ Supporting  │
     │ "On-Page"  │ │ "Technical" │ │ "Link      │
     │            │ │            │ │  Building"  │
     └────────────┘ └────────────┘ └────────────┘
```

- **Pillar pages** cover a broad topic comprehensively
- **Supporting pages** dive deep into subtopics
- Internal links connect supporting pages to pillar and vice versa
- Clusters signal topical authority to search engines and AI engines

## Key Principles

1. **Analyze competitors regularly** — the SERP landscape changes constantly
2. **Act on quick wins first** — low effort, high impact opportunities compound
3. **Use clusters for authority** — scattered content dilutes topical signals
4. **Create from opportunities** — let data drive content creation, not guesses
5. **Track competitor evolution** — re-analyze quarterly to catch shifts
6. **Connect clusters to GEO** — topical authority improves AI citation rates
