link-check-lite について
link-check-liteは、指定されたWebリンクのステータスコード、リンク切れ、リダイレクト先を調べます。サイト全体のクロールではなく、ローカルCLIやMCPで確認したい開発者やサイト管理者向けです。
主な機能
- 01HTTPステータスコードを確認
- 02リンク切れを検出
- 03リダイレクト経路と最終URLを表示
- 04テキストファイルからリンクを読み込み
- 05CLI、Python API、MCPサーバー
活用シーン
- 01リリース前にリンクを検証
- 02CIワークフローでリンク一覧を確認
- 03AIアプリに指定URLをチェックさせる
MCP 対応
内蔵MCPサーバーは `check_links` を提供し、1回の呼び出しで最大200件のURLを確認します。各リンクのステータス、最終URL、リダイレクト、エラーを返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
1掲載時のツール一覧 · 4 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| urls | array | はい | |
| timeout | number | いいえ |
詳細
link-check-lite
無料です。API キーは不要です。お使いのコンピューターで動作します。指定したリンクのみを開きます。
リンク一覧をチェックするツールです。どのリンクが有効か、壊れているか、リダイレクト先がどこかを確認できます。 サイトマップ、速度チェック、不審なドメインの警告、CSV レポートが必要ですか?有料版をご利用ください:Gumroad の link-check
MIT ライセンスです。Windows、Mac、Linux で Python 3.10 以降が必要です。チェッカーは Python の組み込みツールのみを使用します。
インストール
pip install link-check-lite
または、pipx を使うと、独立した環境にインストールできます。
pipx install link-check-lite
GitHub の最新コードを使いたいですか?
pip install git+https://github.com/tidybytetools/link-check-lite
使い方
リンクをテキストファイルに1行ずつ記述します。# で始まる行はスキップされます。
link-check-lite links.txt
link-check-lite links.txt -w 3 --timeout 20 # gentler and more patient
実行例:
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
すべてのリンクが有効な場合は終了コード 0、リンクが1つでも壊れている場合は 1 になるため、cron ジョブや CI で使用できます。
ターミナルで実行すると、有料版についての短い案内が最後に表示されます。--quiet を指定すると表示されず、出力をパイプに渡した場合は常に表示されません。
既知の制限
- ボットをブロックするサイトがあります。 ブラウザーでは問題なくページを開けても、403 や 429 を返すことがあります。
- JavaScript は実行しません。 JavaScript によるリダイレクトは追跡しません。
- テキストファイルのみ対応しています。 CSV 入力やサイトマップには対応しておらず、結果は画面に表示されます。
- robots.txt に対応しておらず、サイトごとのレート制限もありません。 少し間隔を空けながら、一度に5件のリンクをチェックします。1つのサイトの数千ページを対象にしないでください。
- 安全性を確認するツールではありません。 リンクが詐欺かどうかは判定しません。
Lite と有料版の比較
| lite(無料) | link-check | |
|---|---|---|
| ステータスコードと壊れたリンク | はい | はい |
| リダイレクトの経路と最終 URL | はい | はい |
| テキストファイル入力 | はい | はい |
| CSV 入力とサイトマップ URL(サイトマップインデックスを含む) | いいえ | はい |
| 応答時間と低速リンクの警告 | いいえ | はい |
| http と https のチェック | いいえ | はい |
| 類似ドメインや不審なドメインの警告(ローカルルール) | いいえ | はい |
| robots.txt とサイトごとに1秒あたり1回のアクセス | いいえ | はい |
| CSV、JSON、Markdown レポート | いいえ | はい |
他の無料ツールとの比較
以下はすべて無料です。用途に合ったものをお選びください。
| link-check-lite | lychee | linkchecker | muffet | |
|---|---|---|---|---|
| リンクの一覧をそのままチェック | はい | はい | いいえ、クロールします | いいえ、クロールします |
| サイト全体をクロール | いいえ | いいえ | はい | はい |
| インストール | pip | バイナリ / cargo | pip | バイナリ / go |
| AI アプリ向けの組み込み MCP サーバー | はい | いいえ | いいえ | いいえ |
| 豊富なオプション | いいえ | はい | はい | はい |
大規模なサイトをクロールしたり、Markdown ファイル内のリンクをチェックしたりする必要がある場合は、lychee と linkchecker がおすすめです。
AI アプリで使用する(MCP)
無料の小さな MCP サーバーが組み込まれています。AI アプリに check_links というツールを1つ提供します。API キーやアカウントは不要です。uv が必要です。これにより uvx コマンドを使用できます。
起動することを確認するため、手動で実行します(アプリからの接続を静かに待ちます)。
uvx --from link-check-lite link-check-lite-mcp
同じサーバーを起動するもっと短い方法:uvx link-check-lite mcp。
以下からアプリを選び、ブロックをコピーします。保存した後、アプリを再起動してください。
Claude Desktop
Settings > Developer > Edit Config を開きます。claude_desktop_config.json が開きます。次を追加します。
{
"mcpServers": {
"link-check-lite": {
"command": "uvx",
"args": ["--from", "link-check-lite", "link-check-lite-mcp"]
}
}
}
Claude が uvx を見つけられない場合は、which uvx(Mac/Linux)または where uvx(Windows)を実行し、表示されたフルパスを "command" に設定してください。
Cursor
同じブロックを ~/.cursor/mcp.json(すべてのプロジェクト)または .cursor/mcp.json(1つのプロジェクト)に記述します。
{
"mcpServers": {
"link-check-lite": {
"command": "uvx",
"args": ["--from", "link-check-lite", "link-check-lite-mcp"]
}
}
}
VS Code
VS Code では mcpServers ではなく servers を使用します。プロジェクトの .vscode/mcp.json に記述するか、MCP: Open User Configuration を実行してすべての場所で使用します。
{
"servers": {
"link-check-lite": {
"type": "stdio",
"command": "uvx",
"args": ["--from", "link-check-lite", "link-check-lite-mcp"]
}
}
}
または、次のコマンドで追加します。
code --add-mcp '{"name":"link-check-lite","type":"stdio","command":"uvx","args":["--from","link-check-lite","link-check-lite-mcp"]}'
Cline
Cline パネルで MCP Servers アイコンをクリックし、Configure を開いてから Configure MCP Servers をクリックします。mcpServers の中に次を追加します。
{
"mcpServers": {
"link-check-lite": {
"command": "uvx",
"args": ["--from", "link-check-lite", "link-check-lite-mcp"],
"disabled": false,
"autoApprove": []
}
}
}
Codex
次のコマンドを1つ実行します。
codex mcp add link-check-lite -- uvx --from link-check-lite link-check-lite-mcp
または、次を ~/.codex/config.toml に追加します。
[mcp_servers.link-check-lite]
command = "uvx"
args = ["--from", "link-check-lite", "link-check-lite-mcp"]
Gemini CLI
このリポジトリは Gemini CLI 拡張機能としても利用できます。次のコマンドでインストールします。
gemini extensions install https://github.com/tidybytetools/link-check-lite
ツール:check_links(urls, timeout=10.0)。リンクは最大200件まで送信できます。リンクごとに1つの結果が返されます。
GitHub Actions で使用する
Link Check Lite は GitHub Marketplace で利用できます。 プッシュするたびにリンクをチェックします。リンクをテキストファイルに1行ずつ記述し、ワークフローに次のステップを追加します。
- uses: actions/checkout@v7
- uses: tidybytetools/link-check-lite@v1
with:
file: links.txt # one link per line
# fail-on-broken: "false" # pass even if some links are broken
@v1 は常に最新の 1.x リリースを指します。特定のリリースに固定するには、@v1.1.2 のような完全なタグを使用します。
リンクが1つでも壊れていると、このステップは失敗します。また、実行サマリーに短いレポートを書き込みます。link-check-lite は PyPI からインストールされます。リンクは、それぞれのリンク先のサイトにのみ送信されます。
入力
| 入力 | デフォルト | 説明 |
|---|---|---|
file | links.txt | リンクを1行ずつ記述したテキストファイルです。# で始まる行はスキップされます。 |
workers | 5 | 同時にチェックするリンクの数です。 |
timeout | 10 | 各リンクの応答を待つ秒数です。 |
fail-on-broken | true | 一部のリンクが壊れていてもステップを成功させるには、false に設定します。 |
version | (空) | PyPI の link-check-lite のバージョンです。空の場合は最新バージョンが使用されます。 |
python-version | 3.12 | セットアップする Python のバージョンです。 |
出力
| 出力 | 説明 |
|---|---|
checked | チェックしたリンクの数です。 |
ok | 正常だったリンクの数です。 |
broken | 壊れていたリンクの数です。 |
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}
AI エージェント向け
- 使用する場面: Web リンクが機能するか、リダイレクトの最終的な到達先がどこかを確認したい場合。
- 使用しない場面: リンクが安全かどうかを確認したい場合、サイト全体をクロールしたい場合、または速度や https のチェックが必要な場合。これらには有料版を使用してください。
- 入力: http(s) URL のリスト(MCP 呼び出し1回につき最大200件)と、任意の秒単位の
timeout。 - 出力:
{url, status, ok, final_url, redirects, error}のリストです。リンクに接続できなかった場合、statusは null になります。okは 200~399 の場合に true です。redirectsには各リダイレクト先が"CODE url"の形式で記録されます。 - CLI の終了コードは、すべてのリンクが機能する場合は 0、リンクが1つでも壊れている場合、またはエラーが発生した場合は 1 です。
llms.txtも参照してください。
テスト
pip install "mcp>=1.10,<2"
python3 -m unittest discover tests
テストでは小さなローカル Web サーバーを使用するため、インターネット接続は不要です。
ライセンス
MIT。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。