Firecrawl MCP Server
Firecrawl MCP サーバー
Web スクレイピング機能のためにFirecrawlと統合する Model Context Protocol (MCP) サーバー実装。
最初の実装にご協力いただいた@vrknetha 、 @cawstudiosに深く感謝いたします。
特徴
スクレイピング、クロール、検索、抽出、詳細な調査、バッチスクレイピングのサポート
JSレンダリングによるWebスクレイピング
URLの検出とクロール
コンテンツ抽出によるウェブ検索
指数バックオフによる自動再試行
レート制限を組み込んだ効率的なバッチ処理
クラウドAPIのクレジット使用状況監視
包括的なログシステム
クラウドおよびセルフホスト型 FireCrawl インスタンスのサポート
モバイル/デスクトップビューポートのサポート
タグの包含/除外によるスマートなコンテンツフィルタリング
Related MCP server: OneSearch MCP Server
インストール
npxで実行
env FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp手動インストール
npm install -g firecrawl-mcpカーソル上で実行
カーソルの設定 🖥️ 注: カーソルバージョン 0.45.6 以上が必要です
Cursor で FireCrawl MCP を構成するには:
カーソル設定を開く
機能 > MCPサーバーへ移動
「+新しいMCPサーバーを追加」をクリックします
以下を入力してください:
名前: 「firecrawl-mcp」(またはお好みの名前)
タイプ:「コマンド」
コマンド:
env FIRECRAWL_API_KEY=your-api-key npx -y firecrawl-mcp
Windows を使用していて問題が発生している場合は、
cmd /c "set FIRECRAWL_API_KEY=your-api-key && npx -y firecrawl-mcp"を試してください。
your-api-key FireCrawl API キーに置き換えます。
追加後、MCPサーバーリストを更新して新しいツールを確認してください。Composer Agentは適切な場合にFireCrawl MCPを自動的に使用しますが、Webスクレイピングのニーズを明示的に指定することで、その使用をリクエストすることもできます。Command+L(Mac)でComposerにアクセスし、送信ボタンの横にある「Agent」を選択して、クエリを入力してください。
ウィンドサーフィンで走る
これを./codeium/windsurf/model_config.jsonに追加します:
{
"mcpServers": {
"mcp-server-firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}Smithery (レガシー) 経由でのインストール
Smithery経由で Claude Desktop 用の FireCrawl を自動的にインストールするには:
npx -y @smithery/cli install @mendableai/mcp-server-firecrawl --client claude構成
環境変数
クラウドAPIに必須
FIRECRAWL_API_KEY: FireCrawl APIキークラウド API を使用する場合に必須 (デフォルト)
FIRECRAWL_API_URLでセルフホストインスタンスを使用する場合はオプション
FIRECRAWL_API_URL(オプション): セルフホストインスタンスのカスタム API エンドポイント例:
https://firecrawl.your-domain.com指定しない場合はクラウド API が使用されます (API キーが必要です)
オプション構成
再試行構成
FIRECRAWL_RETRY_MAX_ATTEMPTS: 再試行の最大回数(デフォルト: 3)FIRECRAWL_RETRY_INITIAL_DELAY: 最初の再試行までの初期遅延(ミリ秒)(デフォルト: 1000)FIRECRAWL_RETRY_MAX_DELAY: 再試行間の最大遅延時間(ミリ秒)(デフォルト: 10000)FIRECRAWL_RETRY_BACKOFF_FACTOR: 指数バックオフ乗数(デフォルト: 2)
クレジット使用状況の監視
FIRECRAWL_CREDIT_WARNING_THRESHOLD: クレジット使用量の警告しきい値(デフォルト: 1000)FIRECRAWL_CREDIT_CRITICAL_THRESHOLD: クレジット使用量のクリティカルしきい値(デフォルト: 100)
設定例
カスタム再試行とクレジット監視を使用したクラウド API の使用の場合:
# Required for cloud API
export FIRECRAWL_API_KEY=your-api-key
# Optional retry configuration
export FIRECRAWL_RETRY_MAX_ATTEMPTS=5 # Increase max retry attempts
export FIRECRAWL_RETRY_INITIAL_DELAY=2000 # Start with 2s delay
export FIRECRAWL_RETRY_MAX_DELAY=30000 # Maximum 30s delay
export FIRECRAWL_RETRY_BACKOFF_FACTOR=3 # More aggressive backoff
# Optional credit monitoring
export FIRECRAWL_CREDIT_WARNING_THRESHOLD=2000 # Warning at 2000 credits
export FIRECRAWL_CREDIT_CRITICAL_THRESHOLD=500 # Critical at 500 creditsセルフホストインスタンスの場合:
# Required for self-hosted
export FIRECRAWL_API_URL=https://firecrawl.your-domain.com
# Optional authentication for self-hosted
export FIRECRAWL_API_KEY=your-api-key # If your instance requires auth
# Custom retry configuration
export FIRECRAWL_RETRY_MAX_ATTEMPTS=10
export FIRECRAWL_RETRY_INITIAL_DELAY=500 # Start with faster retriesClaude Desktopでの使用
これをclaude_desktop_config.jsonに追加します:
{
"mcpServers": {
"mcp-server-firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE",
"FIRECRAWL_RETRY_MAX_ATTEMPTS": "5",
"FIRECRAWL_RETRY_INITIAL_DELAY": "2000",
"FIRECRAWL_RETRY_MAX_DELAY": "30000",
"FIRECRAWL_RETRY_BACKOFF_FACTOR": "3",
"FIRECRAWL_CREDIT_WARNING_THRESHOLD": "2000",
"FIRECRAWL_CREDIT_CRITICAL_THRESHOLD": "500"
}
}
}
}システム構成
サーバーには、環境変数で設定可能なパラメータがいくつか含まれています。設定されていない場合のデフォルト値は以下のとおりです。
const CONFIG = {
retry: {
maxAttempts: 3, // Number of retry attempts for rate-limited requests
initialDelay: 1000, // Initial delay before first retry (in milliseconds)
maxDelay: 10000, // Maximum delay between retries (in milliseconds)
backoffFactor: 2, // Multiplier for exponential backoff
},
credit: {
warningThreshold: 1000, // Warn when credit usage reaches this level
criticalThreshold: 100, // Critical alert when credit usage reaches this level
},
};これらの構成は以下を制御します。
再試行動作
レート制限により失敗したリクエストを自動的に再試行します
API の過負荷を回避するために指数バックオフを使用します
例: デフォルト設定では、次の場合に再試行が試行されます。
1回目の再試行: 1秒の遅延
2回目の再試行: 2秒遅延
3 回目の再試行: 4 秒の遅延 (maxDelay で上限)
クレジット使用状況の監視
クラウド API の使用における API クレジットの消費を追跡します
指定されたしきい値で警告を発する
予期せぬサービス中断を防ぐのに役立ちます
例: デフォルト設定の場合:
残り1000クレジットの警告
残り100クレジットで重大な警告
レート制限とバッチ処理
サーバーは、FireCrawl に組み込まれたレート制限およびバッチ処理機能を活用します。
指数バックオフによる自動レート制限処理
バッチ操作のための効率的な並列処理
スマートなリクエストキューイングとスロットリング
一時的なエラーの自動再試行
利用可能なツール
1. スクレイプツール( firecrawl_scrape )
高度なオプションを使用して、単一の URL からコンテンツをスクレイピングします。
{
"name": "firecrawl_scrape",
"arguments": {
"url": "https://example.com",
"formats": ["markdown"],
"onlyMainContent": true,
"waitFor": 1000,
"timeout": 30000,
"mobile": false,
"includeTags": ["article", "main"],
"excludeTags": ["nav", "footer"],
"skipTlsVerification": false
}
}2. バッチスクレイプツール( firecrawl_batch_scrape )
組み込みのレート制限と並列処理により、複数の URL を効率的にスクレイピングします。
{
"name": "firecrawl_batch_scrape",
"arguments": {
"urls": ["https://example1.com", "https://example2.com"],
"options": {
"formats": ["markdown"],
"onlyMainContent": true
}
}
}応答にはステータス チェックの操作 ID が含まれます。
{
"content": [
{
"type": "text",
"text": "Batch operation queued with ID: batch_1. Use firecrawl_check_batch_status to check progress."
}
],
"isError": false
}3. バッチステータスを確認する( firecrawl_check_batch_status )
バッチ操作のステータスを確認します。
{
"name": "firecrawl_check_batch_status",
"arguments": {
"id": "batch_1"
}
}4. 検索ツール( firecrawl_search )
Web を検索し、オプションで検索結果からコンテンツを抽出します。
{
"name": "firecrawl_search",
"arguments": {
"query": "your search query",
"limit": 5,
"lang": "en",
"country": "us",
"scrapeOptions": {
"formats": ["markdown"],
"onlyMainContent": true
}
}
}5. クロールツール( firecrawl_crawl )
高度なオプションを使用して非同期クロールを開始します。
{
"name": "firecrawl_crawl",
"arguments": {
"url": "https://example.com",
"maxDepth": 2,
"limit": 100,
"allowExternalLinks": false,
"deduplicateSimilarURLs": true
}
}6. 抽出ツール( firecrawl_extract )
LLM機能を使用してWebページから構造化情報を抽出します。クラウドAIとセルフホスト型LLM抽出の両方をサポートします。
{
"name": "firecrawl_extract",
"arguments": {
"urls": ["https://example.com/page1", "https://example.com/page2"],
"prompt": "Extract product information including name, price, and description",
"systemPrompt": "You are a helpful assistant that extracts product information",
"schema": {
"type": "object",
"properties": {
"name": { "type": "string" },
"price": { "type": "number" },
"description": { "type": "string" }
},
"required": ["name", "price"]
},
"allowExternalLinks": false,
"enableWebSearch": false,
"includeSubdomains": false
}
}応答例:
{
"content": [
{
"type": "text",
"text": {
"name": "Example Product",
"price": 99.99,
"description": "This is an example product description"
}
}
],
"isError": false
}抽出ツールのオプション:
urls: 情報を抽出するURLの配列prompt: LLM抽出のカスタムプロンプトsystemPrompt: LLMをガイドするシステムプロンプトschema: 構造化データ抽出用のJSONスキーマallowExternalLinks: 外部リンクからの抽出を許可するenableWebSearch: 追加のコンテキストのWeb検索を有効にするincludeSubdomains: 抽出にサブドメインを含める
セルフホストインスタンスを使用する場合、抽出には設定されたLLMが使用されます。クラウドAPIの場合は、FireCrawlのマネージドLLMサービスが使用されます。
ログシステム
サーバーには包括的なログ機能が含まれています:
運用状況と進捗
パフォーマンス指標
クレジット使用状況の監視
レート制限の追跡
エラー条件
ログメッセージの例:
[INFO] FireCrawl MCP Server initialized successfully
[INFO] Starting scrape for URL: https://example.com
[INFO] Batch operation queued with ID: batch_1
[WARNING] Credit usage has reached warning threshold
[ERROR] Rate limit exceeded, retrying in 2s...エラー処理
サーバーは堅牢なエラー処理を提供します。
一時的なエラーの自動再試行
バックオフによるレート制限の処理
詳細なエラーメッセージ
クレジット使用に関する警告
ネットワークの回復力
エラー応答の例:
{
"content": [
{
"type": "text",
"text": "Error: Rate limit exceeded. Retrying in 2 seconds..."
}
],
"isError": true
}発達
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test貢献
リポジトリをフォークする
機能ブランチを作成する
テストを実行:
npm testプルリクエストを送信する
ライセンス
MITライセンス - 詳細はLICENSEファイルを参照
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mcma123/firecrawl-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server