Web
seo-baseline - Claude MCP Skill
Quick SEO checklist for any URL. Essential basics in 15 minutes. Lighter than full /seo-audit - just the must-haves. Auto-invoke when: shipping new product, reviewing landing page, or user mentions SEO basics.
SEO Guide: Enhance your AI agent with the seo-baseline tool. This Model Context Protocol (MCP) server allows Claude Desktop and other LLMs to quick seo checklist for any url. essential basics in 15 minutes. lighter than full /seo-audit - just... Download and configure this skill to unlock new capabilities for your AI workflow.
Documentation
SKILL.md# /seo-baseline
Essential SEO in 15 minutes. No fluff.
## What This Does
Checks the absolute basics that every page needs:
1. Title tag (exists, good length, keyword)
2. Meta description (exists, compelling, right length)
3. OG image (exists, right size)
4. Sitemap (exists, accessible)
5. robots.txt (allows indexing)
That's it. Not a full audit. Just the table stakes.
## Process
### 1. Fetch Page & Check Meta Tags
Use browser automation or curl to fetch the page:
```bash
curl -s "$URL" | head -200
```
Or with browser tools:
```
mcp__claude-in-chrome__navigate to URL
mcp__claude-in-chrome__javascript_tool to extract meta tags
```
**Check Title Tag:**
```javascript
document.querySelector('title')?.textContent
```
- [ ] Exists
- [ ] 50-60 characters
- [ ] Contains primary keyword
- [ ] Unique (not generic like "Home")
**Check Meta Description:**
```javascript
document.querySelector('meta[name="description"]')?.content
```
- [ ] Exists
- [ ] 150-160 characters
- [ ] Compelling (would you click?)
- [ ] Contains primary keyword
**Check OG Tags:**
```javascript
({
title: document.querySelector('meta[property="og:title"]')?.content,
description: document.querySelector('meta[property="og:description"]')?.content,
image: document.querySelector('meta[property="og:image"]')?.content,
})
```
- [ ] og:title exists
- [ ] og:description exists
- [ ] og:image exists (1200x630px recommended)
### 2. Check Sitemap
```bash
curl -s "${DOMAIN}/sitemap.xml" | head -20
```
- [ ] Sitemap exists at /sitemap.xml
- [ ] Returns valid XML
- [ ] Contains page URLs
If missing, note: "Add sitemap generation to build process"
### 3. Check robots.txt
```bash
curl -s "${DOMAIN}/robots.txt"
```
- [ ] robots.txt exists
- [ ] Does NOT block important pages
- [ ] Points to sitemap
Good robots.txt:
```
User-agent: *
Allow: /
Sitemap: https://example.com/sitemap.xml
```
Bad robots.txt:
```
User-agent: *
Disallow: /
```
### 4. Check Google Search Console
Prompt user:
```
Is this site added to Google Search Console?
If not:
1. Go to https://search.google.com/search-console
2. Add property: [domain]
3. Verify ownership (DNS or HTML file)
4. Submit sitemap
This enables Google to find and index your pages.
```
## Output Format
```
SEO BASELINE CHECK: volume.app
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
TITLE TAG ā
PASS
"Volume - Track Your Lifts"
52 characters (good)
Contains keyword "track lifts"
META DESCRIPTION ā
PASS
"Simple strength training tracker..."
156 characters (good)
Compelling and keyword-rich
OG IMAGE ā ļø FIX
Missing og:image tag
ā Add: <meta property="og:image" content="https://volume.app/og.png"/>
ā Create 1200x630px image
SITEMAP ā
PASS
Found at /sitemap.xml
Contains 12 URLs
ROBOTS.TXT ā
PASS
Allows all crawlers
References sitemap
GOOGLE SEARCH CONSOLE ā CHECK
Verify site is added and sitemap submitted
āāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāāā
SCORE: 4/5 checks passed
ACTION ITEMS:
1. Create OG image (1200x630px) with product screenshot
2. Add og:image meta tag to layout
3. Verify Google Search Console setup
Time to fix: ~10 minutes
```
## Quick Fixes
### Missing OG Image
Generate with Gemini image generation or screenshot:
```bash
# Option 1: Use existing screenshot
cp screenshot.png public/og.png
# Option 2: Generate with skill
~/.claude/skills/gemini-imagegen/scripts/generate_image.py \
"Product screenshot showing [app name] dashboard, clean modern design" \
public/og.png --size 1200x630
```
Add to `<head>`:
```html
<meta property="og:image" content="https://example.com/og.png" />
<meta property="og:image:width" content="1200" />
<meta property="og:image:height" content="630" />
```
### Missing/Bad Title
Good title formula:
```
[Primary Keyword] - [Brand] | [Benefit]
```
Examples:
- "Strength Training Tracker - Volume | See Your Gains"
- "Word Puzzle Game - Crondle | Daily Brain Training"
### Missing Meta Description
Good description formula:
```
[What it does] + [Key benefit] + [Call to action or differentiator]
```
Example:
"Track your lifts and see your strength progress over time. Simple, focused, no-nonsense. Start your free workout log today."
### Missing Sitemap
For Next.js, add to `next.config.js`:
```javascript
// next-sitemap.config.js
module.exports = {
siteUrl: 'https://example.com',
generateRobotsTxt: true,
}
```
Then: `pnpm add next-sitemap && pnpm next-sitemap`
## vs /seo-audit
| | /seo-baseline | /seo-audit |
|---|---|---|
| Time | 15 min | 1+ hour |
| Scope | 5 essentials | Full technical SEO |
| When | New product launch | Established site optimization |
| Depth | Surface check | Deep crawl analysis |
Use `/seo-baseline` for new MVPs.
Use `/seo-audit` when you're ready to optimize.
## Related Skills
- `/seo-audit` - Full SEO audit
- `/programmatic-seo` - Pages at scale
- `/announce` - Uses good SEO for launch postsSignals
Information
- Repository
- phrazzld/claude-config
- Author
- phrazzld
- Last Sync
- 3/2/2026
- Repo Updated
- 3/1/2026
- Created
- 1/24/2026
Reviews (0)
No reviews yet. Be the first to review this skill!
Related Skills
pr-status
PR Status
mem0
Integrate Mem0 Platform into AI applications for persistent memory, personalization, and semantic search. Use this skill when the user mentions "mem0", "memory layer", "remember user preferences", "persistent context", "personalization", or needs to add long-term memory to chatbots, agents, or AI apps. Covers Python and TypeScript SDKs, framework integrations (LangChain, CrewAI, Vercel AI SDK, OpenAI Agents SDK, Pipecat), and the full Platform API. Use even when the user doesn't explicitly say "mem0" but describes needing conversation memory, user context retention, or knowledge retrieval across sessions.
upgrade-webkit
Upgrade Bun's Webkit fork to the latest upstream version of Webkit.
browser-use
Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, or extract information from web pages.
Related Guides
Mastering VSCode Extension Development with Claude: A Complete Guide to the TypeScript Extension Dev Skill
Learn how to use the vscode extension dev typescript Claude skill. Complete guide with installation instructions and examples.
Mastering Next.js, Material UI, and Tailwind CSS with Claude: A Complete Guide to the Portfolio2 Skill
Learn how to use the nextjs material ui tailwind css Claude skill. Complete guide with installation instructions and examples.
Mastering Modern Web Development with the Next.js React Tailwind Claude Skill
Learn how to use the nextjs react tailwind Claude skill. Complete guide with installation instructions and examples.