marketing: migra superfície SEO para OpenSEO (motor único)

As skills de SEO assentavam em quatro dependências, nenhuma operacional:
SEO Tools API (localhost:3000, pasta inexistente em disco), Ahrefs MCP
(nunca esteve em config), gsc e lighthouse (em disabledServers). Os seis
passos da /seo-audit e o workflow inteiro da /seo-report apontavam para
tooling morto — não eram executáveis.

- seo-audit v3.0: ordem por custo (grátis → lote pago → unitário pago),
  gate de mercado (PT = 2620/pt) e gate de maxPages
- seo-report v3.0: cobertura de crawl obrigatória no entregável
- ferramentas-api.md: inventário das 24 ferramentas OpenSEO + tabela de
  migração endpoint a endpoint
- implementacao-tecnica.md: striking distance, desperdício e filtro de
  ruído do GSC em código
- seo-specialist v3.0: primary_mcps [openseo], bloco de MCPs desligados,
  FID → INP nos Core Web Vitals

maxPages tem default 50: descomplicar.pt auditado com o default deu 25
URLs e 92 issues sem críticos; com maxPages 600 deu 1337 issues e 9
críticos. Documentado como gate — a fase Search Console dimensiona o crawl.

Limitações declaradas nas skills: get_audit_issues devolve contagens sem
URLs pela bridge MCP (structuredContent.issues não é entregue) e o whoami
não expõe saldo de créditos em self-hosted.
This commit is contained in:
2026-07-30 22:39:40 +01:00
parent f90ba6ec76
commit 2d05873642
9 changed files with 545 additions and 497 deletions
@@ -203,13 +203,17 @@ Data: YYYY-MM-DD | Versao 2.0 (2026 Standards)
## Anexos
### A. Metodologia
- Lighthouse: 3 runs, mediana reportada
- GSC: Ultimos 90 dias completos
- Motor: OpenSEO (crawl same-origin, robots-aware) + Search Console
- Crawl: [N] páginas de [M] com impressões no GSC — **declarar sempre a cobertura**
- Search Console: últimos 3 meses; vista por página para totais (o GSC anonimiza queries)
- Core Web Vitals: Lighthouse em amostra; páginas individuais via chrome-devtools
- Thresholds: Google 2026 Standards
- Custos de chamadas pagas: estimativas do schema, não medições
### B. Glossario
- **DR**: Domain Rating (Ahrefs)
- **INP**: Interaction to Next Paint (substitui FID em 2026)
### B. Glossário
- **Striking distance**: posição 4-20 com impressões relevantes — onde está o retorno
- **KD**: Keyword Difficulty
- **INP**: Interaction to Next Paint (substituiu o FID em 2026)
- **E-E-A-T**: Experience, Expertise, Authoritativeness, Trust
- **CTR**: Click-Through Rate