mcpField
M
mcp-server-webcrawl

mcp-server-webcrawl

ローカル
pragmar.com検索464 週間前に更新

mcp-server-webcrawl について

mcp-server-webcrawl は、Web クローラーのデータとアーカイブを AI クライアントに接続し、全文検索、フィルタリング、分析を行えるようにする MCP サーバーです。wget や HTTrack などで取得したクロールを検索したいユーザー向けで、無料のオープンソースです。

主な機能

  1. 01ブール演算に対応した全文検索
  2. 02タイプや HTTP ステータスによるリソースの絞り込み
  3. 03複数のクローラーとアーカイブ形式に対応
  4. 04extras による Markdown・スニペット形式の出力

活用シーン

  1. 01Web サイトの SEO、リンク切れ、パフォーマンスの監査
  2. 02リモートホスト上のアーカイブをコマンドラインで検索

MCP 対応

本プロジェクトは MCP サーバーであり、クロールデータの検索、絞り込み、取得のツールを MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Server Webcrawl

ウェブサイト | GitHub | ドキュメント | PyPi

mcp-server-webcrawl

ウェブクローラーのデータを高度に検索・取得できます。mcp-server-webcrawl を使うと、AI クライアントがユーザーの指示に従って、または自律的にウェブコンテンツをフィルタリングして分析できます。このサーバーには、ブール検索に対応した全文検索インターフェースと、種類や HTTP ステータスなどによるリソースのフィルタリング機能が含まれています。

mcp-server-webcrawl は、LLM に検索方法を網羅したメニューを提供し、さまざまなウェブクローラーに対応します。

クローラー/形式説明プラットフォームセットアップガイド
ArchiveBoxウェブアーカイブツールmacOS/Linuxセットアップガイド
HTTrackGUI ミラーリングツールmacOS/Windows/Linuxセットアップガイド
InterroBotGUI クローラーおよび分析ツールmacOS/Windows/Linuxセットアップガイド
Katanaセキュリティに特化した CLI クローラーmacOS/Windows/Linuxセットアップガイド
SiteOneGUI クローラーおよび分析ツールmacOS/Windows/Linuxセットアップガイド
WARC標準的なウェブアーカイブ形式クライアントにより異なりますセットアップガイド
wgetCLI ウェブサイトミラーリングツールmacOS/Linuxセットアップガイド

mcp-server-webcrawl は無料のオープンソースで、Claude Desktop と Python(>=3.10)が必要です。コマンドラインから pip install でインストールします。

pip install mcp-server-webcrawl

MCP サーバーのセットアップ手順については、セットアップガイドを参照してください。

機能

  • Claude Desktop 対応
  • 複数のクローラーと互換
  • 種類、ステータスなどによるフィルタリング
  • ブール検索に対応
  • Markdown とスニペットに対応
  • 独自のウェブサイトナレッジベースを構築

プロンプトルーチン

mcp-server-webcrawl は、検索のたびに状況を把握し、各クエリに応じて対応しながら、自由にウェブクロールデータを検索するために必要なツールキットを提供します。この用途を想定して設計されています。

プロンプトとしてルーチンを実行することもできます。自分で作成することも、用意されているものを使うこともできます。これらのプロンプトはコピーして貼り付ける形式で、未加工の Markdown として使われます。LLM 向けに用意された高度な検索機能によって有効になり、クエリやロジックを手順形式の指示に組み込んだり、Gopher Service のように入力ループに組み込んだりできます。

プロンプトダウンロードカテゴリ説明
🔍 SEO 監査auditseo.mdauditテクニカル SEO(検索エンジン最適化)の分析です。基本を網羅し、さらに詳しく調べるためのオプションも用意されています。
🔗 404 監査audit404.mdauditリンク切れの検出とパターン分析です。問題を見つけるだけでなく、修正方法も提案します。
⚡ パフォーマンス監査auditperf.mdauditウェブサイトの速度と最適化の分析です。率直に評価します。
📁 ファイル監査auditfiles.mdauditファイルの整理状況とアセットの分析です。ウェブサイトの構成を確認できます。
🌐 Gopher インターフェースgopher.mdinterface昔の Gopher クライアントに着想を得た、昔ながらの検索インターフェースです。
⚙️ 検索テストtestsearch.mdself-test検索クエリパーサーとその後の FTS5 変換におけるブール論理の不整合を確認する、一連のテストです。

