link-check-lite

Registre officiel Autres

Check web links for status codes, broken links and redirect chains.

Installation

Ajoutez ceci à la configuration MCP de votre client (Claude Desktop : claude_desktop_config.json ; Cursor : .cursor/mcp.json ; VS Code et les autres utilisent la même forme « mcpServers »).

PYPI package link-check-lite
Claude Code
claude mcp add link-check-lite -- uvx link-check-lite==1.0.0
Configuration JSON (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "link-check-lite": {
            "command": "uvx",
            "args": [
                "link-check-lite==1.0.0"
            ]
        }
    }
}

Documentation

Tirée du README du projet sur GitHub, actualisée chaque semaine. Les liens ouvrent GitHub.

Sommaire
  1. link-check-lite
  2. Install
  3. Use it
  4. Known limits
  5. Lite vs paid
  6. How it compares to other free tools
  7. Use it from Claude Desktop or Cursor (MCP)
  8. Use it from Python
  9. For AI agents
  10. Tests
  11. License

Free tool that checks a list of links. It tells you which ones work, which are broken, and where redirects end up. Need sitemaps, speed checks, sketchy-domain warnings or CSV reports? The paid version does that: link-check on Gumroad

MIT license. Python 3.10 or newer, on Windows, Mac and Linux. The checker itself uses only Python's built-in tools.

Install

pip install link-check-lite

Or use pipx, which keeps it in its own space:

pipx install link-check-lite

Want the newest code from GitHub instead?

pip install git+https://github.com/tidybytetools/link-check-lite

Use it

Put your links in a text file, one per line. Lines that start with # are skipped.

link-check-lite links.txt
link-check-lite links.txt -w 3 --timeout 20   # gentler and more patient

Example run:

OK   200 https://example.com/
OK   200 https://httpbin.org/redirect/2  -> https://httpbin.org/get (2 redirects)
FAIL 404 https://example.com/old-page
FAIL --- https://no-such-site.example  ([Errno -2] Name or service not known)

4 checked, 2 ok, 2 broken

Exit code is 0 when every link works and 1 when any link is broken, so it works in a cron job or CI.

When you run it in a terminal it ends with one short line about the paid version. --quiet turns it off, and it never shows when output is piped.

Known limits

  • Some sites block bots. They may answer 403 or 429 even when the page opens fine in a browser.
  • No JavaScript. Redirects done with JavaScript are not followed.
  • Text file only. No CSV input, no sitemaps, and results print to the screen.
  • No robots.txt and no per-site rate limit. It checks 5 links at a time with a small pause. Don't point it at thousands of pages on one site.
  • Not a safety check. It does not tell you if a link is a scam.

Lite vs paid

lite (free)link-check
Status codes and broken linksyesyes
Redirect chain and final URLyesyes
Text file inputyesyes
CSV input and sitemap URLs (with sitemap index)noyes
Response time and slow-link flagnoyes
http vs https checksnoyes
Look-alike and sketchy domain warnings (local rules)noyes
robots.txt and one-hit-per-second per sitenoyes
CSV, JSON and Markdown reportsnoyes

How it compares to other free tools

All of these are free. Pick what fits you.

link-check-litelycheelinkcheckermuffet
Checks a plain list of linksyesyesno, it crawlsno, it crawls
Crawls a whole sitenonoyesyes
Installpipbinary / cargopipbinary / go
Built-in MCP server for AI appsyesnonono
Lots of optionsnoyesyesyes

If you need to crawl a big site or check links inside Markdown files, lychee and linkchecker are great.

Use it from Claude Desktop or Cursor (MCP)

There is a small free MCP server built in. It gives your AI app one tool, check_links. It needs uv.

uvx --from link-check-lite link-check-lite-mcp

Claude Desktop (claude_desktop_config.json) or Cursor (~/.cursor/mcp.json):

{
  "mcpServers": {
    "link-check-lite": {
      "command": "uvx",
      "args": ["--from", "link-check-lite", "link-check-lite-mcp"]
    }
  }
}

Tool: check_links(urls, timeout=10.0). Send up to 200 links. It returns one result per link.

Use it from Python

from link_check_lite import check_link
print(check_link("https://example.com"))
# {'url': 'https://example.com', 'status': 200, 'ok': True, 'final_url': 'https://example.com', 'redirects': [], 'error': None}

For AI agents

  • Use when: you need to know if web links work and where their redirects end up.
  • Don't use when: you need to know if a link is safe, need a whole site crawled, or need speed or https checks. Use the paid version for those.
  • Input: a list of http(s) URLs (max 200 per MCP call), plus an optional timeout in seconds.
  • Output: a list of {url, status, ok, final_url, redirects, error}. status is null when the link could not connect. ok is true for 200-399. redirects lists each hop as "CODE url".
  • CLI exit code is 0 when all links work and 1 when any link is broken or on error. See also llms.txt.

Tests

pip install "mcp>=1.2,<2"
python3 -m unittest discover tests

The tests use a tiny local web server, so they don't need the internet.

License

MIT. See LICENSE.

Questions fréquentes

Qu'est-ce que link-check-lite ?

Check web links for status codes, broken links and redirect chains.

Comment installer link-check-lite ?

Il s'exécute sur votre machine. Dans Claude Code : claude mcp add link-check-lite -- uvx link-check-lite==1.0.0. Pour les autres clients, collez la configuration JSON de cette page dans leurs réglages MCP.

Faut-il une clé API pour link-check-lite ?

Son entrée au registre n'indique aucune clé ni secret obligatoire. Certaines fonctions peuvent tout de même demander un compte auprès du service auquel il se connecte.

link-check-lite est-il open source ?

Oui. Son code est sur GitHub sous licence MIT.

Qui maintient link-check-lite ?

Il est publié par tidybytetools. AI.tn le référence sans le maintenir ni le recommander.

Issu du registre MCP officiel. Être listé n'est pas une recommandation : vérifiez le code et les permissions d'un serveur avant de lui donner accès à vos données.