antigravity-seo-kit 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of antigravity-seo-kit might be problematic. Click here for more details.
- package/.agent/agent.md +96 -0
- package/.agent/skills/seo/SKILL.md +153 -0
- package/.agent/skills/seo/references/cwv-thresholds.md +108 -0
- package/.agent/skills/seo/references/eeat-framework.md +214 -0
- package/.agent/skills/seo/references/local-schema-types.md +230 -0
- package/.agent/skills/seo/references/local-seo-signals.md +218 -0
- package/.agent/skills/seo/references/maps-api-endpoints.md +160 -0
- package/.agent/skills/seo/references/maps-free-apis.md +176 -0
- package/.agent/skills/seo/references/maps-gbp-checklist.md +150 -0
- package/.agent/skills/seo/references/maps-geo-grid.md +154 -0
- package/.agent/skills/seo/references/quality-gates.md +155 -0
- package/.agent/skills/seo/references/schema-types.md +118 -0
- package/.agent/skills/seo/schema/templates.json +213 -0
- package/.agent/skills/seo/scripts/analyze_visual.py +217 -0
- package/.agent/skills/seo/scripts/capture_screenshot.py +181 -0
- package/.agent/skills/seo/scripts/fetch_page.py +196 -0
- package/.agent/skills/seo/scripts/parse_html.py +201 -0
- package/.agent/skills/seo-audit/SKILL.md +278 -0
- package/.agent/skills/seo-competitor-pages/SKILL.md +212 -0
- package/.agent/skills/seo-content/SKILL.md +230 -0
- package/.agent/skills/seo-dataforseo/SKILL.md +418 -0
- package/.agent/skills/seo-geo/SKILL.md +305 -0
- package/.agent/skills/seo-google/SKILL.md +405 -0
- package/.agent/skills/seo-google/assets/templates/cwv-audit-report.md +48 -0
- package/.agent/skills/seo-google/assets/templates/gsc-performance-report.md +44 -0
- package/.agent/skills/seo-google/assets/templates/indexation-status-report.md +43 -0
- package/.agent/skills/seo-google/references/auth-setup.md +154 -0
- package/.agent/skills/seo-google/references/ga4-data-api.md +184 -0
- package/.agent/skills/seo-google/references/indexing-api.md +107 -0
- package/.agent/skills/seo-google/references/keyword-planner-api.md +66 -0
- package/.agent/skills/seo-google/references/nlp-api.md +55 -0
- package/.agent/skills/seo-google/references/pagespeed-crux-api.md +204 -0
- package/.agent/skills/seo-google/references/rate-limits-quotas.md +75 -0
- package/.agent/skills/seo-google/references/search-console-api.md +156 -0
- package/.agent/skills/seo-google/references/supplementary-apis.md +99 -0
- package/.agent/skills/seo-google/references/youtube-api.md +49 -0
- package/.agent/skills/seo-google/scripts/crux_history.py +321 -0
- package/.agent/skills/seo-google/scripts/ga4_report.py +478 -0
- package/.agent/skills/seo-google/scripts/google_auth.py +795 -0
- package/.agent/skills/seo-google/scripts/google_report.py +2273 -0
- package/.agent/skills/seo-google/scripts/gsc_inspect.py +340 -0
- package/.agent/skills/seo-google/scripts/gsc_query.py +378 -0
- package/.agent/skills/seo-google/scripts/indexing_notify.py +313 -0
- package/.agent/skills/seo-google/scripts/keyword_planner.py +297 -0
- package/.agent/skills/seo-google/scripts/nlp_analyze.py +309 -0
- package/.agent/skills/seo-google/scripts/pagespeed_check.py +649 -0
- package/.agent/skills/seo-google/scripts/youtube_search.py +355 -0
- package/.agent/skills/seo-hreflang/SKILL.md +192 -0
- package/.agent/skills/seo-image-gen/SKILL.md +211 -0
- package/.agent/skills/seo-image-gen/references/cost-tracking.md +47 -0
- package/.agent/skills/seo-image-gen/references/gemini-models.md +200 -0
- package/.agent/skills/seo-image-gen/references/mcp-tools.md +115 -0
- package/.agent/skills/seo-image-gen/references/post-processing.md +192 -0
- package/.agent/skills/seo-image-gen/references/presets.md +69 -0
- package/.agent/skills/seo-image-gen/references/prompt-engineering.md +411 -0
- package/.agent/skills/seo-image-gen/references/seo-image-presets.md +137 -0
- package/.agent/skills/seo-image-gen/scripts/batch.py +97 -0
- package/.agent/skills/seo-image-gen/scripts/cost_tracker.py +191 -0
- package/.agent/skills/seo-image-gen/scripts/edit.py +141 -0
- package/.agent/skills/seo-image-gen/scripts/generate.py +149 -0
- package/.agent/skills/seo-image-gen/scripts/presets.py +153 -0
- package/.agent/skills/seo-image-gen/scripts/setup_mcp.py +151 -0
- package/.agent/skills/seo-image-gen/scripts/validate_setup.py +133 -0
- package/.agent/skills/seo-images/SKILL.md +176 -0
- package/.agent/skills/seo-local/SKILL.md +381 -0
- package/.agent/skills/seo-maps/SKILL.md +328 -0
- package/.agent/skills/seo-page/SKILL.md +86 -0
- package/.agent/skills/seo-plan/SKILL.md +118 -0
- package/.agent/skills/seo-plan/assets/agency.md +175 -0
- package/.agent/skills/seo-plan/assets/ecommerce.md +167 -0
- package/.agent/skills/seo-plan/assets/generic.md +144 -0
- package/.agent/skills/seo-plan/assets/local-service.md +160 -0
- package/.agent/skills/seo-plan/assets/publisher.md +153 -0
- package/.agent/skills/seo-plan/assets/saas.md +135 -0
- package/.agent/skills/seo-programmatic/SKILL.md +171 -0
- package/.agent/skills/seo-schema/SKILL.md +223 -0
- package/.agent/skills/seo-sitemap/SKILL.md +180 -0
- package/.agent/skills/seo-technical/SKILL.md +211 -0
- package/.agent/workflows/seo-audit.md +17 -0
- package/.agent/workflows/seo-competitor-pages.md +12 -0
- package/.agent/workflows/seo-content.md +14 -0
- package/.agent/workflows/seo-geo.md +12 -0
- package/.agent/workflows/seo-google.md +12 -0
- package/.agent/workflows/seo-hreflang.md +12 -0
- package/.agent/workflows/seo-images.md +13 -0
- package/.agent/workflows/seo-local.md +12 -0
- package/.agent/workflows/seo-maps.md +11 -0
- package/.agent/workflows/seo-page.md +13 -0
- package/.agent/workflows/seo-plan.md +13 -0
- package/.agent/workflows/seo-programmatic.md +12 -0
- package/.agent/workflows/seo-schema.md +11 -0
- package/.agent/workflows/seo-sitemap.md +9 -0
- package/.agent/workflows/seo-technical.md +18 -0
- package/LICENSE +88 -0
- package/README.md +122 -0
- package/bin/cli.js +117 -0
- package/docs/ARCHITECTURE.md +218 -0
- package/docs/COMMANDS.md +184 -0
- package/docs/INSTALLATION.md +100 -0
- package/docs/MCP-INTEGRATION.md +153 -0
- package/docs/TROUBLESHOOTING.md +151 -0
- package/docs/superpowers/plans/2026-03-13-github-audit-fixes.md +511 -0
- package/extensions/banana/README.md +95 -0
- package/extensions/banana/docs/BANANA-SETUP.md +86 -0
- package/extensions/banana/install.sh +170 -0
- package/extensions/banana/references/cost-tracking.md +47 -0
- package/extensions/banana/references/gemini-models.md +200 -0
- package/extensions/banana/references/mcp-tools.md +115 -0
- package/extensions/banana/references/post-processing.md +192 -0
- package/extensions/banana/references/presets.md +69 -0
- package/extensions/banana/references/prompt-engineering.md +411 -0
- package/extensions/banana/references/seo-image-presets.md +137 -0
- package/extensions/banana/scripts/batch.py +97 -0
- package/extensions/banana/scripts/cost_tracker.py +191 -0
- package/extensions/banana/scripts/edit.py +141 -0
- package/extensions/banana/scripts/generate.py +149 -0
- package/extensions/banana/scripts/presets.py +153 -0
- package/extensions/banana/scripts/setup_mcp.py +151 -0
- package/extensions/banana/scripts/validate_setup.py +133 -0
- package/extensions/banana/uninstall.sh +43 -0
- package/extensions/dataforseo/README.md +169 -0
- package/extensions/dataforseo/docs/DATAFORSEO-SETUP.md +74 -0
- package/extensions/dataforseo/field-config.json +280 -0
- package/extensions/dataforseo/install.ps1 +110 -0
- package/extensions/dataforseo/install.sh +161 -0
- package/extensions/dataforseo/uninstall.ps1 +35 -0
- package/extensions/dataforseo/uninstall.sh +39 -0
- package/lib/api.js +190 -0
- package/lib/fingerprint.js +68 -0
- package/lib/installer.js +486 -0
- package/lib/utils.js +254 -0
- package/package.json +40 -0
- package/pyproject.toml +11 -0
- package/requirements-google.txt +15 -0
- package/requirements.txt +11 -0
package/docs/COMMANDS.md
ADDED
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
# Workflows Reference
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
All SEO Kit workflows start with `/seo-` followed by a command name. These are defined in `.agent/workflows/`.
|
|
6
|
+
|
|
7
|
+
## Workflow List
|
|
8
|
+
|
|
9
|
+
### `/seo-audit`
|
|
10
|
+
|
|
11
|
+
Full website SEO audit with specialist skills.
|
|
12
|
+
|
|
13
|
+
**Example:**
|
|
14
|
+
```
|
|
15
|
+
/seo-audit https://example.com
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
**What it does:**
|
|
19
|
+
1. Crawls up to 500 pages
|
|
20
|
+
2. Detects business type
|
|
21
|
+
3. Activates 7+ specialist skills
|
|
22
|
+
4. Generates SEO Health Score (0-100)
|
|
23
|
+
5. Creates prioritized action plan
|
|
24
|
+
|
|
25
|
+
**Output:**
|
|
26
|
+
- `FULL-AUDIT-REPORT.md`
|
|
27
|
+
- `ACTION-PLAN.md`
|
|
28
|
+
- `screenshots/` (if Playwright available)
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
### `/seo-page`
|
|
33
|
+
|
|
34
|
+
Deep single-page analysis.
|
|
35
|
+
|
|
36
|
+
**Example:**
|
|
37
|
+
```
|
|
38
|
+
/seo-page https://example.com/about
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
### `/seo-technical`
|
|
44
|
+
|
|
45
|
+
Technical SEO audit across 9 categories.
|
|
46
|
+
|
|
47
|
+
**Example:**
|
|
48
|
+
```
|
|
49
|
+
/seo-technical https://example.com
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**Categories:** Crawlability, Indexability, Security, URL Structure, Mobile, Core Web Vitals, Structured Data, JavaScript Rendering, IndexNow
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
### `/seo-content`
|
|
57
|
+
|
|
58
|
+
E-E-A-T and content quality analysis.
|
|
59
|
+
|
|
60
|
+
**Example:**
|
|
61
|
+
```
|
|
62
|
+
/seo-content https://example.com/blog/post
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
---
|
|
66
|
+
|
|
67
|
+
### `/seo-schema`
|
|
68
|
+
|
|
69
|
+
Schema markup detection, validation, and generation.
|
|
70
|
+
|
|
71
|
+
**Example:**
|
|
72
|
+
```
|
|
73
|
+
/seo-schema https://example.com
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
### `/seo-geo`
|
|
79
|
+
|
|
80
|
+
AI Overviews / Generative Engine Optimization.
|
|
81
|
+
|
|
82
|
+
**Example:**
|
|
83
|
+
```
|
|
84
|
+
/seo-geo https://example.com/blog/guide
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
### `/seo-images`
|
|
90
|
+
|
|
91
|
+
Image optimization analysis.
|
|
92
|
+
|
|
93
|
+
**Example:**
|
|
94
|
+
```
|
|
95
|
+
/seo-images https://example.com
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
### `/seo-sitemap`
|
|
101
|
+
|
|
102
|
+
Analyze existing XML sitemap or generate new one.
|
|
103
|
+
|
|
104
|
+
**Example:**
|
|
105
|
+
```
|
|
106
|
+
/seo-sitemap https://example.com/sitemap.xml
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
### `/seo-plan`
|
|
112
|
+
|
|
113
|
+
Strategic SEO planning.
|
|
114
|
+
|
|
115
|
+
**Types:** `saas`, `local`, `ecommerce`, `publisher`, `agency`
|
|
116
|
+
|
|
117
|
+
**Example:**
|
|
118
|
+
```
|
|
119
|
+
/seo-plan saas
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
### `/seo-competitor-pages`
|
|
125
|
+
|
|
126
|
+
Competitor comparison page generation.
|
|
127
|
+
|
|
128
|
+
**Example:**
|
|
129
|
+
```
|
|
130
|
+
/seo-competitor-pages generate
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
### `/seo-hreflang`
|
|
136
|
+
|
|
137
|
+
Hreflang and international SEO audit.
|
|
138
|
+
|
|
139
|
+
**Example:**
|
|
140
|
+
```
|
|
141
|
+
/seo-hreflang https://example.com
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
### `/seo-programmatic`
|
|
147
|
+
|
|
148
|
+
Programmatic SEO analysis and planning.
|
|
149
|
+
|
|
150
|
+
**Example:**
|
|
151
|
+
```
|
|
152
|
+
/seo-programmatic https://example.com/tools/
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
### `/seo-local`
|
|
158
|
+
|
|
159
|
+
Local SEO analysis (GBP, citations, reviews, map pack).
|
|
160
|
+
|
|
161
|
+
**Example:**
|
|
162
|
+
```
|
|
163
|
+
/seo-local https://example.com
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
## Quick Reference
|
|
169
|
+
|
|
170
|
+
| Workflow | Use Case |
|
|
171
|
+
|----------|----------|
|
|
172
|
+
| `/seo-audit` | Full website audit |
|
|
173
|
+
| `/seo-page` | Single page analysis |
|
|
174
|
+
| `/seo-technical` | Technical SEO check |
|
|
175
|
+
| `/seo-content` | E-E-A-T analysis |
|
|
176
|
+
| `/seo-schema` | Schema validation |
|
|
177
|
+
| `/seo-sitemap` | Sitemap validation/generation |
|
|
178
|
+
| `/seo-images` | Image optimization |
|
|
179
|
+
| `/seo-geo` | AI search optimization |
|
|
180
|
+
| `/seo-plan` | Strategic planning |
|
|
181
|
+
| `/seo-programmatic` | Programmatic SEO |
|
|
182
|
+
| `/seo-competitor-pages` | Competitor pages |
|
|
183
|
+
| `/seo-local` | Local SEO |
|
|
184
|
+
| `/seo-hreflang` | International SEO |
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
# Installation Guide
|
|
2
|
+
|
|
3
|
+
## Prerequisites
|
|
4
|
+
|
|
5
|
+
- **Python 3.11+** with pip
|
|
6
|
+
- **Google Antigravity** or compatible AI coding agent
|
|
7
|
+
|
|
8
|
+
Optional:
|
|
9
|
+
- **Playwright** for screenshot capabilities
|
|
10
|
+
|
|
11
|
+
## Quick Start (Recommended)
|
|
12
|
+
|
|
13
|
+
1. **Clone or copy SEO Kit into your workspace:**
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
git clone https://github.com/AgriciDaniel/claude-seo.git seo-kit
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
2. **Open the workspace in Antigravity**
|
|
20
|
+
|
|
21
|
+
The agent will auto-discover:
|
|
22
|
+
- Skills in `.agent/skills/`
|
|
23
|
+
- Workflows in `.agent/workflows/`
|
|
24
|
+
- Agent instructions in `.agent/agent.md`
|
|
25
|
+
|
|
26
|
+
3. **Install Python dependencies:**
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
pip install -r requirements.txt
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
4. **Install Playwright browsers** (optional):
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
pip install playwright
|
|
36
|
+
playwright install chromium
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Project Structure
|
|
40
|
+
|
|
41
|
+
| Component | Path |
|
|
42
|
+
|-----------|------|
|
|
43
|
+
| Agent config | `.agent/agent.md` |
|
|
44
|
+
| Main skill | `.agent/skills/seo/SKILL.md` |
|
|
45
|
+
| Sub-skills | `.agent/skills/seo-*/SKILL.md` |
|
|
46
|
+
| Workflows | `.agent/workflows/seo-*.md` |
|
|
47
|
+
| References | `.agent/skills/seo/references/` |
|
|
48
|
+
| Scripts | `.agent/skills/seo/scripts/` |
|
|
49
|
+
| Schema templates | `.agent/skills/seo/schema/` |
|
|
50
|
+
|
|
51
|
+
## Verify Installation
|
|
52
|
+
|
|
53
|
+
1. Open the workspace in Antigravity
|
|
54
|
+
2. The agent should list available skills
|
|
55
|
+
3. Try a workflow:
|
|
56
|
+
```
|
|
57
|
+
/seo-audit https://example.com
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Extensions (Optional)
|
|
61
|
+
|
|
62
|
+
### DataForSEO Extension
|
|
63
|
+
|
|
64
|
+
Adds live SEO data via DataForSEO MCP server.
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# Follow setup in extensions/dataforseo/README.md
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Banana Image Gen Extension
|
|
71
|
+
|
|
72
|
+
Adds AI image generation via Gemini MCP.
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
# Follow setup in extensions/banana/README.md
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Troubleshooting
|
|
79
|
+
|
|
80
|
+
### Skills not discovered
|
|
81
|
+
|
|
82
|
+
Ensure the `.agent/` directory is at the root of your workspace:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
ls .agent/skills/seo/SKILL.md
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### Python dependency errors
|
|
89
|
+
|
|
90
|
+
Install dependencies manually:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
pip install beautifulsoup4 requests lxml playwright Pillow urllib3 validators
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### Playwright screenshot errors
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
playwright install chromium
|
|
100
|
+
```
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
<!-- Updated: 2026-02-07 -->
|
|
2
|
+
# MCP Integration
|
|
3
|
+
|
|
4
|
+
## Overview
|
|
5
|
+
|
|
6
|
+
SEO Kit can integrate with Model Context Protocol (MCP) servers to access external APIs and enhance analysis capabilities.
|
|
7
|
+
|
|
8
|
+
## Available Integrations
|
|
9
|
+
|
|
10
|
+
### PageSpeed Insights API
|
|
11
|
+
|
|
12
|
+
Use Google's PageSpeed Insights API directly for real Core Web Vitals data.
|
|
13
|
+
|
|
14
|
+
**Configuration:**
|
|
15
|
+
|
|
16
|
+
1. Get an API key from [Google Cloud Console](https://console.cloud.google.com/)
|
|
17
|
+
2. Enable the PageSpeed Insights API
|
|
18
|
+
3. Use in your analysis:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
curl "https://www.googleapis.com/pagespeedonline/v5/runPagespeed?url=URL&key=YOUR_API_KEY"
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Google Search Console
|
|
25
|
+
|
|
26
|
+
For organic search data, use the `mcp-server-gsc` MCP server by [ahonn](https://github.com/ahonn/mcp-server-gsc). Provides search performance data, URL inspection, and sitemap management.
|
|
27
|
+
|
|
28
|
+
**Configuration:**
|
|
29
|
+
|
|
30
|
+
```json
|
|
31
|
+
{
|
|
32
|
+
"mcpServers": {
|
|
33
|
+
"google-search-console": {
|
|
34
|
+
"command": "npx",
|
|
35
|
+
"args": ["-y", "mcp-server-gsc"],
|
|
36
|
+
"env": {
|
|
37
|
+
"GOOGLE_CREDENTIALS_PATH": "/path/to/credentials.json"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### PageSpeed Insights MCP Server
|
|
45
|
+
|
|
46
|
+
Use `mcp-server-pagespeed` by [enemyrr](https://github.com/enemyrr/mcp-server-pagespeed) for Lighthouse audits, CWV metrics, and performance scoring via MCP.
|
|
47
|
+
|
|
48
|
+
**Configuration:**
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"mcpServers": {
|
|
53
|
+
"pagespeed": {
|
|
54
|
+
"command": "npx",
|
|
55
|
+
"args": ["-y", "mcp-server-pagespeed"],
|
|
56
|
+
"env": {
|
|
57
|
+
"PAGESPEED_API_KEY": "your-api-key"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Official SEO MCP Servers (2025-2026)
|
|
65
|
+
|
|
66
|
+
The MCP ecosystem for SEO has matured significantly. These are production-ready integrations:
|
|
67
|
+
|
|
68
|
+
| Tool | Package / Endpoint | Type | Notes |
|
|
69
|
+
|------|-------------------|------|-------|
|
|
70
|
+
| **Ahrefs** | `@ahrefs/mcp` | Official | Launched July 2025. Supports local and remote modes. Backlinks, keywords, site audit data. |
|
|
71
|
+
| **Semrush** | `https://mcp.semrush.com/v1/mcp` | Official (remote) | Full API access via remote MCP endpoint. Domain analytics, keyword research, backlink data. |
|
|
72
|
+
| **Google Search Console** | `mcp-server-gsc` | Community | By ahonn. Search performance, URL inspection, sitemaps. |
|
|
73
|
+
| **PageSpeed Insights** | `mcp-server-pagespeed` | Community | By enemyrr. Lighthouse audits, CWV metrics, performance scoring. |
|
|
74
|
+
| **DataForSEO** | `dataforseo-mcp-server` | Official extension | 9 modules, 79 tools, 22 commands. Install: `./extensions/dataforseo/install.sh`. See [extension docs](../extensions/dataforseo/README.md). |
|
|
75
|
+
| **kwrds.ai** | kwrds MCP server | Community | Keyword research, search volume, difficulty scoring. |
|
|
76
|
+
| **SEO Review Tools** | SEO Review Tools MCP | Community | Site auditing and on-page analysis API. |
|
|
77
|
+
|
|
78
|
+
## API Usage Examples
|
|
79
|
+
|
|
80
|
+
### PageSpeed Insights
|
|
81
|
+
|
|
82
|
+
```python
|
|
83
|
+
import requests
|
|
84
|
+
|
|
85
|
+
def get_pagespeed_data(url: str, api_key: str) -> dict:
|
|
86
|
+
"""Fetch PageSpeed Insights data for a URL."""
|
|
87
|
+
endpoint = "https://www.googleapis.com/pagespeedonline/v5/runPagespeed"
|
|
88
|
+
params = {
|
|
89
|
+
"url": url,
|
|
90
|
+
"key": api_key,
|
|
91
|
+
"strategy": "mobile", # or "desktop"
|
|
92
|
+
"category": ["performance", "accessibility", "best-practices", "seo"]
|
|
93
|
+
}
|
|
94
|
+
response = requests.get(endpoint, params=params)
|
|
95
|
+
return response.json()
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### Core Web Vitals from CrUX
|
|
99
|
+
|
|
100
|
+
```python
|
|
101
|
+
def get_crux_data(url: str, api_key: str) -> dict:
|
|
102
|
+
"""Fetch Chrome UX Report data for a URL."""
|
|
103
|
+
endpoint = "https://chromeuxreport.googleapis.com/v1/records:queryRecord"
|
|
104
|
+
payload = {
|
|
105
|
+
"url": url,
|
|
106
|
+
"formFactor": "PHONE" # or "DESKTOP"
|
|
107
|
+
}
|
|
108
|
+
headers = {"Content-Type": "application/json"}
|
|
109
|
+
params = {"key": api_key}
|
|
110
|
+
response = requests.post(endpoint, json=payload, headers=headers, params=params)
|
|
111
|
+
return response.json()
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Metrics Available
|
|
115
|
+
|
|
116
|
+
### From PageSpeed Insights
|
|
117
|
+
|
|
118
|
+
| Metric | Description |
|
|
119
|
+
|--------|-------------|
|
|
120
|
+
| LCP | Largest Contentful Paint (lab) |
|
|
121
|
+
| INP | Interaction to Next Paint (estimated) |
|
|
122
|
+
| CLS | Cumulative Layout Shift (lab) |
|
|
123
|
+
| FCP | First Contentful Paint |
|
|
124
|
+
| TBT | Total Blocking Time |
|
|
125
|
+
| Speed Index | Visual progress speed |
|
|
126
|
+
|
|
127
|
+
### From CrUX (Field Data)
|
|
128
|
+
|
|
129
|
+
| Metric | Description |
|
|
130
|
+
|--------|-------------|
|
|
131
|
+
| LCP | 75th percentile, real users |
|
|
132
|
+
| INP | 75th percentile, real users |
|
|
133
|
+
| CLS | 75th percentile, real users |
|
|
134
|
+
| TTFB | Time to First Byte |
|
|
135
|
+
|
|
136
|
+
## Best Practices
|
|
137
|
+
|
|
138
|
+
1. **Rate Limiting**: Respect API quotas (typically 25k requests/day for PageSpeed)
|
|
139
|
+
2. **Caching**: Cache results to avoid redundant API calls
|
|
140
|
+
3. **Field vs Lab**: Prioritize field data (CrUX) for ranking signals
|
|
141
|
+
4. **Error Handling**: Handle API errors gracefully
|
|
142
|
+
|
|
143
|
+
## Without API Keys
|
|
144
|
+
|
|
145
|
+
If you don't have API keys, SEO Kit can still:
|
|
146
|
+
|
|
147
|
+
1. Analyze HTML source for potential issues
|
|
148
|
+
2. Identify common performance problems
|
|
149
|
+
3. Check for render-blocking resources
|
|
150
|
+
4. Evaluate image optimization opportunities
|
|
151
|
+
5. Detect JavaScript-heavy implementations
|
|
152
|
+
|
|
153
|
+
The analysis will note that actual Core Web Vitals measurements require field data from real users.
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
# Troubleshooting
|
|
2
|
+
|
|
3
|
+
## Common Issues
|
|
4
|
+
|
|
5
|
+
### Skill Not Loading
|
|
6
|
+
|
|
7
|
+
**Symptom:** `/seo-audit` or other workflow commands not recognized
|
|
8
|
+
|
|
9
|
+
**Solutions:**
|
|
10
|
+
|
|
11
|
+
1. Verify installation:
|
|
12
|
+
```bash
|
|
13
|
+
ls .agent/skills/seo/SKILL.md
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
2. Check SKILL.md has proper frontmatter:
|
|
17
|
+
```bash
|
|
18
|
+
head -5 .agent/skills/seo/SKILL.md
|
|
19
|
+
```
|
|
20
|
+
Should start with `---` followed by YAML.
|
|
21
|
+
|
|
22
|
+
3. Ensure `.agent/` directory is at the root of your workspace.
|
|
23
|
+
|
|
24
|
+
4. Restart your AI agent and re-open the workspace.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
### Python Dependency Errors
|
|
29
|
+
|
|
30
|
+
**Symptom:** `ModuleNotFoundError: No module named 'requests'`
|
|
31
|
+
|
|
32
|
+
**Solution:**
|
|
33
|
+
|
|
34
|
+
Install dependencies from the project root:
|
|
35
|
+
```bash
|
|
36
|
+
pip install -r requirements.txt
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Or install individually:
|
|
40
|
+
```bash
|
|
41
|
+
pip install --user beautifulsoup4 requests lxml playwright Pillow urllib3 validators
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### requirements.txt Not Found
|
|
45
|
+
|
|
46
|
+
**Symptom:** `No such file: requirements.txt` after install
|
|
47
|
+
|
|
48
|
+
**Solution:** The file should be in the project root. Verify:
|
|
49
|
+
```bash
|
|
50
|
+
ls requirements.txt
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Windows Python Detection Issues
|
|
54
|
+
|
|
55
|
+
**Symptom:** `python is not recognized` or `pip points to wrong Python`
|
|
56
|
+
|
|
57
|
+
**Solution:**
|
|
58
|
+
|
|
59
|
+
1. Install Python from [python.org](https://python.org) and check "Add to PATH"
|
|
60
|
+
2. Or use the Windows launcher: `py -3 -m pip install -r requirements.txt`
|
|
61
|
+
3. Use `python -m pip` instead of bare `pip`
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
### Playwright Screenshot Errors
|
|
66
|
+
|
|
67
|
+
**Symptom:** `playwright._impl._errors.Error: Executable doesn't exist`
|
|
68
|
+
|
|
69
|
+
**Solution:**
|
|
70
|
+
```bash
|
|
71
|
+
playwright install chromium
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
If that fails:
|
|
75
|
+
```bash
|
|
76
|
+
pip install playwright
|
|
77
|
+
python -m playwright install chromium
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
### Permission Denied Errors
|
|
83
|
+
|
|
84
|
+
**Symptom:** `Permission denied` when running scripts
|
|
85
|
+
|
|
86
|
+
**Solution:**
|
|
87
|
+
```bash
|
|
88
|
+
chmod +x .agent/skills/seo/scripts/*.py
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
### Timeout Errors
|
|
94
|
+
|
|
95
|
+
**Symptom:** `Request timed out after 30 seconds`
|
|
96
|
+
|
|
97
|
+
**Solutions:**
|
|
98
|
+
|
|
99
|
+
1. The target site may be slow: try again
|
|
100
|
+
2. Increase timeout in script calls
|
|
101
|
+
3. Check your network connection
|
|
102
|
+
4. Some sites block automated requests
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
### Schema Validation False Positives
|
|
107
|
+
|
|
108
|
+
**Symptom:** Schema flagged incorrectly
|
|
109
|
+
|
|
110
|
+
**Check:**
|
|
111
|
+
|
|
112
|
+
1. Ensure placeholders are replaced
|
|
113
|
+
2. Verify @context is `https://schema.org`
|
|
114
|
+
3. Check for deprecated types (HowTo, SpecialAnnouncement)
|
|
115
|
+
4. Validate at [Google's Rich Results Test](https://search.google.com/test/rich-results)
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
### Slow Audit Performance
|
|
120
|
+
|
|
121
|
+
**Symptom:** Full audit takes too long
|
|
122
|
+
|
|
123
|
+
**Solutions:**
|
|
124
|
+
|
|
125
|
+
1. Audit crawls up to 500 pages: large sites take time
|
|
126
|
+
2. Skills can run in parallel to speed up analysis
|
|
127
|
+
3. For faster checks, use `/seo-page` on specific URLs
|
|
128
|
+
4. Check if site has slow response times
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Getting Help
|
|
133
|
+
|
|
134
|
+
1. **Check the docs:** Review [COMMANDS.md](COMMANDS.md) and [ARCHITECTURE.md](ARCHITECTURE.md)
|
|
135
|
+
|
|
136
|
+
2. **GitHub Issues:** Report bugs at the repository
|
|
137
|
+
|
|
138
|
+
## Debug Mode
|
|
139
|
+
|
|
140
|
+
To see detailed output, run scripts directly:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
# Test fetch
|
|
144
|
+
python3 .agent/skills/seo/scripts/fetch_page.py https://example.com
|
|
145
|
+
|
|
146
|
+
# Test parse
|
|
147
|
+
python3 .agent/skills/seo/scripts/parse_html.py page.html --json
|
|
148
|
+
|
|
149
|
+
# Test screenshot
|
|
150
|
+
python3 .agent/skills/seo/scripts/capture_screenshot.py https://example.com
|
|
151
|
+
```
|