ドキュメントフェッチMCPサーバー
再帰的な探索機能を備えたWebコンテンツを取得するためのモデルコンテキストプロトコル(MCP)サーバー。このサーバーにより、LLMはWebページやドキュメントを自律的に探索し、特定のトピックについて学習できるようになります。
概要
Docs Fetch MCPサーバーは、LLMがWebコンテンツを取得・探索するためのシンプルかつ強力な手段を提供します。これにより、以下のことが可能になります。
あらゆるウェブページからクリーンで読みやすいコンテンツを取得する
指定された深さまでのリンクされたページを再帰的に探索する
包括的な情報を収集するための同一ドメインリンクトラバーサル
ナビゲーションリンクをスマートにフィルタリングして、コンテンツが豊富なページに焦点を当てます
このツールは、ユーザーが LLM でドキュメントや Web コンテンツを調べて特定のトピックについて学習したい場合に特に役立ちます。
Related MCP server: Fetch MCP Server
特徴
コンテンツ抽出: ナビゲーション、広告、無関係な要素などの不要な要素を削除し、Webページから主要なコンテンツをきれいに抽出します。
リンク分析: ページからリンクを識別して抽出し、関連性を評価します
再帰探索:同じドメイン内の関連コンテンツへのリンクを、指定された深さまでたどります。
並列処理:同時リクエストと適切なエラー処理によりコンテンツを効率的にクロールします
堅牢なエラー処理: ネットワークの問題、タイムアウト、不正なページを適切に処理します
デュアル戦略アプローチ: 最初に高速な axios リクエストを使用し、より複雑なページのフォールバックとして puppeteer を使用します。
タイムアウト防止: MCP の時間制限内での信頼性の高い操作を確保するために、グローバル タイムアウト処理を実装します。
部分的な結果: 一部のページが完全に読み込まれなかった場合でも利用可能なコンテンツを返します
使用法
サーバーは単一の MCP ツールを公開します。
fetch_doc_content
指定された深さまでリンクされたページを探索する機能を使用して、Web ページ コンテンツを取得します。
パラメータ:
url(文字列、必須): 取得するウェブページのURLdepth(数値、オプション、デフォルト:1):ディレクトリ/リンク探索の最大深度(1-5)
戻り値:
{
"rootUrl": "https://example.com/docs",
"explorationDepth": 2,
"pagesExplored": 5,
"content": [
{
"url": "https://example.com/docs",
"title": "Documentation",
"content": "Main page content...",
"links": [
{
"url": "https://example.com/docs/topic1",
"text": "Topic 1"
},
...
]
},
...
]
}インストール
このリポジトリをクローンします:
git clone https://github.com/wolfyy970/docs-fetch-mcp.git
cd docs-fetch-mcp依存関係をインストールします:
npm installプロジェクトをビルドします。
npm run buildClaude クライアントで MCP 設定を構成します。
{
"mcpServers": {
"docs-fetch": {
"command": "node",
"args": [
"/path/to/docs-fetch-mcp/build/index.js"
],
"env": {
"MCP_TRANSPORT": "pipe"
}
}
}
}依存関係
@modelcontextprotocol/sdk: MCP サーバー SDKpuppeteer: ウェブページインタラクションのためのヘッドレスブラウザaxios: リクエストを行うためのHTTPクライアント
発達
サーバーを開発モードで実行するには:
npm run devライセンス
マサチューセッツ工科大学