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

Seo Internal Links

skill-lionkiii-claude-seo-skills-seo-internal-links · by lionkiii

>

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

Install

$ agentstack add skill-lionkiii-claude-seo-skills-seo-internal-links

✓ 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-lionkiii-claude-seo-skills-seo-internal-links)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
3mo 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 Internal Links? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Internal Link Audit

Crawls a domain to build an internal link graph. Identifies orphan pages, underlinked pages, and broken internal links. Suggests anchor text improvements.

Inputs

  • domain: Target domain URL (e.g., https://example.com). Include protocol.
  • max_pages (optional): Max pages to crawl. Default: 100. Maximum: 200.

Execution

Step 1: Crawl Site

Use scripts/fetch_page.py and scripts/parse_html.py to crawl the site:

# Fetch homepage
python3 scripts/fetch_page.py 
# Parse HTML to extract links
python3 scripts/parse_html.py 

Follow internal links only (same domain hostname). Normalize URLs:

  • Remove trailing slashes (treat /about and /about/ as same)
  • Remove URL fragments (#section)
  • Preserve query strings only if they appear to be content (not tracking: strip utm_*, ref=, source=)

Respect robots.txt: fetch /robots.txt first, skip disallowed paths. Cap crawl at max_pages. Track crawl queue (BFS order from homepage).

Step 2: Build Link Graph

For each crawled page, record:

  • Source URL
  • Target URL (all internal links found)
  • Anchor text for each link

Build adjacency structure:

  • outbound[url] = list of (target, anchor_text)
  • inbound[url] = list of (source, anchor_text)

Step 3: Calculate Per-Page Metrics

For each crawled page:

  • Inbound internal links count (links from other crawled pages pointing here)
  • Outbound internal links count (links from this page to other pages)
  • Link depth from homepage (BFS level at which this page was first discovered)

Step 4: Identify Issues

  • Orphan pages (hard finding): Pages discovered via sitemap (/sitemap.xml) or linked from other pages but with zero inbound internal links. Fetch sitemap first to identify all known URLs.
  • Underlinked pages (heuristic flag): Pages with fewer inbound internal links than a configurable threshold (default: 3). This threshold is a heuristic for prioritizing internal-linking work — Google defines no numeric minimum, so it is not a Google requirement.
  • Excessive outbound: Pages with > 100 outbound internal links (PageRank dilution).
  • Broken internal links: For top 20 most-linked pages, verify HTTP status. Flag 4xx/5xx.

Step 5: Anchor Text Suggestions for Top 5 Underlinked Pages

For each of the 5 most underlinked pages (fewest inbound links, excluding orphans):

  1. Fetch the page and extract H1 and `` tag
  2. Identify top 3 relevant anchor text options based on: H1 noun phrases, title keywords, page URL slug
  3. Find pages in crawl that mention related terms and could link to this page
  4. Output: target URL, suggested anchors (ranked), recommended source pages

Anchor text guidance (per Google's crawlable-links doc, https://developers.google.com/search/docs/crawling-indexing/links-crawlable):

  • Write descriptive, reasonably concise link text relevant to the target page
  • Avoid generic anchors like "click here", "read more", or "website"
  • Links must be ` elements with an href` attribute resolving to a crawlable URL — Google can't reliably extract script-driven pseudo-links

Step 6: Optional Ahrefs Enrichment

If Ahrefs available (ToolSearch '+ahrefs'):

  • Fetch site-explorer-pages-by-internal-links for the domain
  • Cross-reference crawl findings with Ahrefs data
  • Add ### Ahrefs Internal Link Data section showing discrepancies

Output Format

## Internal Link Audit: [domain]

### Summary Stats

| Metric | Value |
|--------|-------|
| Pages crawled | N / max_pages |
| Total internal links | N |
| Avg inbound links per page | N.N |
| Orphan pages found | N |
| Underlinked pages (below threshold, default 100)

| Page | Outbound Links |
|------|----------------|

## Data Sources

- Internal crawl via fetch_page.py + parse_html.py ([N] pages, [date])
- [Ahrefs MCP — if used]

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.