hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Uses Cloudflare Browser Rendering API to fetch and process web pages, search Cloudflare documentation, and capture screenshots
Requires deployment of a Cloudflare Worker with Browser Rendering binding and KV namespace for screenshots functionality
Leverages Puppeteer functionality through Cloudflare's Browser Rendering API for web content fetching and screenshot capture
Cloudflare ブラウザレンダリング MCP サーバー
このMCP(Model Context Protocol)サーバーは、Cloudflare Browser Renderingを使用してウェブコンテンツを取得および処理し、LLMのコンテキストとして使用するためのツールを提供します。ClaudeとClineの両方のクライアント環境で動作するように設計されています。
特徴
- Web コンテンツの取得: LLM コンテキストの Web ページを取得して処理します。
- ドキュメント検索: Cloudflareのドキュメントを検索し、関連するコンテンツを返します
- 構造化コンテンツの抽出: CSSセレクタを使用してWebページから構造化コンテンツを抽出します
- コンテンツ要約: LLM コンテキストをより簡潔にするために Web コンテンツを要約します
- スクリーンショットキャプチャ: Webページのスクリーンショットを撮る
前提条件
- Node.js v18以上
- ブラウザレンダリングAPIアクセスを持つCloudflareアカウント
- 提供された
puppeteer-worker.js
ファイルを使用してデプロイされた Cloudflare Worker
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の Cloudflare Browser Rendering を自動的にインストールするには:
- このリポジトリをクローンします:Copy
- 依存関係をインストールします:Copy
- プロジェクトをビルドします。Copy
Cloudflareワーカーのセットアップ
- Wrangler を使用して
puppeteer-worker.js
ファイルを Cloudflare Workers にデプロイします。Copy - Cloudflare Worker で次のバインディングを必ず構成してください。
- ブラウザレンダリングバインディングの
browser
SCREENSHOTS
という名前の KV 名前空間バインディング
- ブラウザレンダリングバインディングの
- デプロイされたワーカーの URL をメモします (例:
https://browser-rendering-api.yourusername.workers.dev
)
構成
クロードデスクトップ向け
- Claude Desktop 構成ファイルを開きます。Copy
- MCP サーバー構成を追加します。Copy
- Claudeデスクトップを再起動します
クラインのために
- Cline MCP 設定ファイルを開きます。Copy
- MCP サーバー構成を追加します。Copy
使用法
設定が完了すると、MCPサーバーはClaude DesktopとClineの両方で利用できるようになります。以下のツールをご利用いただけます。
フェッチページ
LLM コンテキストの Web ページを取得して処理します。
パラメータ:
url
(必須): 取得するURLmaxContentLength
(オプション): 返されるコンテンツの最大長
例:
検索ドキュメント
Cloudflare のドキュメントを検索し、関連するコンテンツを返します。
パラメータ:
query
(必須): 検索クエリmaxResults
(オプション): 返される結果の最大数
例:
構造化コンテンツの抽出
CSS セレクターを使用して Web ページから構造化コンテンツを抽出します。
パラメータ:
url
(必須): コンテンツを抽出するURLselectors
(必須): コンテンツを抽出するための CSS セレクター
例:
要約内容
LLM コンテキストをより簡潔にするために Web コンテンツを要約します。
パラメータ:
url
(必須): 要約するURLmaxLength
(オプション): 要約の最大長
例:
スクリーンショット
Web ページのスクリーンショットを撮ります。
パラメータ:
url
(必須): スクリーンショットを撮るURLwidth
(オプション): ビューポートの幅(ピクセル単位)(デフォルト: 1280)height
(オプション):ビューポートの高さ(ピクセル単位)(デフォルト:800)fullPage
(オプション): ページ全体のスクリーンショットを撮るか、ビューポートのみのスクリーンショットを撮るか (デフォルト: false)
例:
トラブルシューティング
ログ記録
MCP サーバーは、次のプレフィックスを持つ包括的なログ記録を使用します。
[Setup]
:初期化と設定[API]
: APIリクエストとレスポンス[Error]
: エラー処理とデバッグ
ログを表示するには:
- Claude デスクトップ:
~/Library/Logs/Claude/mcp*.log
(macOS) または%APPDATA%\Claude\Logs\mcp*.log
(Windows) のログを確認してください。 - Cline : VSCode拡張機能の出力コンソールにログが表示されます
よくある問題
- 「BROWSER_RENDERING_API環境変数が設定されていません」
- MCPサーバー設定でCloudflare Workerへの正しいURLが設定されていることを確認してください。
- 「CloudflareワーカーAPIは利用できないか、設定されていません」
- Cloudflare Workerがデプロイされ、実行されていることを確認します
- URLが正しくアクセス可能か確認してください
- 「ブラウザバインディングは利用できません」
- Cloudflare Workerでブラウザレンダリングバインディングが設定されていることを確認してください。
- 「スクリーンショットKVバインディングは利用できません」
- Cloudflare WorkerでKV名前空間バインディングが設定されていることを確認してください。
発達
プロジェクト構造
src/index.ts
: メインエントリポイントsrc/server.ts
: MCP サーバーの実装src/browser-client.ts
: Cloudflare ブラウザレンダリングと対話するためのクライアントsrc/content-processor.ts
: LLMコンテキストのWebコンテンツを処理しますpuppeteer-worker.js
: Cloudflare Worker の実装
建物
テスト
このプロジェクトには、すべての MCP ツールが正しく動作していることを確認する包括的なテスト スクリプトが含まれています。
これにより、次のようになります。
- MCPサーバーを起動する
- サンプルリクエストで各ツールをテストする
- 回答を確認する
- テスト結果の要約を提供する
特定のコンポーネントに対して個別のテストを実行することもできます。
テストが適切に機能するには、次のものを用意してください。
npm run build
でプロジェクトをビルドしましたBROWSER_RENDERING_API
環境変数をCloudflare Worker URLに設定します。- 必要なバインディングを使用してCloudflare Workerをデプロイしました
ライセンス
マサチューセッツ工科大学
You must be authenticated.
この MCP サーバーは、Cloudflare ブラウザ レンダリングと対話するためのツールを提供し、Cline または Claude Desktop から直接、LLM のコンテキストとして使用するための Web コンテンツを取得して処理できるようにします。
- Features
- Prerequisites
- Installation
- Cloudflare Worker Setup
- Configuration
- Usage
- Troubleshooting
- Development
- License