サイト選択の手間を省きたい場合(クエリを 1 回減らせます)、Markdown を貼り付け、同じリクエスト内に「run pasted for [site name or URL].」と入力してください。サイトは自動で判別されます。追加のコンテキストを添えずに貼り付けた場合は、クロール済みサイトの一覧から選ぶように求められます。

ブール検索構文

クエリエンジンは、フィールドを指定した検索(field: value)と複雑なブール式に対応しています。全文検索では、url、content、headers の各フィールドを組み合わせて検索します。

API インターフェースは LLM が直接利用することを想定して設計されていますが、検索構文を把握しておくと便利です。LLM が生成した検索内容は確認できますが、通常、UI では折りたたまれています。クエリを確認するには、MCP の折りたたみ可能なセクションを展開してください。

クエリの例

クエリの例説明
privacy全文検索で単一キーワードに一致
"privacy policy"全文検索で完全一致するフレーズ
boundar*全文検索でワイルドカード検索を行い、boundar で始まる結果に一致(boundary、boundaries)
id: 12345id フィールドで特定のリソース ID に一致
url: example.com/somedirurl フィールドで、URL に example.com/somedir を含む結果に一致
type: htmltype フィールドで HTML ページのみを検索
status: 200status フィールドで特定の HTTP ステータスコード(200 に等しいもの)に一致
status: >=400status フィールドで特定の HTTP ステータスコード(400 以上)に一致
content: h1content フィールドでコンテンツ(HTTP レスポンス本文。多くの場合 HTML ですが、常にそうとは限りません)を検索
headers: text/xmlheaders フィールドで HTTP レスポンスヘッダーを検索
privacy AND policy全文検索で両方に一致
privacy OR policy全文検索でどちらかに一致
policy NOT privacyprivacy を含まない policy に全文一致
(login OR signin) AND formlogin または signin と form を含む全文検索
type: html AND status: 200HTTP 成功ステータスの HTML ページのみを全文検索

フィールド検索の定義

フィールド検索では、検索インデックスのどの列をフィルターするかを指定でき、検索の精度を高められます。コンテンツ全体を検索するのではなく、URL、ヘッダー、本文などの特定の属性に検索対象を絞り込めます。この方法により、クロールデータ内の特定の属性やパターンを探す際の効率が向上します。

フィールド説明
idデータベース ID
urlリソース URL
typeタイプの列挙リスト(タイプの表を参照)
sizeファイルサイズ(バイト単位)
statusHTTP レスポンスコード
headersHTTP レスポンスヘッダー
contentHTTP 本文(HTML、CSS、JS など)

フィールドの内容

一部のフィールドは検索結果とともに個別にリクエストできますが、コアフィールドは常に有効です。headers と content を使用すると、トークンをすぐに消費する可能性があります。慎重に使用するか、extras を使ってコンテキストウィンドウにより多くの結果を取り込んでください。fields は、クエリ内でフィールド検索を行うかどうかに関係なく指定する、トップレベルの引数です。

フィールド説明
id常に利用可能
url常に利用可能
type常に利用可能
status常に利用可能
createdリクエスト時
modifiedリクエスト時
sizeリクエスト時
headersリクエスト時
contentリクエスト時

コンテンツタイプ

クロールデータには、HTML ページ以外のリソースタイプも含まれます。type: フィールド検索を使うと、コンテンツタイプの大まかなグループでフィルターできます。特に、複雑な拡張子クエリを使わずに画像をフィルターする場合に便利です。たとえば、type: html NOT content: login と検索すると「login」を含まないページを探せます。また、type: img と検索すると画像リソースを分析できます。以下の表に、検索システムでサポートされているすべてのコンテンツタイプを示します。

