MCP server for broken link detection, monitoring, and AI-powered fix suggestions
Project description
LinkRescue MCP Server
Find broken links fast, prioritize by impact, and generate fix suggestions your AI agent can act on.
LinkRescue MCP exposes broken-link scanning, monitoring, and remediation workflows through the Model Context Protocol (MCP), so tools like Claude and Cursor can run link-health operations directly.
What You Get
check_broken_links: scan a URL (or sitemap) and return a structured broken-link reportmonitor_links: set up recurring monitoring for a websiteget_fix_suggestions: generate prioritized remediation recommendationshealth_check: verify MCP server and backend API connectivity
If the LinkRescue backend API is unreachable, the server falls back to realistic simulated data so local testing and demos keep working.
Requirements
- Python 3.11+
pip
Quick Start
git clone https://github.com/carsonroell-debug/linkrescue-mcp.git
cd linkrescue-mcp
pip install -r requirements.txt
python main.py
MCP endpoint:
http://localhost:8000/mcp
Configuration
| Variable | Description | Default |
|---|---|---|
LINKRESCUE_API_BASE_URL |
Base URL for LinkRescue API | http://localhost:3000/api/v1 |
LINKRESCUE_API_KEY |
API key for authenticated requests | empty |
Example:
export LINKRESCUE_API_BASE_URL="https://your-api.example.com/api/v1"
export LINKRESCUE_API_KEY="your-api-key"
python main.py
Running Options
Run directly:
python main.py
Run via FastMCP CLI:
fastmcp run main.py --transport streamable-http --port 8000
Connect an MCP Client
Claude Desktop
Add this to claude_desktop_config.json:
{
"mcpServers": {
"linkrescue": {
"url": "http://localhost:8000/mcp"
}
}
}
Claude Code
claude mcp add linkrescue --transport http http://localhost:8000/mcp
Try It
fastmcp list-tools main.py
fastmcp call-tool main.py health_check '{}'
fastmcp call-tool main.py check_broken_links '{"url":"https://example.com"}'
Tool Inputs and Outputs
check_broken_links
Inputs:
url(required): site URL to scansitemap_url(optional): crawl from sitemapmax_depth(optional, default3): crawl depth
Returns scan metadata, broken-link details, and summary statistics.
monitor_links
Inputs:
url(required)frequency_hours(optional, default24)
Returns monitoring ID, schedule details, and status.
get_fix_suggestions
Input:
- full report from
check_broken_links, or - raw
broken_linksarray, or - JSON string of either format
Returns prioritized actions and suggested remediation steps.
health_check
No input. Returns server status and backend API reachability.
Deployment
Smithery
This repo includes smithery.yaml and smithery.json.
- Push repository to GitHub
- Create/add server in Smithery
- Point Smithery to this repository
Docker / Hosting Platforms
A Dockerfile is included for Railway, Fly.io, and other container hosts.
# Railway
railway up
# Fly.io
fly launch
fly deploy
Set LINKRESCUE_API_BASE_URL and LINKRESCUE_API_KEY in your host environment.
Architecture
Agent (Claude, Cursor, etc.)
-> MCP
LinkRescue MCP Server (this repo)
-> HTTP API
LinkRescue Backend API
This server is a translation layer between MCP tool calls and LinkRescue API operations.
Additional README Variants
- Developer-focused version:
README.dev.md - Marketplace-focused version:
README.marketplace.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file linkrescue_mcp-0.1.1.tar.gz.
File metadata
- Download URL: linkrescue_mcp-0.1.1.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9af6617a12bc10d75ccb3cae898319414503573c11da97fa7cd10390af789f6b
|
|
| MD5 |
5a52a59951c12e926d9cb7eb4c1a2ae7
|
|
| BLAKE2b-256 |
12dca2b53707aca1e2b397cd8689026b9238c0f4d739628b0426e0e03b3cf72a
|
File details
Details for the file linkrescue_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: linkrescue_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 9.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
933e81771f424c473e9b2d3b874673fd9d772eb38c4b14f252f9501a68bd7140
|
|
| MD5 |
6bd0994adb2705f032649907808f3f99
|
|
| BLAKE2b-256 |
152dc9dc3dfeb478f71c5b2a000de955933f9275260cf683c9649d676c8be9ae
|