Mcp Web Reader について
Mcp Web Reader は、Claude などの LLM がウェブページを読み取り、Markdown に変換するための MCP サーバーです。Jina Reader API、ローカル解析、Playwright の 3 つの方式を組み合わせ、アクセス制限がある場合は自動的に切り替えます。制限のあるサイトを扱う利用者に適しています。
主な機能
- 01Jina Reader、ローカル解析、Playwright の 3 エンジン
- 023 段階の自動フォールバック
- 03アクセス制限検出時のブラウザモード切り替え
- 04複数 URL のバッチ取得
- 05解析方式の手動指定
- 06Markdown 形式での出力
活用シーン
- 01JavaScript で描画されるページの読み取り
- 02Cloudflare や CAPTCHA で保護されたページの取得
- 03複数の記事を一括で Markdown に変換
MCP 対応
MCP サーバーとして、fetch_url、fetch_url_with_jina、fetch_url_local、fetch_url_with_browser、fetch_multiple_urls の 5 つのツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Web Reader
Claude やその他の LLM がウェブページの内容を読み取り、解析できる強力な MCP(Model Context Protocol)サーバーです。アクセス制限の回避に対応しており、WeChat の記事や『TIME』誌などの保護されたコンテンツを簡単に取得できます。
機能
- 🚀 3 つのエンジンに対応:Jina Reader API、ローカルパーサー、Playwright ブラウザーを統合
- 🔄 スマートなフォールバック:Jina Reader → ローカル解析 → Playwright ブラウザーの 3 段階で自動切り替え
- 🌐 制限を回避:Playwright を使用して、Cloudflare や CAPTCHA などのアクセス制限に対応
- 📦 一括処理:複数の URL を同時に取得
- 🎯 柔軟な制御:特定の解析方法を強制的に使用可能
- 📝 Markdown 出力:コンテンツを読みやすい Markdown 形式に自動変換
インストール
方法 1:ソースからインストール
# 克隆仓库
git clone https://github.com/zacfire/mcp-web-reader.git
cd mcp-web-reader
# 安装依赖
npm install
# 构建项目
npm run build
# 安装 Playwright 浏览器(必需)
npx playwright install chromium
方法 2:npm でインストール(公開済みの場合)
npm install -g mcp-web-reader
設定
Claude Desktop の設定ファイルに以下を追加します。
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"web-reader": {
"command": "node",
"args": ["/absolute/path/to/mcp-web-reader/dist/index.js"]
}
}
}
使用方法
設定が完了すると、Claude で以下のコマンドを使用できます。
-
スマート取得(推奨)
- 「https://example.com の内容を取得してください」
- 3 段階で自動的にフォールバック:Jina Reader → ローカル解析 → Playwright ブラウザー
-
一括取得
- 「次のウェブページを取得してください:[url1, url2, url3]」
- 各 URL に対してスマートなフォールバック戦略を適用
-
Jina Reader の使用を強制
- 「Jina Reader を使って https://example.com を取得してください」
-
ローカル解析の使用を強制
- 「ローカルパーサーを使って https://example.com を取得してください」
-
ブラウザーモードの使用を強制
- 「ブラウザーを使って https://example.com を取得してください」
- ほかの方法を使わずに直接取得します。アクセス制限があることが明らかなウェブサイトに適しています。
対応するアクセス制限付きウェブサイトの種類
✅ WeChat 公式アカウントの記事 - アクセス制限を自動的に回避
✅ 『TIME』誌、The New York Times - ペイウォールや地域制限を回避
✅ Cloudflare で保護されたウェブサイト - 実際のブラウザーを使って検出を回避
✅ JavaScript のレンダリングが必要なページ - ページのスクリプトを完全に実行
✅ CAPTCHA/人間確認が必要なウェブサイト - 実際のユーザーの操作をシミュレート
ツール一覧
fetch_url- スマート取得(3 段階のフォールバック:Jina → ローカル → Playwright)fetch_url_with_jina- Jina Reader の使用を強制fetch_url_local- ローカルパーサーの使用を強制fetch_url_with_browser- Playwright ブラウザーの使用を強制(アクセス制限を回避)fetch_multiple_urls- 複数の URL を一括取得
技術アーキテクチャ
スマートなフォールバック戦略
用户请求 URL
↓
1. Jina Reader API (最快,成功率高)
↓ 失败
2. 本地解析器 (Node.js + JSDOM)
↓ 检测到访问限制
3. Playwright 浏览器 (真实浏览器,突破限制)
アクセス制限の検出
以下の状況を自動的に検出し、ブラウザーモードを有効にします。
- HTTP ステータスコード:403, 429, 503, 520-524
- エラーキーワード:Cloudflare, CAPTCHA, Access Denied, Rate Limit
- コンテンツのキーワード:Security Check, Human Verification
開発
# 开发模式(自动重新编译)
npm run dev
# 构建
npm run build
# 测试运行
npm start
# 安装浏览器二进制文件(首次使用必需)
npx playwright install chromium
パフォーマンス最適化
- ⚡ ブラウザーインスタンスの再利用 - 起動の繰り返しによるオーバーヘッドを回避
- 🚫 リソースのフィルタリング - 画像やスタイルシートなど、不要な読み込みをブロック
- 🎯 スマートな選択 - 高速な方法を優先し、必要な場合にのみブラウザーを使用
- 💾 適切な終了処理 - ブラウザーのリソースを正しく解放
コントリビューション
プルリクエストを歓迎します!
ライセンス
MIT License
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。