AgentStack
SKILL verified MIT Self-run

Webflow Mcp:link Checker

skill-webflow-webflow-skills-link-checker · by webflow

Find and fix broken or insecure links across an entire site, including CMS content, to improve SEO and user experience. Audits HTTP/HTTPS issues and validates all internal and external links.

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

Install

$ agentstack add skill-webflow-webflow-skills-link-checker

✓ 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.

Are you the author of Webflow Mcp:link Checker? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Link Checker

Audit and fix broken or insecure links across your Webflow site to improve SEO and user experience.

Important Note

ALWAYS use Webflow MCP tools for all operations:

  • Use Webflow MCP's webflow_guide_tool to get best practices before starting
  • Use Webflow MCP's data_sites_tool with action list_sites to identify available sites
  • Use Webflow MCP's data_sites_tool with action get_site to retrieve site details
  • Use Webflow MCP's data_pages_tool with action list_pages to get all pages
  • Use Webflow MCP's data_pages_tool with action get_page_content to extract links from static pages
  • Use Webflow MCP's data_pages_tool with action update_static_content to fix links on static pages (requires Designer)
  • Use Webflow MCP's data_cms_tool with action get_collection_list to get all CMS collections
  • Use Webflow MCP's data_cms_tool with action get_collection_details to get collection schemas
  • Use Webflow MCP's data_cms_tool with action list_collection_items to get CMS items with links
  • Use Webflow MCP's data_cms_tool with action update_collection_items to fix links in CMS (draft)
  • Use Webflow MCP's data_cms_tool with action publish_collection_items to publish fixed CMS items
  • DO NOT use any other tools or methods for Webflow operations
  • All tool calls must include the required context parameter (15-25 words, third-person perspective)
  • Designer connection required for static page link fixes

Instructions

Phase 1: Site Selection & Discovery

  1. Get site information: Use Webflow MCP's data_sites_tool with action list_sites to identify target site
  2. Confirm scope: Ask user if they want to check:
  • Static pages only
  • CMS content only
  • Both static pages and CMS content
  1. List pages: Use Webflow MCP's data_pages_tool with action list_pages to get all pages
  2. List collections: Use Webflow MCP's data_cms_tool with action get_collection_list to get all CMS collections

Phase 2: Link Extraction & Validation

  1. Extract links from static pages: Use Webflow MCP's data_pages_tool with action get_page_content for each page
  • Identify all link elements (Link, Button, TextLink, LinkBlock)
  • Capture: pageId, nodeName, URL, link text
  1. Extract links from CMS: Use Webflow MCP's data_cms_tool with action list_collection_items for each collection
  • Identify Link fields and Rich Text fields with links
  • Capture: collectionId, itemId, fieldName, URL
  1. Validate each link: Test URL accessibility
  • Check for 4xx/5xx errors (broken links)
  • Check for HTTP vs HTTPS (insecure links)
  • Test if HTTP has HTTPS equivalent available
  • Flag redirects (3xx status codes)
  1. Categorize results:
  • ✅ Working links (2xx status)
  • ❌ Broken links (4xx/5xx errors)
  • ⚠️ Insecure links (HTTP when HTTPS available)
  • 🔄 Redirects (3xx status)
  • ⚪ Manual review needed (timeouts, DNS errors, etc.)

Phase 3: Analysis & Reporting

  1. Calculate statistics:
  • Total links scanned
  • Links by type (internal vs external)
  • Links by status (working, broken, insecure, redirects)
  • Links by location (static pages vs CMS)
  1. Generate health score: Calculate link health (0-100)
  • Working links: +1 point each
  • Broken links: -5 points each
  • Insecure links: -2 points each
  • Redirects: -1 point each
  • Normalize to 0-100 scale
  1. Identify critical issues: Prioritize fixes
  • 🔴 Critical: Broken links on high-traffic pages
  • ⚠️ Warning: Insecure HTTP links
  • 💡 Suggestion: Optimize redirects

Phase 4: Suggestion Generation & Approval

  1. Generate fix suggestions: For each problematic link, suggest fix
  • Broken links: Remove link or update to correct URL
  • Insecure links: Upgrade HTTP to HTTPS
  • Redirects: Update to final destination URL
  1. Show preview with validation:

``` [1] ✓ Fix insecure link Page: About Us Element: Button "Learn More" Current: http://example.com Suggested: https://example.com ✅ HTTPS version verified working

[2] ⚠️ Fix broken link Page: Blog Post "Getting Started" Element: Text link Current: https://oldsite.com/page Suggested: [REMOVE LINK or provide correct URL] ❌ URL returns 404 - manual review needed ```

  1. Implement granular approval: Ask user which fixes to apply
  • Type numbers to skip (e.g., "2,4")
  • Type "all" to proceed with all automatic fixes
  • Type "none" to cancel
  • Flag manual review items separately

Phase 5: Execution & Confirmation

  1. Apply fixes to static pages: Use Webflow MCP's data_pages_tool with action update_static_content
  • Requires Designer connection
  • Update link URLs in nodes
  • Process in batches of 20 links
  1. Apply fixes to CMS content: Use Webflow MCP's data_cms_tool with action update_collection_items
  • Update Link fields directly
  • Update links in Rich Text fields
  • Process in batches of 50 items
  1. Publish changes (if requested): Use Webflow MCP's data_cms_tool with action publish_collection_items
  2. Show progress: Display progress indicators for large operations
  3. Generate final report:
  • Links scanned: X
  • Links fixed: Y
  • Links requiring manual review: Z
  • Health score improvement: Before → After

Phase 6: Verification & Recommendations

  1. Verify fixes: Re-check fixed links to confirm success
  2. Report failures: Clearly identify any fixes that failed
  3. Provide recommendations:
  • Schedule regular link checks (monthly/quarterly)
  • Set up monitoring for critical external links
  • Consider using 301 redirects for changed URLs
  1. Export report (optional): Offer to export findings

Examples

Example 1: Complete Site Audit

User prompt:

Run a complete link check on my site and fix any issues

Step 1: Site Selection

🔍 Link Checker: Site Selection

Available sites:
1. Company Website
2. Blog Site
3. Portfolio

Which site would you like to audit? (1/2/3)

Step 2: Scope Confirmation

📋 Link Checker Scope

What would you like to check?
1. Static pages only (faster)
2. CMS content only
3. Both static pages and CMS content (comprehensive)

Recommendation: Option 3 for complete audit

Your choice? (1/2/3)

Step 3: Extraction & Validation

🔄 Scanning Links...

Progress: ████████████████████ 100%

Found 247 links:
├── Static pages: 89 links (15 pages)
├── CMS content: 158 links (3 collections)
│   ├── Blog Posts: 142 links
│   ├── Team Members: 12 links
│   └── Products: 4 links

Validating links...

Progress: ████████████████████ 100% (247/247 checked)

✅ Working: 215 links (87%)
❌ Broken: 8 links (3%)
⚠️ Insecure: 18 links (7%)
🔄 Redirects: 6 links (2%)

Step 4: Analysis Report

📊 Link Health Report: Company Website

Overall Health Score: 76/100 ⚠️

## Issues Found:

### 🔴 Critical: Broken Links (8)
├── [1] Page: "About Us"
│   └── Link to: https://partner-site.com/old-page
│       Status: 404 Not Found
│       Impact: High (homepage)
│
├── [2] CMS: Blog Post "Product Launch"
│   └── Link to: https://press-release.com/announcement
│       Status: 404 Not Found
│       Impact: Medium
│
├── [3-8] 6 more broken links...

### ⚠️ Warning: Insecure Links (18)
├── [9] Page: "Contact"
│   └── Link: http://social-media.com/company
│       Fix: https://social-media.com/company
│       ✅ HTTPS verified working
│
├── [10] CMS: Blog Post "Getting Started"
│   └── Link: http://tutorial-site.com
│       Fix: https://tutorial-site.com
│       ✅ HTTPS verified working
│
├── [11-26] 16 more insecure links...

### 💡 Suggestion: Redirects (6)
├── [27] Page: "Services"
│   └── Link: https://example.com/old-url
│       Redirects to: https://example.com/new-url
│       Suggestion: Update to final destination
│
├── [28-32] 5 more redirects...

---

💡 Recommendations:
1. Fix 8 broken links immediately (SEO impact)
2. Upgrade 18 HTTP links to HTTPS (security)
3. Update 6 redirects to final URLs (performance)

