remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Uses Cloudflare Browser Rendering to extract web content for LLM context through both REST API and Workers Binding API
Leverages Puppeteer through Cloudflare's implementation (@cloudflare/puppeteer) for browser automation and content extraction
Cloudflareブラウザレンダリング実験とMCPサーバー
このプロジェクトでは、Cloudflare Browser Renderingを用いてLLMコンテキスト用のWebコンテンツを抽出する方法を紹介します。REST APIとWorkers Binding APIを用いた実験に加え、LLMにWebコンテキストを提供するために使用できるMCPサーバー実装も含まれています。
プロジェクト構造
前提条件
- Node.js (v16以降)
- ブラウザレンダリングが有効になっているCloudflareアカウント
- タイプスクリプト
- Wrangler CLI (ワーカーのデプロイ用)
インストール
- リポジトリをクローンします。
- 依存関係をインストールします:
Cloudflareワーカーのセットアップ
- Cloudflare Puppeteer パッケージをインストールします。
- Wrangler を設定します。
- ワーカーをデプロイする:
- ワーカーをテストする:
実験の実行
基本的なREST API実験
この実験では、Cloudflare ブラウザ レンダリング REST API を使用して Web コンテンツを取得および処理する方法を示します。
Puppeteer バインディング API 実験
この実験では、より高度なブラウザ自動化を実現するために、Puppeteer で Cloudflare Browser Rendering Workers Binding API を使用する方法を示します。
コンテンツ抽出実験
この実験では、LLM のコンテキストとして使用するために Web コンテンツを抽出して処理する方法を示します。
MCPサーバー
MCP サーバーは、LLM のコンテキストとして使用するために、Cloudflare ブラウザ レンダリングを使用して Web コンテンツを取得および処理するためのツールを提供します。
MCPサーバーの構築
MCPサーバーの実行
あるいは、開発の場合:
MCP サーバーツール
MCP サーバーは次のツールを提供します。
fetch_page
- LLMコンテキストのWebページを取得して処理しますsearch_documentation
- Cloudflareのドキュメントを検索し、関連するコンテンツを返しますextract_structured_content
- CSSセレクターを使用してWebページから構造化コンテンツを抽出しますsummarize_content
- LLM コンテキストをより簡潔にするために Web コンテンツを要約します
構成
Cloudflare ブラウザ レンダリング エンドポイントを使用するには、 BROWSER_RENDERING_API
環境変数を設定します。
YOUR_WORKER_URL_HERE
、デプロイしたCloudflare WorkerのURLに置き換えてください。このプレースホルダは、以下のファイルで置き換える必要があります。
- テストファイル内:
test-puppeteer.js
、examples/debugging-tools/debug-test.js
、examples/testing/content-test.js
- MCP サーバー構成:
cline_mcp_settings.json.example
- ブラウザクライアントの場合:
src/browser-client.ts
(環境変数が設定されていない場合のフォールバックとして)
Clineとの統合
MCP サーバーを Cline と統合するには、 cline_mcp_settings.json.example
ファイルを適切な場所にコピーします。
または、既存のcline_mcp_settings.json
ファイルに構成を追加します。
主な学び
- Cloudflare ブラウザ レンダリングでは、ブラウザ バインディングと対話するために
@cloudflare/puppeteer
パッケージが必要です。 - ブラウザ バインディングを使用する正しいパターンは次のとおりです。Copy
- ブラウザ レンダリング バインディングを使用するワーカーをデプロイする場合は、
nodejs_compat
互換性フラグを有効にする必要があります。 - リソースの漏洩を防ぐため、使用後は必ずブラウザを閉じてください。
ライセンス
マサチューセッツ工科大学
You must be authenticated.
Cloudflare ブラウザレンダリングを活用して、LLM のコンテキストとして使用するために Web コンテンツを抽出および処理し、ページの取得、ドキュメントの検索、構造化コンテンツの抽出、コンテンツの要約を行うツールを提供するサーバー。
- Project Structure
- Prerequisites
- Installation
- Cloudflare Worker Setup
- Running the Experiments
- MCP Server
- Configuration
- Integrating with Cline
- Key Learnings
- License