AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified Apache-2.0 Self-run

Seo

skill-iannuttall-seo-seo · by iannuttall

Use and read this skill immediately if the user request is in any way related to SEO or a site's organic search or AI search presence. That includes site audits, rankings, keyword research, competitors, backlinks, click or traffic changes, indexing problems, crawling, redirects, sitemaps, metadata, structured data, Core Web Vitals, internal links, content opportunities, programmatic SEO, local se…

No reviews yet
0 installs
10 views
0.0% view→install

Install

$ agentstack add skill-iannuttall-seo-seo

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-iannuttall-seo-seo)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
18d ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Seo? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

seo

seo is a local CLI, MCP server, and report engine using crawl, Search Console, Google Analytics, optional Bing evidence, and optional research providers. Reports keep observations, estimates, findings, caveats, costs, and provenance separate. Data stays local. Discover reports at runtime instead of memorising them.

Discover, describe, run

With the MCP server (preferred):

  1. seo_list_reports returns report ids and purposes, optionally by category.
  2. seo_describe_report returns one report's usage, schema, reading order,

limits, verification, and related ids.

  1. seo_run_report runs bounded params. Read structuredContent, not display

text.

The same catalog exists without MCP:

seo reports list --json
seo reports describe  --json
seo reports run  --params '' --json

Describe a report before its first run. Follow readOrder, doNotClaim, and related; reuse its schema and do not guess parameters. When fixableChecks exists, fetch guidance only for failed or warning ids in topActions with seo_describe_report using id and check (CLI: seo reports describe --check ).

Setup and selection

Use setup-check or seo doctor when auth is unknown. Select profiles with --project and list them with seo projects list --json. Without one, pass --site sc-domain:example.com or --url https://example.com. Crawl audits need no Google connection. Agent commands use --json, which never prompts.

Common jobs

Run the first report, read it, then decide. Do not run a whole chain blindly.

| Job | Reports | |---|---| | Page not indexed or missing from Google | index-coverage, index-monitor (URL Inspection), audit-page, redirect-trace | | Traffic or clicks dropped | search-performance-overview, traffic-anomaly, update-correlation, segment-impact, decaying-pages, link-recovery | | Audit a whole site | site-crawl with health: true, report command (main report), full site-crawl only if needed, top-fixes, ai-search-scorecard | | More clicks from existing pages | quick-wins, ctr-underperformers, striking-distance, second-page, internal-links | | AI agent readiness for a content site | agent-readiness, ai-readiness, entity-readiness, llms-txt-audit | | AI search visibility and eligibility | ai-readiness, geo-gaps, ai-mention-research, ai-referrals, seo-to-ai-query | | Plan content from real demand | query-clusters, page-opportunities, content-optimization, cannibalisation | | Research keywords and current results | keyword-research, keyword-metrics, saved-keywords, serp-results | | Find search competitors and plausible gaps | serp-competitors, domain-overview, ranking-pages, ranked-keywords, competitor-keyword-gap | | Research programmatic SEO opportunities | keyword-opportunities, pseo-opportunities, ranking-pages, competitor-keyword-gap, then pseo-audit for an existing site | | Catch regressions over time | technical-watch, crawl-diff, index-watch, measure-change after a fix ships | | Track exact keyword positions | rank-tracking for a saved set and fixed market/device; serp-results for one current query | | Review Bing traffic, crawl, query, and page insights | bing-webmaster-overview, then site-crawl when live page evidence is needed | | Review referring links and linked targets | link-evidence, then verify selected referring URLs and flagged targets directly | | Review real crawler requests in a server log | server-log-analysis, then verify important errors against the original log and server configuration | | Client-ready reporting | monthly-report, narrative-report, monthly-action-plan | | Turn crawl findings into tickets | top-fixes, affected-urls, explain-crawl-issue |

Use seo report first for a broad performance question with a known project. For a large or unfamiliar URL, run sitemap health before a full crawl.

Create a client HTML report

For a polished or branded report, create one standalone HTML file from structured data. Built-in --format html is a predictable fallback. Start with compact JSON and request --full only when deeper evidence is needed. Follow supplied brand direction and design for the findings. Use responsive, accessible, print-friendly HTML, embedded CSS, noindex,nofollow, and no remote scripts or assets.

Show site, period, generated date, provider labels, data status, priorities, limitations, and verification. Preserve partial, capped, sampled, missing, and skipped states. Keep observations separate from interpretation and providers separate from each other. Never invent scores, forecasts, causes, or missing values. Omit secrets and unnecessary raw rows. Save locally and report the path.

For a large site, run site-crawl with health: true and an explicit sitemapUrl when known. Read config.strategy, access, failures, limits, and sitemap completeness. Full crawl second only for page content, metadata, canonicals, links, structured data, or rendered HTML.

Requests use SEO-Skill/ (+https://seoskill.dev). For access.blockedRequests, show provider evidence and the identity. Ask for a temporary exception scoped by audit IP, host or paths, and blocking rule. Never recommend a User-Agent-only bypass.

Evidence rules

  • Check dataStatus, selection counts, caveats, and warnings before

summarising any report. Name skipped or incomplete evidence first.

  • Partial, capped, filtered, or sampled sources never support a zero or an

all-clear. Grouped Search Console totals undercount because anonymised query rows are withheld.

  • Values marked heuristic are prioritisation aids, not forecasts. Never

promise clicks, rankings, indexing, or AI citations from any report.

  • Quote principle and evidenceRef when explaining a recommendation, and

give the user the report's verification step alongside any suggested change.

  • If a report returns no rows, say so plainly.
  • Intentional controls such as noindex, canonicals, and robots rules are

observations until the user confirms they are unintended.

  • Provider traffic, volume, difficulty, visibility, intent, authority, and

ranking history are estimates. Keep them separate from Search Console, Google Analytics, crawl, and live result evidence.

Beyond the report catalog

Use seo help all for direct provider and administration commands. Bing setup uses seo providers bing; link evidence uses seo links --project --json, seo links --provider dataforseo --target --json, or a local file. IndexNow writes externally: validate with seo indexnow submit --dry-run --json and remove dry run only when authorised. Receipt does not prove crawling or indexing. Prefer registered reports.

Use refresh: true or --refresh only when fresh data is requested. Sitemap health always bypasses page-body cache and never writes page responses.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.