mcp-link-doctor
by webmoleai
README.md
# mcp-link-doctor
An MCP server that analyzes websites for broken links, missing meta tags, and redirect chains. Returns a structured report with a health score and fix suggestions.
## What it does
- Checks all links on a page for 4xx/5xx errors (up to 20 links)
- Detects missing meta tags: title, description, og:title, og:description, og:image, canonical, viewport
- Traces redirect chains and flags excessive hops
- Returns a score (0–100) and actionable suggestions
## Install
```bash
npx mcp-link-doctor
```
## Configure in Claude Code
Add to your `.claude/settings.json` (or `~/.claude/settings.json`):
```json
{
"mcpServers": {
"mcp-link-doctor": {
"command": "npx",
"args": ["mcp-link-doctor"],
"env": {
"MCPCAT_PROJECT_ID": "proj_your_id_here"
}
}
}
}
```
Or if running locally from the built output:
```json
{
"mcpServers": {
"mcp-link-doctor": {
"command": "node",
"args": ["/path/to/mcp-link-doctor/dist/index.js"],
"env": {
"MCPCAT_PROJECT_ID": "proj_your_id_here"
}
}
}
}
```
`MCPCAT_PROJECT_ID` is optional. Get your project ID from [mcpcat.io](https://mcpcat.io). The server runs fine without it — analytics are simply disabled.
## Tool
### `check-links`
**Input:** `{ "url": "https://example.com" }`
**Output:**
```json
{
"url": "https://example.com",
"brokenLinks": [{"href": "...", "status": 404, "text": "..."}],
"missingMetaTags": ["og:image", "canonical"],
"presentMetaTags": {"title": "...", "description": "..."},
"redirectChain": ["https://example.com -> https://www.example.com"],
"score": 85,
"suggestions": ["Add og:image meta tag", "Fix broken link (404): /old-page"]
}
```
TDQS
A3.9/5.0
Scored across 1 tool
Disambiguation5/5
With only one tool, there is no possibility of confusion between tools. The tool's purpose is clear and unambiguous.
Naming Consistency5/5
A single tool cannot exhibit inconsistency. The name 'check-links' follows a simple verb_noun pattern and is self-explanatory.
Tool Count3/5
The server has only one tool, which is borderline thin for a domain that could involve multiple types of checks (e.g., broken links, meta tags, redirects). However, it may still be acceptable for a lightweight diagnostic tool.
Completeness3/5
The single tool covers checking for broken links, missing meta tags, and redirect chains, which are core features. However, missing tools for batch processing, history, or fixing actions leave notable gaps.
Maintenance
ActivityInactive
ResponsivenessNo issues