Estimated time to fix: ~5 minutes

Step 5: Fix Preview

🔧 Proposed Fixes (26 total)

### Automatic Fixes Available (24):

[1] ✓ Upgrade to HTTPS
    Page: Contact
    Element: Button "Follow Us"
    Current: http://social-media.com/company
    New: https://social-media.com/company
    ✅ HTTPS verified working

[2] ✓ Upgrade to HTTPS
    CMS: Blog Posts > "Getting Started" > content field
    Current: http://tutorial-site.com
    New: https://tutorial-site.com
    ✅ HTTPS verified working

[3] ✓ Update redirect
    Page: Services
    Element: Text link "Learn more"
    Current: https://example.com/old-url
    New: https://example.com/new-url
    ✅ Final destination verified

[4-24] ... 21 more automatic fixes

### Manual Review Required (2):

[25] ⚠️ Broken link - needs correction
    Page: About Us
    Element: Button "View Partner Site"
    Current: https://partner-site.com/old-page
    Issue: 404 Not Found
    Action needed: Provide correct URL or remove link

[26] ⚠️ Broken link - needs correction
    CMS: Blog Posts > "Product Launch" > content field
    Current: https://press-release.com/announcement
    Issue: 404 Not Found
    Action needed: Update with correct URL or remove

---

Which fixes would you like to apply?
- Type "all" to apply all 24 automatic fixes
- Type numbers to skip (e.g., "3,5,7")
- Type "none" to cancel

Step 6: After User Approves "all"

✅ Applying Fixes...

Progress: ████████████████████ 100%

Static Pages:
- Updated 8 links on 5 pages
- ✅ Contact page: 3 links fixed
- ✅ Services page: 2 links fixed
- ✅ About page: 1 link fixed
- ✅ Blog page: 2 links fixed

CMS Content:
- Updated 16 links in 12 items
- ✅ Blog Posts: 14 links fixed
- ✅ Team Members: 2 links fixed

---

🎉 Link Fixes Complete!

Summary:
- Links scanned: 247
- Links fixed: 24 ✅
- Manual review needed: 2 ⚠️
- Failed: 0 ❌

Health Score: 76 → 95 (+19) ✨

---

⚠️ Manual Review Items:

[1] About Us page - broken partner link
    Current: https://partner-site.com/old-page
    Action: Update or remove manually

[2] Blog post "Product Launch" - broken press release
    Current: https://press-release.com/announcement
    Action: Update or remove manually

---

💡 Next Steps:
1. Fix the 2 manual review items
2. Re-run link checker in 1 month
3. Set up monitoring for critical external links
4. Consider 301 redirects for any URL changes

Would you like to export this report? (yes/no)

Example 2: CMS-Only Link Check

User prompt:

Check all links in my blog posts

Step 1: Collection Selection

🔍 Link Checker: CMS Collections

Found 3 collections:
1. Blog Posts (47 items)
2. Team Members (8 items)
3. Categories (6 items)

You requested blog posts. Checking "Blog Posts" collection...

Step 2: Link Extraction

🔄 Extracting Links from Blog Posts...

Progress: ████████████████████ 100% (47/47 items)

Found 142 links in Blog Posts:
├── Link fields: 23 links
├── Rich Text content: 119 links
└── Total unique URLs: 87 (55 appear multiple times)

Validating links...

Progress: ████████████████████ 100% (87/87 unique URLs checked)

Results:
✅ Working: 79 links (91%)
❌ Broken: 3 links (3%)
⚠️ Insecure: 5 links (6%)
🔄 Redirects: 0 links

Step 3: Issue Report

📊 Blog Posts Link Health: 91/100 ✅

## Issues Found:

### 🔴 Broken Links (3):
[1] Post: "Getting Started with Webflow"
    Field: content (Rich Text)
    Link: https://old-docs.example.com/guide
    Status: 404 Not Found
    Appears in: 3 posts

[2] Post: "Best Practices 2024"
    Field: external-link (Link)
    Link: https://expired-resource.com
    Status: 410 Gone

[3] Post: "Tutorial Series Part 3"
    Field: content (Rich Text)
    Link: https://video-host.com/deleted-video
    Status: 404 Not Found

