Analytics-Based SEO Audit

SEO audit

by Ryze-AI-Adgent · MIT license · ★ 3,135 on GitHub

SEO audit cover

Full SEO audit of a site from its real Search Console + GA4 data — indexation health, CTR anomalies, decaying pages, striking-distance keywords, quick wins. Use when asked to "audit my site", "SEO audit", "why is my organic traffic…

---
name: seo-audit
description: Full SEO audit of a site from its real Search Console + GA4 data — indexation health, CTR anomalies, decaying pages, striking-distance keywords, quick wins. Use when asked to "audit my site", "SEO audit", "why is my organic traffic down", or "SEO health check".
---

# SEO Audit

## Requires

The free Ryze MCP connector (`https://connector.get-ryze.ai/mcp`). Claude Code: `claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp`. claude.ai / Desktop / Cursor: add it as a custom connector with the same URL. Setup: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp

Audit the user's site using their own data via the Ryze MCP. No estimates — everything below comes from their actual GSC/GA4.

## Workflow

1. **Pick the property.** `google_search_console__listSites`. If several, use the one matching the user's domain; confirm only when ambiguous.
2. **Indexation.** `google_search_console__getIndexationSummary` — indexed vs not-indexed counts and reasons. Flag anything unusual (large "Crawled — currently not indexed", spikes in excluded pages).
3. **Performance baseline.** `google_search_console__runRawSearchAnalytics`: last 90 days vs previous 90, dimensions `query` and `page` (two calls each period). Compute clicks/impressions/CTR/position deltas.

Overview

