---
name: frase-seo-audit
description: Run and interpret SEO/GEO audits using Frase — site crawls, scoring, site health, cannibalization detection, and prioritized fix workflows. Works via MCP or CLI.
---

# Frase SEO & GEO Audit

This skill teaches you how to run and interpret site audits using Frase — covering SEO scoring, GEO scoring, site health, cannibalization, and internal link analysis.

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

## Prerequisites

- Frase MCP server connected OR `frase` CLI installed
- `FRASE_API_KEY` set (get from https://next.frase.io/settings/api)
- A site registered in Frase (check: `list_sites` / `frase sites list`)

## Workflow

### Step 1: Quick Site Health Check

Before committing to a full audit, get the site health overview.

**Via MCP:**
```
1. Use `get_site_health` with site_id to get:
   - Overall health score (0-100)
   - Issue counts by severity
   - Page statistics
```

**Via CLI:**
```bash
frase health overview --site-id <id>
```

### Step 2: Check for Cannibalization

Pages competing for the same keywords hurt each other's rankings.

**Via MCP:**
```
1. Use `get_cannibalization` with site_id
2. Review keyword groups where multiple pages compete
```

**Via CLI:**
```bash
frase health cannibalization --site-id <id>
```

### Step 3: Run a Full Site Audit

**Via MCP:**
```
1. Use `start_audit` with site_id and type: "full"
2. Poll `get_job_status` until the audit completes
3. Use `get_audit` to retrieve the full results
```

**Via CLI:**
```bash
frase audit start --site-id <id> --type full
frase job status <audit-id>             # poll until ready
frase audit get <audit-id>
```

### Step 4: Review Audit Results

```
1. Focus on issues ranked by estimated traffic impact
2. Check SEO and GEO scores per page
3. Export for spreadsheet analysis:
   - MCP: `export_audit` with format: "csv"
   - CLI: frase audit export <id> --format csv
```

### Step 5: Analyze Internal Links

**Via MCP:**
```
1. Use `get_link_graph` with site_id
2. Identify orphan pages (no internal links pointing to them)
3. Find most-linked and least-linked pages
```

**Via CLI:**
```bash
frase health links --site-id <id>
```

### Step 6: Prioritize Fixes

**Fix content issues before technical issues** — content fixes typically have higher ROI.

Priority order:
1. **High-traffic pages with low SEO/GEO scores** — immediate impact
2. **Cannibalization conflicts** — consolidate or differentiate competing pages
3. **Pages with declining rankings** — prevent further traffic loss
4. **Content gaps** — missing topics that competitors cover
5. **Orphan pages** — add internal links
6. **Technical issues** — broken links, slow load times, missing meta tags
7. **Thin content** — pages below 300 words on competitive topics

### Step 7: Fix and Re-Audit

**Via MCP:**
```
1. For content issues: `start_optimization` → `get_optimization` → `apply_optimization`
2. For missing content: `create_brief` → `generate_content` → optimize → publish
3. Re-run audit: `start_audit` again and compare scores
```

**Via CLI:**
```bash
frase optimize start --content-id <id>
frase optimize apply <opt-id> --suggestion <sug-id>
frase audit start --site-id <id>        # re-audit after fixes
```

## Interpreting Scores

### SEO Score
- **70+:** Well-optimized for search engines
- **50-69:** Missing some important optimization elements
- **< 50:** Needs substantial optimization work

### GEO Score
- **70+:** Well-structured for AI citation
- **50-69:** Some AI-readiness but gaps exist
- **< 50:** Not structured for AI search engines

### Health Score
- **80+:** Healthy site — minor maintenance needed
- **60-79:** Some issues need attention
- **< 60:** Significant issues impacting performance

## Key Principles

1. **Health check first** — get the overview before deep-diving
2. **Fix cannibalization early** — it's a silent traffic killer
3. **Content before technical** — content fixes have higher traffic impact
4. **Prioritize by traffic impact** — fix high-traffic pages first
5. **Re-audit after fixes** — verify improvements before moving on
6. **Regular audits** — run monthly to catch issues early
