---
name: frase-content-optimization
description: Score and optimize content for SEO and GEO performance using Frase — SERP-based scoring, prioritized suggestions, and iterative improvement. Works via MCP or CLI.
---

# Frase Content Optimization

This skill teaches you how to score and optimize content for SEO and GEO performance using Frase. Frase analyzes your content against top SERP competitors and provides actionable suggestions.

**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)
- Existing content to optimize (use `list_content` / `frase content list`)

## Workflow

### Step 1: Start Optimization

**Via MCP:**
```
1. Use `start_optimization` with the content_id
2. Frase analyzes the content against top SERP competitors
3. Poll `get_job_status` until analysis completes (usually 15-30 seconds)
```

**Via CLI:**
```bash
frase optimize start --content-id <id>
frase job status <job-id>               # poll until ready
```

### Step 2: Review Score and Suggestions

**Via MCP:**
```
1. Use `get_optimization` with the optimization ID
2. Review:
   - SEO score and GEO score
   - Suggestions count and applied count
   - Individual suggestions grouped by type, each with an ID
   - Priority levels (critical, high, medium, low)
```

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

### Step 3: Apply Suggestions Selectively

**Not all suggestions are equal.** Prioritize based on impact.

**Via MCP:**
```
1. Apply critical and high-priority suggestions first using `apply_optimization` with:
   - id: the optimization session ID
   - suggestion_id: the specific suggestion ID to apply (apply one at a time)
2. Re-score after applying suggestions
3. Skip low-priority suggestions that would compromise readability
```

**Via CLI:**
```bash
frase optimize apply <optimization-id> --suggestion <suggestion-id>
```

Suggestion types and how to handle them:
- **Missing topics:** Add paragraphs covering these topics — HIGH IMPACT
- **Topic depth:** Expand existing sections with more detail — MEDIUM IMPACT
- **Heading structure:** Reorganize headings for better hierarchy — MEDIUM IMPACT
- **Word count:** Extend or trim content — CONTEXT-DEPENDENT
- **Meta tags:** Update title/description — QUICK WIN

### Step 4: Re-Score After Changes

**Via MCP:**
```
1. Use `start_optimization` again with the same content_id
2. Compare the new score to the previous one
3. If still below target, apply more suggestions
4. Repeat up to 3 times (diminishing returns after that)
```

**Via CLI:**
```bash
frase optimize start --content-id <id>   # re-score after applying suggestions
frase optimize get <new-optimization-id>
```

### Step 5: Dismiss Irrelevant Suggestions

**Via MCP:**
```
1. Use `dismiss_optimization` for suggestions that don't apply
2. This improves future optimization accuracy
```

**Via CLI:**
```bash
frase optimize dismiss <optimization-id> --suggestion <suggestion-id>
```

### Step 6: Cross-Content Insights

**Via MCP:**
```
1. Use `get_optimization_insights` to see patterns across all your content:
   - Common issues appearing in multiple articles
   - Opportunities that affect many pages
   - Overall content health trends
```

**Via CLI:**
```bash
frase optimize insights --site-id <id>
```

## Score Interpretation

| Score Range | Meaning | Action |
|-------------|---------|--------|
| 80-100 | Excellent | Publish confidently. Minor tweaks only. |
| 70-79 | Good | Competitive with top results. Consider a few more improvements. |
| 50-69 | Needs work | Missing important topics. Apply high-priority suggestions. |
| 30-49 | Significant gaps | Major revision needed. Consider regenerating from a fresh brief. |
| 0-29 | Not competitive | Start over with research and a new brief. |

## Target Scores by Content Value

- **High-value keywords** (commercial intent, high volume): Target 80+
- **Competitive keywords** (many strong competitors): Target 75+
- **Standard keywords** (moderate competition): Target 70+
- **Long-tail keywords** (low competition): Target 60+

## Key Principles

1. **Score before publishing** — never publish un-optimized content
2. **Apply selectively** — prioritize high-impact suggestions
3. **Re-score after changes** — verify improvements
4. **Don't over-optimize** — readability matters more than a perfect score
5. **Use insights** — patterns across content reveal systemic issues
6. **SEO + GEO together** — optimize for both traditional search and AI engine citation

## Common Mistakes

- Applying ALL suggestions blindly (some may hurt readability)
- Optimizing once and never re-checking after edits
- Ignoring meta tags (quick win with high SEO impact)
- Targeting 100 score (diminishing returns past 80, can hurt natural flow)
- Not using insights to spot recurring issues across content
- Ignoring GEO score (AI engines increasingly drive traffic)