The free Ryze MCP connector (https://connector.get-ryze.ai/mcp). Claude Code: claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp. claude.ai / Desktop / Cursor: add it as a custom connector with the same URL. Setup: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp

Manual install (npx, ZIP)
Claude Codenpx skills add Ryze-AI-Adgent/open-seo-mcp-skills --skill seo-audit -g -a claude-code
Claude Code (degit)npx degit Ryze-AI-Adgent/open-seo-mcp-skills/skills/seo-audit#main ~/.claude/skills/seo-audit-ryze-ai-adgent
Claude.ai / desktopZip the folder and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md2.6 KB
Read SKILL.md here
Ryze-AI-Adgent/main1 file shown
SKILL.md
Show the full text35 lines
seo-audit-ryze-ai-adgent/SKILL.md35 lines · 2.6 KB

SEO Audit

Requires

The free Ryze MCP connector (https://connector.get-ryze.ai/mcp). Claude Code: claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp. claude.ai / Desktop / Cursor: add it as a custom connector with the same URL. Setup: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp

Audit the user's site using their own data via the Ryze MCP. No estimates — everything below comes from their actual GSC/GA4.

Workflow

  1. Pick the property. google_search_console__listSites. If several, use the one matching the user's domain; confirm only when ambiguous.
  2. Indexation. google_search_console__getIndexationSummary — indexed vs not-indexed counts and reasons. Flag anything unusual (large "Crawled — currently not indexed", spikes in excluded pages).
  3. Performance baseline. google_search_console__runRawSearchAnalytics: last 90 days vs previous 90, dimensions query and page (two calls each period). Compute clicks/impressions/CTR/position deltas.
  4. Find the problems:
    • Decaying pages — pages whose clicks dropped >30% period-over-period
    • CTR anomalies — queries with position ≤ 5 but CTR < 2% (title/meta problem)
    • Striking distance — queries at position 8–20 with high impressions (one push from page 1)
    • Cannibalization — same query, multiple ranking pages splitting clicks
  5. Spot-check pages. For the 3–5 worst pages, google_search_console__inspectUrl — canonical, indexing state, last crawl.
  6. Cross-check traffic. google_analytics__runRawReport — organic sessions + conversions by landing page, same periods. A page can hold rankings but lose revenue; call that out.
  7. AI traffic. google_analytics__getAIReferrals for the same window — note whether AI engines are becoming a meaningful channel for this site.

Output

A report with: verdict up top (one paragraph, is the site healthy or not and the #1 issue), then sections — Indexation, Losers, Quick wins (striking distance + CTR fixes, ranked by impressions), Cannibalization — each with a table and the specific fix. End with a prioritized 5-item action list.

Fallbacks

If GSC isn't connected, say so and point to Ryze connector setup (https://help.get-ryze.ai/claude/connect) — do not substitute third-party estimates for the site's own data.

1---
2name: seo-audit
3description: Full SEO audit of a site from its real Search Console + GA4 data — indexation health, CTR anomalies, decaying pages, striking-distance keywords, quick wins. Use when asked to "audit my site", "SEO audit", "why is my organic traffic down", or "SEO health check".
4---
5 
6# SEO Audit
7 
8## Requires
9 
10The free Ryze MCP connector (`https://connector.get-ryze.ai/mcp`). Claude Code: `claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp`. claude.ai / Desktop / Cursor: add it as a custom connector with the same URL. Setup: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp
11 
12Audit the user's site using their own data via the Ryze MCP. No estimates — everything below comes from their actual GSC/GA4.
13 
14## Workflow
15 
161. **Pick the property.** `google_search_console__listSites`. If several, use the one matching the user's domain; confirm only when ambiguous.
172. **Indexation.** `google_search_console__getIndexationSummary` — indexed vs not-indexed counts and reasons. Flag anything unusual (large "Crawled — currently not indexed", spikes in excluded pages).
183. **Performance baseline.** `google_search_console__runRawSearchAnalytics`: last 90 days vs previous 90, dimensions `query` and `page` (two calls each period). Compute clicks/impressions/CTR/position deltas.
194. **Find the problems:**
20 - **Decaying pages** — pages whose clicks dropped >30% period-over-period
21 - **CTR anomalies** — queries with position ≤ 5 but CTR < 2% (title/meta problem)
22 - **Striking distance** — queries at position 8–20 with high impressions (one push from page 1)
23 - **Cannibalization** — same query, multiple ranking pages splitting clicks
245. **Spot-check pages.** For the 3–5 worst pages, `google_search_console__inspectUrl` — canonical, indexing state, last crawl.
256. **Cross-check traffic.** `google_analytics__runRawReport` — organic sessions + conversions by landing page, same periods. A page can hold rankings but lose revenue; call that out.
267. **AI traffic.** `google_analytics__getAIReferrals` for the same window — note whether AI engines are becoming a meaningful channel for this site.
27 
28## Output
29 
30A report with: verdict up top (one paragraph, is the site healthy or not and the #1 issue), then sections — Indexation, Losers, Quick wins (striking distance + CTR fixes, ranked by impressions), Cannibalization — each with a table and the specific fix. End with a prioritized 5-item action list.
31 
32## Fallbacks
33 
34If GSC isn't connected, say so and point to Ryze connector setup (https://help.get-ryze.ai/claude/connect) — do not substitute third-party estimates for the site's own data.
35 
View all files on GitHub →

Details

License
MIT
Stars on the repo
★ 3,135
Checked
Source
Ryze-AI-Adgent/open-seo-mcp-skills ↗
Creator
Ryze-AI-Adgent · 8 listings
View creator

Similar skills

See all →
SkillAgent Browsing AuditorAgriciDaniel/claude-seo · by AgriciDanielAudit and fix agent readiness: the Lighthouse Agentic Browsing fraction, accessibility tree for agents, robots.txt and Content-Signal for AI agents, WAF treatment of agent traffic, llms.txt, Markdown delivery, ai-catalog.json, /.well-known discovery files, and WebMCP tools. Exclude AI citability and brand signals (seo-geo) and commerce protocol depth (seo-ecommerce).★ 17.4k GitHub starsSkillBacklink Profile AnalysisAgriciDaniel/claude-seo · by AgriciDanielBacklink profile analysis: referring domains, anchor text distribution, toxic link detection, competitor gap analysis. Works with free APIs (Moz, Bing Webmaster, Common Crawl) and DataForSEO extension. Use when user says backlinks, link profile, referring domains, anchor text, toxic links, link gap, link building, disavow, or backlink audit.★ 17.4k GitHub starsSkillCMS Configuration Helpernowork-studio/notfair-plugin · by nowork-studioConnect a CMS to notfair SEO tools. Guides users through configuring WordPress, Strapi, Contentful, or Ghost — tests the connection, and writes credentials to .env.local. Once set up, seo-analysis automatically cross- references CMS content against Google Search Console data. Use whenever the user says "connect my CMS", "set up WordPress", "configure Strapi", "add Contentful", "connect Ghost", or "CMS setup". Also trigger if the user asks why no CMS data appears in a seo-analysis report.★ 3.9k GitHub starsSkillBacklink Comparison ToolRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentBacklink profile for any domain — referring domains, authority, anchors, new/lost links, and a side-by-side vs a competitor. Use when asked "check my backlinks", "backlink profile of X", "who links to them", or "link gap vs competitor".★ 3.1k GitHub starsSkillWeb Vitals Auditoraddyosmani/web-quality-skills · by addyosmaniOptimize Core Web Vitals (LCP, INP, CLS) for better page experience using field and lab evidence. Use when asked to "improve Core Web Vitals", "fix LCP", "reduce CLS", "optimize INP", "page experience optimization", or "fix layout shifts".★ 2.8k GitHub starsSkillSEO Publishing Looptsingyuai/growth-lab · by tsingyuaiRun an SEO page observation-action-review loop with persistent Memory by coordinating demand research, page creation, adversarial review, image generation, IndexNow submission, and performance review. Use when taking an SEO page from opportunity discovery through publication, measurement, iteration, or continuing a previous SEO loop from Memory.★ 2k GitHub stars

More from Ryze-AI-Adgent

SkillAI Engine Visibility TrackerRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentMeasure real AI-engine visibility — traffic from ChatGPT, Perplexity, Claude, Gemini and which pages they cite — from actual GA4 referral data, not prompt sampling. Use when asked "AI visibility", "GEO/AEO check", "do LLMs cite us", "traffic from ChatGPT", or "how do we show up in AI search".★ 3.1k GitHub starsSkillBacklink Comparison ToolRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentBacklink profile for any domain — referring domains, authority, anchors, new/lost links, and a side-by-side vs a competitor. Use when asked "check my backlinks", "backlink profile of X", "who links to them", or "link gap vs competitor".★ 3.1k GitHub starsSkillKeyword Gap AnalyzerRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentFind keywords a competitor ranks for that the user's site doesn't — the content gap, prioritized by volume and winnability. Use when asked "what does competitor.com rank for", "keyword gap vs X", "steal competitor keywords", or "why do they outrank us".★ 3.1k GitHub starsSkillSEO Content BriefRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentSERP-driven content brief for a target keyword — what ranks, what to cover, headings, questions, internal links from your own data. Use when asked for a "content brief", "outline to rank for X", "what should this article cover", or before writing any SEO page.★ 3.1k GitHub starsSkillKeyword Research & MetricsRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentKeyword research from a seed topic — ideas, real Google volume/CPC, intent, difficulty, clustered into a plan. Use when asked to "find keywords", "keyword research for X", "what should I rank for", or "build a keyword plan".★ 3.1k GitHub starsSkillSERP Rank TrackingRyze-AI-Adgent/open-seo-mcp-skills · by Ryze-AI-AdgentRank tracking without a tracker subscription — position movers between any two periods from real Search Console data. Use when asked "how are my rankings", "what moved this week/month", "track my keywords", or "did the update hit me".★ 3.1k GitHub stars