feat(seo-skills): multi-backend Data Source Selection (#7)
Replaces single-vendor (Ahrefs-only) tool defaults with a per-task backend menu across all 14 SEO skills. Each skill now lists every capable MCP in allowed-tools and documents how to pick between Semrush, Ahrefs, OurSEO Agent (CLI + MCP), DataForSEO, and GSC in its SKILL.md Data Source Selection section. Tool stubs (~40 new files) populated per skill with capability deltas, call patterns, and explicit "not for this skill when" callouts so the menu is self-correcting. Skills affected: 19-keyword-strategy, 20-serp-analysis, 21-position-tracking, 22-link-building, 23-content-strategy, 24-ecommerce, 25-kpi-framework, 26-international, 27-ai-visibility, 28-knowledge-graph, 31-competitor-intel, 32-crawl-budget, 33-migration-planner, 34-reporting-dashboard. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
# OurSEO Agent (CLI + MCP)
|
||||
|
||||
**Default** for URL inventory, on-page crawl, technical audit, and index-status baseline. Distributed crawler scales to large catalogs.
|
||||
|
||||
## CLI commands (Claude Code)
|
||||
|
||||
```bash
|
||||
# URL inventory crawl (pre-migration)
|
||||
our collect crawl https://<old-site> --max-pages 5000
|
||||
our collect distributed https://<old-site> --workers 8 --max-pages 50000
|
||||
|
||||
# Technical audit (catches redirect chains, canonical issues that affect migration)
|
||||
our audit tech https://<old-site>
|
||||
|
||||
# Index baseline
|
||||
our research google index --domain <old-site>
|
||||
|
||||
# Schema baseline (preserve schema across migration)
|
||||
our analyze mysql-batch --session <id> --export missing-schema --format excel
|
||||
|
||||
# Post-migration: re-run on new domain and diff
|
||||
our collect crawl https://<new-site> --max-pages 5000
|
||||
our research google index --domain <new-site>
|
||||
our audit tech https://<new-site>
|
||||
```
|
||||
|
||||
## MCP tools (Claude Desktop)
|
||||
|
||||
```
|
||||
mcp__ourseo__crawl_website(url="<site>", max_pages=5000)
|
||||
mcp__ourseo__check_index(domain="<site>")
|
||||
mcp__ourseo__audit_page(url="<url>", audit_type="tech")
|
||||
```
|
||||
|
||||
## Strengths for this skill
|
||||
|
||||
- **Distributed crawl** with URL-hash partitioning — handles catalogs >50K URLs.
|
||||
- **Resume support** (`--resume`) — critical for multi-day baseline captures.
|
||||
- **MySQL workspace** stores baseline crawl; post-migration diff is a SQL query against the same DB.
|
||||
- **Index status spot-check** via `check_index` — finds URLs Google still has indexed from the old domain.
|
||||
|
||||
## Pair with Firecrawl
|
||||
|
||||
Firecrawl (`mcp__firecrawl__*`) is already in this skill's `allowed-tools`:
|
||||
|
||||
- Use **OurSEO** as the default crawler for most sites.
|
||||
- Switch to **Firecrawl** when the target is JS-heavy (React/Vue/Angular SPA) and OurSEO's HTTP-level crawler under-reports URLs.
|
||||
- Use Firecrawl `firecrawl_scrape` for per-URL **redirect verification** post-launch (cheaper than re-crawling the whole site).
|
||||
|
||||
## Not for this skill when
|
||||
|
||||
- **Per-URL traffic value for risk scoring** — Ahrefs `site-explorer-top-pages` / Semrush `url_research`.
|
||||
- **First-party impression baseline** — GSC `pages` (REQUIRED for accurate post-migration diff).
|
||||
- **GA4 traffic baseline** — `our research ga4 *` (covered in OurSEO CLI but distinct from crawl path).
|
||||
Reference in New Issue
Block a user