タイプ説明
htmlウェブページ
iframeiframe
imgウェブ画像
audioウェブ音声ファイル
videoウェブ動画ファイル
fontウェブフォントファイル
styleCSS スタイルシート
scriptJavaScript ファイル
rssRSS 配信フィード
textプレーンテキストコンテンツ
pdfPDF ファイル
docMS Word 文書
other分類なし

Extras

extras パラメーターは追加の処理オプションを提供し、HTTP データ(Markdown、スニペット、正規表現、XPath)を変換したり、LLM を外部データ(サムネイル)に接続したりします。必要に応じてこれらのオプションを組み合わせ、求める形式の結果を得られます。

ExtraDescription
thumbnailsAI モデルが表示・分析できる、Base64 エンコードされた画像を生成します。画像の説明、コンテンツ分析、視覚的な理解を可能にしながら、トークン出力を最小限に抑えます。画像で動作し、クエリで type: img を指定して絞り込めます。SVG はサポートされていません。
markdownHTML のコンテンツフィールドを簡潔な Markdown として提供し、トークンの使用量を削減して LLM の読みやすさを向上させます。HTML で動作し、クエリで type: html を指定して絞り込めます。
regexHTML、CSS、JavaScript など、クロールしたファイルから正規表現の一致箇所を抽出します。HTML に対しては XPath ほど精度の高いツールではありませんが、任意のテキストファイルをデータソースとして使用できます。extrasRegex 引数を使って、1 つ以上の正規表現パターンを指定できます。
snippets全文検索クエリを、コンテンツ内の文脈に応じたキーワードの使用箇所に対応付けます。コンテンツフィールド(または Markdown の追加オプション)を要求せずに使うと、ページ全体の内容を取得せずに検索を効率よく絞り込めます。Google 検索が登場した 1999 年のように、ヒット箇所を強調表示した昔ながらの結果をリストで表示するのにも適しています。HTML、CSS、JS、またはクロールしたあらゆるテキストベースのファイルで動作します。
xpathHTML コンテンツのスクレイピングに使う XPath セレクターのデータを抽出します。テキストのみを取得するには XPath の text() セレクターを使います。要素セレクターは outerHTML を返します。type: html でのみサポートされ、その他のタイプは無視されます。extrasXpath 引数を使って、1 つ以上の XPath セレクター(//h1、count(//h1) など)を指定できます。

Extras を使うと、トークン効率のよい HTTP コンテンツレスポンスを生成できます。Markdown はソース HTML のおよそ 3 分の 1 のバイト数になり、スニペットは通常、結果ごとに約 500 バイトです。XPath は必要に応じて、対象を細かく絞ることも広く指定することもできます。リクエストを絞り込むほど、LLM のセッションにより多くの結果を収められます。

もちろん、これらの処理は LLM が行うという考え方です。LLM が「content」フィールド(HTML 全文)を好んで使うようであれば、チャットで extras 機能を使ってトークンを節約するよう促すだけで十分です。

Interactive Mode

AI を使わず、ターミナルでウェブアーカイブを従来のブール検索で検索できます。

mcp-server-webcrawl は、ウェブアーカイブを検索するターミナルツールとしても使えます。ローカルアーカイブに対して実行できますが、リモートホストに SSH 接続して、そのホスト上のアーカイブを表示できることに気付くと、さらに便利です。ダウンロード、同期、多要素ログインなど、よくある面倒な作業は必要ありません。インタラクティブモードを使えば、リモートサーバー上にあるクロールデータにすぐアクセスして検索できます。

--crawler と --datasrc を指定して起動すると、すぐに検索できます。または、アプリ内で datasrc と crawler を設定してください。

mcp-server-webcrawl --crawler wget --datasrc /path/to/datasrc --interactive
# or manually enter crawler and datasrc in the UI
mcp-server-webcrawl --interactive

インタラクティブモードを使うと、いつでもターミナルでクロール済みデータのまとまりを検索できます。

インタラクティブ検索インターフェース

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。