MCP ウェブスキャン サーバー
ウェブコンテンツのスキャンと分析のためのモデルコンテキストプロトコル(MCP)サーバー。このサーバーは、ウェブページから情報を取得、分析、抽出するためのツールを提供します。
特徴
ページフェッチ: WebページをMarkdownに変換して簡単に分析できます
リンク抽出: Webページからリンクを抽出して分析します
サイトクロール: ウェブサイトを再帰的にクロールしてコンテンツを発見する
リンクチェック:ウェブページ上の壊れたリンクを識別する
パターンマッチング: 特定のパターンに一致する URL を検索します
サイトマップ生成: ウェブサイトの XML サイトマップを生成します
Related MCP server: Fetch MCP Server
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Webscan を自動的にインストールするには:
npx -y @smithery/cli install mcp-server-webscan --client claude手動インストール
# Clone the repository
git clone <repository-url>
cd mcp-server-webscan
# Install dependencies
npm install
# Build the project
npm run build使用法
サーバーの起動
npm startサーバーは stdio トランスポート上で実行されるため、Claude Desktop などの MCP クライアントと互換性があります。
利用可能なツール
fetch-pageWeb ページを取得して Markdown に変換します。
パラメータ:
url(必須): 取得するページの URL。selector(オプション): 特定のコンテンツを対象とする CSS セレクター。
extract-linksWeb ページからすべてのリンクをテキストとともに抽出します。
パラメータ:
url(必須): 分析するページの URL。baseUrl(オプション): リンクをフィルタリングするベース URL。limit(オプション、デフォルト: 100): 返されるリンクの最大数。
crawl-site指定された深さまで Web サイトを再帰的にクロールします。
パラメータ:
url(必須): クロールの開始 URL。maxDepth(オプション、デフォルト: 2): 最大クロール深度 (0 ~ 5)。
check-linksページ上の壊れたリンクをチェックします。
パラメータ:
url(必須): リンクを確認する URL。
find-patterns特定のパターンに一致する URL を検索します。
パラメータ:
url(必須): 検索する URL。pattern(必須): URL を照合するための JavaScript 互換の正規表現パターン。
generate-site-mapクロールによってシンプルな XML サイトマップを生成します。
パラメータ:
url(必須): サイトマップクロールのルート URL。maxDepth(オプション、デフォルト: 2): URL を検出するための最大クロール深度 (0 ~ 5)。limit(オプション、デフォルト: 1000): サイトマップに含める URL の最大数。
Claude Desktop の使用例
Claude Desktop 設定でサーバーを構成します。
{
"mcpServers": {
"webscan": {
"command": "node",
"args": ["path/to/mcp-server-webscan/build/index.js"], // Corrected path
"env": {
"NODE_ENV": "development",
"LOG_LEVEL": "info" // Example: Set log level via env var
}
}
}
}会話の中でツールを使用します:
Could you fetch the content from https://example.com and convert it to Markdown?発達
前提条件
Node.js >= 18
npm
プロジェクト構造(リファクタリング後)
mcp-server-webscan/
├── src/
│ ├── config/
│ │ └── ConfigurationManager.ts
│ ├── services/
│ │ ├── CheckLinksService.ts
│ │ ├── CrawlSiteService.ts
│ │ ├── ExtractLinksService.ts
│ │ ├── FetchPageService.ts
│ │ ├── FindPatternsService.ts
│ │ ├── GenerateSitemapService.ts
│ │ └── index.ts
│ ├── tools/
│ │ ├── checkLinksTool.ts
│ │ ├── checkLinksToolParams.ts
│ │ ├── crawlSiteTool.ts
│ │ ├── crawlSiteToolParams.ts
│ │ ├── extractLinksTool.ts
│ │ ├── extractLinksToolParams.ts
│ │ ├── fetchPageTool.ts
│ │ ├── fetchPageToolParams.ts
│ │ ├── findPatterns.ts
│ │ ├── findPatternsToolParams.ts
│ │ ├── generateSitemapTool.ts
│ │ ├── generateSitemapToolParams.ts
│ │ └── index.ts
│ ├── types/
│ │ ├── checkLinksTypes.ts
│ │ ├── crawlSiteTypes.ts
│ │ ├── extractLinksTypes.ts
│ │ ├── fetchPageTypes.ts
│ │ ├── findPatternsTypes.ts
│ │ ├── generateSitemapTypes.ts
│ │ └── index.ts
│ ├── utils/
│ │ ├── errors.ts
│ │ ├── index.ts
│ │ ├── logger.ts
│ │ ├── markdownConverter.ts
│ │ └── webUtils.ts
│ ├── initialize.ts
│ └── index.ts # Main server entry point
├── build/ # Compiled JavaScript (Corrected)
├── node_modules/
├── .clinerules
├── .gitignore
├── Dockerfile
├── LICENSE
├── mcp-consistant-servers-guide.md
├── package.json
├── package-lock.json
├── README.md
├── RFC-2025-001-Refactor.md
├── smithery.yaml
└── tsconfig.json建物
npm run build開発モード
npm run devエラー処理
サーバーは包括的なエラー処理を実装します。
無効なパラメータ
ネットワークエラー
コンテンツ解析エラー
URL検証
すべてのエラーは、MCP 仕様に従って適切にフォーマットされます。
貢献
リポジトリをフォークする
機能ブランチを作成します(
git checkout -b feature/amazing-feature)変更をコミットします (
git commit -m 'Add some amazing feature')ブランチにプッシュする (
git push origin feature/amazing-feature)プルリクエストを開く
ライセンス
MITライセンス - 詳細についてはLICENSEファイルを参照してください