### ⚠️ Insecure Links (5):
[4] Post: "Case Study: Company A"
    Field: content (Rich Text)
    Link: http://company-a-site.com
    Fix: https://company-a-site.com
    ✅ HTTPS available and working

[5-8] 4 more insecure links...

---

🔧 Proposed Fixes:

[1] ⚠️ Remove broken link (manual review)
    Posts affected: 3 (Getting Started, Tutorial 1, Tutorial 2)
    Link: https://old-docs.example.com/guide
    Suggestion: Update to new docs URL if available

[2] ⚠️ Remove broken link (manual review)
    Post: "Best Practices 2024"
    Link: https://expired-resource.com
    Suggestion: Remove or replace with alternative

[3] ⚠️ Remove broken link (manual review)
    Post: "Tutorial Series Part 3"
    Link: https://video-host.com/deleted-video
    Suggestion: Update with new video URL

[4] ✓ Upgrade to HTTPS
    Post: "Case Study: Company A"
    Current: http://company-a-site.com
    New: https://company-a-site.com
    ✅ HTTPS verified working

[5-8] ... 4 more HTTPS upgrades

---

Which fixes would you like to apply?
- Type "4-8" to apply only HTTPS upgrades
- Type "all" for all automatic fixes
- Type "none" to cancel

Example 3: Static Pages Only (Quick Check)

User prompt:

Quick check on my static pages for broken links

Response:

🔍 Quick Link Check: Static Pages

Scanning 15 static pages...

Progress: ████████████████████ 100%

Found 89 links across 15 pages

Validation Results:
✅ All links working! (89/89)

Health Score: 100/100 ✨

Your static pages have no broken or insecure links.

💡 Tip: Run a full audit including CMS content for comprehensive coverage.

Example 4: Fixing Specific Issues

User prompt:

I have some broken links on my About page. Can you fix them?

Response:

🔍 Checking Links on "About" Page...

Found 12 links on About page

Validation Results:
✅ Working: 9 links
❌ Broken: 2 links
⚠️ Insecure: 1 link

---

Issues Found:

[1] ❌ Broken: Partner site link
    Element: Button "Visit Partner"
    Link: https://partner-old-site.com
    Status: 404 Not Found
    Fix: Manual review needed

[2] ❌ Broken: Team member profile
    Element: Text link "Meet Sarah"
    Link: /team/sarah-old-profile
    Status: 404 Not Found
    Fix: Update to /team/sarah-johnson?

[3] ⚠️ Insecure: Social media link
    Element: Link "Follow us"
    Link: http://social.com/company
    Fix: https://social.com/company
    ✅ HTTPS verified

---

Which fixes would you like to apply?
- Type "3" to only fix the insecure link
- Type "2,3" to fix items 2 and 3
- Type "all" for automatic fixes
- Type "none" to cancel

Note: Item [1] requires manual correction with correct URL

Guidelines

Phase 1: Discovery Best Practices

Site Selection:

  • Use data_sites_tool with action list_sites to get available sites
  • Never assume site ID
  • Confirm site name with user

Scope Definition:

  • Ask if checking static pages, CMS, or both
  • Estimate time based on scope:
  • Static pages only: 1-3 minutes
  • CMS only: 2-5 minutes (depends on item count)
  • Full site: 5-10 minutes

Collection Selection:

  • List all collections with item counts
  • If user specifies collection, focus on that
  • If "all CMS", check all collections

Phase 2: Link Extraction Best Practices

Static Page Link Extraction:

  • Use data_pages_tool with action get_page_content to get page nodes
  • Look for these node types:
  • Link (a tag)
  • Button (with link)
  • TextLink
  • LinkBlock
  • Extract href/url property
  • Capture link text for reporting
  • Track nodeId for fixing later

CMS Link Extraction:

  • Use data_cms_tool with action get_collection_details to identify Link and Rich Text fields
  • Use data_cms_tool with action list_collection_items to get all items
  • For Link fields: Extract URL directly
  • For Rich Text fields: Parse HTML to extract tags
  • Track: collectionId, itemId, fieldName for fixing

Link Validation:

  • Test each unique URL (avoid duplicate tests)
  • Use HEAD request first (faster than GET)
  • Fallback to GET if HEAD fails

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.