Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/firecrawl/firecrawl-mcp-server
情報収集ユーティリティとフレームワーククローラー
GitHubfirecrawl/firecrawl-mcp-server

firecrawl-mcp-server

AIエージェント向けにWebスクレイピング、クローリング、検索機能を提供するMCPサーバー。統一されたAPIを通じて構造化データ抽出、インタラクティブブラウジング、ディープリサーチをサポートします。

リポジトリを見るウェブサイト
7.2k84361日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Firecrawl MCP Server

Model Context Protocol (MCP) サーバーであり、Firecrawl を MCP 互換の AI エージェントに導入します。ライブウェブを検索、スクレイピング、操作して、クリーンでエージェント対応のコンテキストを提供します。

初期実装を提供してくれた @vrknetha と @knacklabs に多大なる感謝を捧げます!

機能

  • ウェブを検索し、ページ全体のコンテンツを取得
  • 任意の URL をスクレイピングしてクリーンな構造化データに変換
  • ページとの対話操作 — クリック、ナビゲート、操作
  • 自律エージェントによる詳細調査
  • 自動リトライとレート制限
  • クラウドおよびセルフホスト対応
  • SSE 対応

MCP.so のプレイグラウンド または Klavis AI で、当社の MCP サーバーを試してみてください。

インストール

ホステッド MCP(キーレスフリー tiers)

リモートのホステッドサーバーにセットアップ不要で接続:``` https://mcp.firecrawl.dev/v2/mcp

root@kitploit:~
キーレス無料利用枠では、`scrape`、`search`、`interact` は API キーなしで動作します(レート制限あり)。`crawl`、`map`、`agent`、`extract` などの他のツールは依然としてキーが必要です。

人間がサインアップできる場合は、API キーまたは OAuth を優先してください。これにより、ツールセット全体とより高い制限が解放されます。キーを使用する場合は、次を使用します:```
https://mcp.firecrawl.dev/{FIRECRAWL_API_KEY}/v2/mcp

設定の詳細については、MCPサーバードキュメントとエージェントオンボーディングガイドを参照してください。

npxを使用した実行```bash

env FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp

root@kitploit:~
### 手動インストール```bash
npm install -g firecrawl-mcp

Cursorでの実行

Cursorの設定 🖥️ 注: Cursorバージョン0.45.6以降が必要です。 最新の設定手順については、MCPサーバーの設定に関する公式Cursorドキュメントを参照してください: Cursor MCPサーバー設定ガイド

Cursor v0.48.6でFirecrawl MCPを設定する手順

  1. Cursorの設定を開く
  2. 機能 > MCPサーバー に移動
  3. 「+ 新しいグローバルMCPサーバーを追加」をクリック
  4. 以下のコードを入力: ```json { "mcpServers": { "firecrawl-mcp": { "command": "npx", "args": ["-y", "firecrawl-mcp"], "env": { "FIRECRAWL_API_KEY": "YOUR-API-KEY" } } } }
    root@kitploit:~

To configure Firecrawl MCP in Cursor v0.45.6

  1. Cursor 設定を開く
  2. Features > MCP Servers に移動
  3. 「+ Add New MCP Server」をクリック
  4. 以下を入力:
    • Name: "firecrawl-mcp"(または任意の名前)
    • Type: "command"
    • Command: 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 キーに置き換えてください。まだお持ちでない場合は、https://www.firecrawl.dev/app/api-keys からアカウントを作成して取得できます。

追加後、MCP サーバーリストを更新すると新しいツールが表示されます。Composer Agent は適切な場合に自動的に Firecrawl MCP を使用しますが、Web スクレイピングのニーズを明示的に指定して要求することもできます。Composer には Command+L(Mac)でアクセスし、送信ボタンの隣の「Agent」を選択してクエリを入力します。

Windsurf での実行

以下を ./codeium/windsurf/model_config.json に追加してください:```json { "mcpServers": { "mcp-server-firecrawl": { "command": "npx", "args": ["-y", "firecrawl-mcp"], "env": { "FIRECRAWL_API_KEY": "YOUR_API_KEY" } } } }

root@kitploit:~
### Streamable HTTP Local Mode での実行

デフォルトの stdio トランスポートの代わりに、Streamable HTTP をローカルで使用してサーバーを実行するには:```bash
env HTTP_STREAMABLE_SERVER=true FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp

次のURLを使用してください:http://localhost:3000/mcp

Smithery を使用したインストール(レガシー)

Smithery を介して Claude Desktop 用の Firecrawl を自動的にインストールするには:Smithery:```bash npx -y @smithery/cli install @mendableai/mcp-server-firecrawl --client claude

root@kitploit:~
### VS Code での実行

ワンクリックインストールの場合は、以下のインストールボタンのいずれかをクリックしてください...

[![Install with NPX in VS Code](https://img.shields.io/badge/VS_Code-NPM-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=firecrawl&inputs=%5B%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22apiKey%22%2C%22description%22%3A%22Firecrawl%20API%20Key%22%2C%22password%22%3Atrue%7D%5D&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22firecrawl-mcp%22%5D%2C%22env%22%3A%7B%22FIRECRAWL_API_KEY%22%3A%22%24%7Binput%3AapiKey%7D%22%7D%7D) [![Install with NPX in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-NPM-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=firecrawl&inputs=%5B%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22apiKey%22%2C%22description%22%3A%22Firecrawl%20API%20Key%22%2C%22password%22%3Atrue%7D%5D&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22firecrawl-mcp%22%5D%2C%22env%22%3A%7B%22FIRECRAWL_API_KEY%22%3A%22%24%7Binput%3AapiKey%7D%22%7D%7D&quality=insiders)

手動インストールの場合は、以下のJSONブロックをVS Codeのユーザー設定(JSON)ファイルに追加してください。これは、`Ctrl + Shift + P` を押して `Preferences: Open User Settings (JSON)` と入力することで行えます。```json
{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "apiKey",
        "description": "Firecrawl API Key",
        "password": true
      }
    ],
    "servers": {
      "firecrawl": {
        "command": "npx",
        "args": ["-y", "firecrawl-mcp"],
        "env": {
          "FIRECRAWL_API_KEY": "${input:apiKey}"
        }
      }
    }
  }
}

オプションとして、ワークスペース内の .vscode/mcp.json というファイルに追加することもできます。これにより、他のユーザーと設定を共有できます。```json { "inputs": [ { "type": "promptString", "id": "apiKey", "description": "Firecrawl API Key", "password": true } ], "servers": { "firecrawl": { "command": "npx", "args": ["-y", "firecrawl-mcp"], "env": { "FIRECRAWL_API_KEY": "${input:apiKey}" } } } }

root@kitploit:~
## 設定

### 環境変数

#### クラウドAPIに必須

- `FIRECRAWL_API_KEY`: Firecrawl APIキー
  - クラウドAPIを使用する場合に必須(デフォルト)
  - `FIRECRAWL_API_URL`を使用したセルフホストインスタンスの場合は省略可能
- `FIRECRAWL_API_URL`(オプション): セルフホストインスタンス用のカスタムAPIエンドポイント
  - 例: `https://firecrawl.your-domain.com`
  - 指定しない場合、クラウドAPIが使用されます(APIキーが必要)

#### MCP OAuth(Bearerアクセストークン)

ホスト型Firecrawlは、[firecrawl.dev](https://firecrawl.dev)の認可サーバーを通じてOAuth **アクセストークン**(`fco_…`)を発行できます。このMCPサーバーは、解決された認証情報をFirecrawl APIに`Authorization: Bearer …`として転送します。

- **HTTPストリームトランスポート**(`CLOUD_SERVICE=true`、`HTTP_STREAMABLE_SERVER=true`、または`SSE_LOCAL=true`): クライアントはMCPリクエストで`Authorization: Bearer <fco_access_token>`を送信する必要があります。OAuth Bearerトークンは、両方が存在する場合、`x-firecrawl-api-key` / `x-api-key`よりも優先されます。
- **stdio:** 静的アクセストークンには`FIRECRAWL_OAUTH_TOKEN`を使用するか、APIキーには引き続き`FIRECRAWL_API_KEY`を使用します。

**アクセス**トークン(`fco_…`)のみを使用してください。リフレッシュトークン(`fcr_…`)はトークンエンドポイントで交換する必要があり、スクレイプ/検索APIに渡してはなりません。

### 設定例

クラウドAPIを使用する場合:```bash
export FIRECRAWL_API_KEY=your-api-key

自己ホスト型インスタンスの場合:```bash

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

root@kitploit:~
### Claude Desktopでの使用方法

これをあなたの`claude_desktop_config.json`に追加してください:```json
{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

ツールの選び方

このガイドを使って、タスクに適したツールを選択してください。

  • 正確なURLがわかっている場合: scrape を使用(構造化データにはJSON形式)
  • 複数の既知のURLがある場合: URLごとに scrape を呼び出してください。どうしても1回の一括API操作が必要な場合は、MCP外でFirecrawl APIのバッチエンドポイントを使用してください。
  • サイト上のURLを発見したい場合: map を使用
  • 情報をウェブ検索したい場合: search を使用
  • 複数の未知のソースにわたる複雑な調査が必要な場合: agent を使用
  • サイト全体またはセクションを分析したい場合: crawl を使用(制限を設定すること!)
  • インタラクティブなブラウザ自動化(クリック、入力、移動)が必要な場合: 新しいページにはURL付きで interact、すでにページをスクレイプした場合やより細かいスクレイプ制御が必要な場合は scrape + interact を使用

クイックリファレンス表

形式選択ガイド

scrape を使用する際は、適切な形式を選択してください。

  • JSON形式(ほとんどの場合推奨): ページから特定のデータが必要な場合に使用します。抽出したい内容に基づいてスキーマを定義してください。これにより応答が小さく保たれ、コンテキストウィンドウのオーバーフローを防げます。
  • マークダウン形式(控えめに使用): 記事全体を要約したりページ構造を分析したりするなど、本当にページ全体のコンテンツが必要な場合のみ使用してください。

利用可能なツール

1. スクレイプツール (firecrawl_scrape)

高度なオプションを備えた単一URLからのスクレイピング。

最適な用途:

  • どのページに情報があるか正確にわかっている場合の、単一ページのコンテンツ抽出。

推奨しない用途:

  • 複数ページからのコンテンツ抽出(既知のURLには繰り返しの scrape 呼び出し、または最初に map + scrape でURLを発見、あるいは crawl で全ページコンテンツを取得)
  • どのページに情報があるか不明な場合(search を使用)

よくある間違い:

  • 1回の scrape 呼び出しにURLのリストを渡す。MCPではURLごとに scrape を1回呼び出してください。どうしても1回の一括API操作が必要な場合は、MCP外でFirecrawl APIのバッチエンドポイントを使用してください。
  • デフォルトでマークダウン形式を使用する(必要なものだけを抽出するためにJSON形式を使用)。

適切な形式の選択:

  • JSON形式(推奨): ほとんどのユースケースでは、JSON形式とスキーマを使用して、必要な特定のデータのみを抽出します。これにより応答が焦点を絞り、コンテキストウィンドウのオーバーフローを防げます。
  • マークダウン形式: タスクが本当にページ全体のコンテンツを必要とする場合のみ(例:記事全体の要約、ページ構造の分析)。

プロンプト例:

"https://example.com/product から製品詳細を取得してください。"

使用例(JSON形式 - 推奨):```json { "name": "firecrawl_scrape", "arguments": { "url": "https://example.com/product", "formats": [ { "type": "json", "prompt": "Extract the product information", "schema": { "type": "object", "properties": { "name": { "type": "string" }, "price": { "type": "number" }, "description": { "type": "string" } }, "required": ["name", "price"] } } ] } }

root@kitploit:~
**使用例(マークダウン形式 - 全文が必要な場合):**```json
{
  "name": "firecrawl_scrape",
  "arguments": {
    "url": "https://example.com/article",
    "formats": ["markdown"],
    "onlyMainContent": true
  }
}

使用例 (ブランディング形式 - ブランドアイデンティティの抽出):```json { "name": "firecrawl_scrape", "arguments": { "url": "https://example.com", "formats": ["branding"] } }

root@kitploit:~
**ブランディング形式:** デザイン分析やスタイル再現のために包括的なブランドID(色、フォント、タイポグラフィ、スペーシング、ロゴ、UIコンポーネント)を抽出します。
**プライバシー:** `redactPII: true` を設定すると、個人を特定できる情報が編集されたコンテンツが返されます。

**戻り値:**

- JSON構造化データ、マークダウン、ブランディングプロファイル、または指定されたその他の形式。

### 2. マップツール (`firecrawl_map`)

ウェブサイトをマッピングして、サイト上のすべてのインデックス付きURLを検出します。

**最適な用途:**

- スクレイピングする前にウェブサイト上のURLを発見する
- ウェブサイトの特定のセクションを見つける

**推奨しない場合:**

- 必要な特定のURLがすでにわかっている場合(スクレイピングを使用)
- ページのコンテンツが必要な場合(マッピング後にスクレイピングを使用)

**よくある間違い:**

- URLの発見にクロールを使用する代わりにマップを使用する

**プロンプト例:**

> "example.com 上のすべてのURLをリスト表示してください。"

**使用例:**```json
{
  "name": "firecrawl_map",
  "arguments": {
    "url": "https://example.com"
  }
}

戻り値:

  • サイト上で見つかったURLの配列

3. 検索ツール(firecrawl_search)

ウェブを検索し、必要に応じて検索結果からコンテンツを抽出します。

最適な用途:

  • どのウェブサイトに情報があるかわからない場合に、複数のウェブサイトにまたがって特定の情報を探す。
  • クエリに対する最も関連性の高いコンテンツが必要な場合。

推奨しない用途:

  • スクレイピングするウェブサイトが既にわかっている場合(scrapeを使用)。
  • 単一のウェブサイトを網羅的にカバーする必要がある場合(mapまたはcrawlを使用)。

よくある間違い:

  • 自由形式の質問に対してcrawlまたはmapを使用する(代わりにsearchを使用)。

使用例:```json { "name": "firecrawl_search", "arguments": { "query": "latest AI research papers 2023", "limit": 5, "lang": "en", "country": "us", "scrapeOptions": { "formats": ["markdown"], "onlyMainContent": true, "redactPII": true } } }

root@kitploit:~
**戻り値:**

- 検索結果の配列(オプションでスクレイピングされたコンテンツを含む)と、`id` フィールド。結果を使用した後、その `id` を `firecrawl_search_feedback` に渡して、1クレジットを返金し(検索コストは2)、検索品質を向上させます。

**プロンプト例:**

> "2023年に発表されたAIに関する最新の研究論文を見つけてください。"

### 3b. 検索フィードバックツール (`firecrawl_search_feedback`)

以前の `firecrawl_search` 結果に対する構造化フィードバックを送信します。各検索IDの最初のフィードバックは1クレジットを返金し、Firecrawlの検索品質を向上させます。検索IDごとに冪等です。

**実際に使用した(または役に立たなかった)すべての検索後にこれを呼び出してください。** `missingContent` を含む悪い/部分的なフィードバックは、良いフィードバックと同じくらい価値があります。

**オプトアウト:** MCPサーバー起動時に環境変数 `FIRECRAWL_NO_SEARCH_FEEDBACK=1`(または `FIRECRAWL_DISABLE_SEARCH_FEEDBACK=1`)を設定します。`firecrawl_search_feedback` ツールは登録されず、エージェントはそれを呼び出せなくなります。チーム管理者はサーバー側でフィードバックを無効にすることもできます。その場合、ツールは登録されていますが、常に `feedbackErrorCode: "TEAM_OPTED_OUT"` を返します。

**最も重要なフィールド:** `missingContent`。これは、エージェントが見つけることを期待していたが見つからなかった特定のコンテンツの配列です。欠落しているトピックごとに1つのエントリがあります。これらはチーム間で集約され、次に何をインデックスすべきかを示します。

**毎日の返金上限(チームごと、UTC日ごと、デフォルト100クレジット)。** チームの `creditsRefundedToday` が `dailyRefundCap` に達すると、それ以降の送信はフィードバックを記録しますが、クレジットは返金されません。応答は `dailyCapReached: true` を設定します。エージェントはこのフラグを確認したら、そのUTC日の残りの間、このツールの呼び出しを停止する必要があります。

**使用例:**```json
{
  "name": "firecrawl_search_feedback",
  "arguments": {
    "searchId": "0193f6c5-1234-7890-abcd-1234567890ab",
    "rating": "good",
    "valuableSources": [
      {
        "url": "https://docs.firecrawl.dev/features/search",
        "reason": "Most up-to-date description of /search."
      }
    ],
    "missingContent": [
      {
        "topic": "Pricing for the search endpoint",
        "description": "No pricing tier table for /search specifically."
      },
      { "topic": "Per-team rate limits" }
    ],
    "querySuggestions": "Boost docs.firecrawl.dev for queries that mention 'firecrawl'"
  }
}

戻り値:

  • { success, feedbackId, creditsRefunded, alreadySubmitted? } JSON.

3c. 汎用フィードバックツール (firecrawl_feedback)

完了したv2エンドポイントジョブに対して/v2/feedbackを介して構造化フィードバックを送信します。 scrape、parse、map、またはsearchジョブに対するエンドポイントレベルのフィードバックに使用します。 特に検索結果の品質については、firecrawl_search_feedbackを使用してください。検索固有のガイダンスが含まれているためです。

フィードバックは簡潔に保ってください:問題コード、タグ、短いメモ、URL、ページ番号、小さなメタデータオブジェクトを使用してください。生のスクレイプ/パース出力は含めないでください。

オプトアウト: MCPサーバーの起動時に環境でFIRECRAWL_NO_ENDPOINT_FEEDBACK=1(またはFIRECRAWL_DISABLE_ENDPOINT_FEEDBACK=1)を設定してください。firecrawl_feedbackツールは登録されないため、エージェントはそれを呼び出すことができません。

使用例:```json { "name": "firecrawl_feedback", "arguments": { "endpoint": "scrape", "jobId": "0193f6c5-1234-7890-abcd-1234567890ab", "rating": "partial", "issues": ["missing_markdown"], "tags": ["docs"], "note": "The pricing table was missing from the markdown output.", "url": "https://example.com/pricing", "pageNumbers": [1], "metadata": { "format": "markdown" } } }

root@kitploit:~
**戻り値:**

- `{ success, feedbackId, creditsRefunded, creditsRefundedToday?, dailyRefundCap?, dailyCapReached?, alreadySubmitted?, warning? }` JSON。

### 4. クロールツール(`firecrawl_crawl`)

クロールジョブを開始し、終了状態になるまでポーリングし、最終的なクロール状態/データを返します。

**最適な用途:**

- 複数の関連ページからコンテンツを抽出する場合、包括的なカバレッジが必要なとき。

**非推奨な用途:**

- 単一ページからコンテンツを抽出する場合(スクレイプを使用)
- トークン制限が懸念される場合(より細かい制御のためにマップ + スクレイプを使用)
- 高速な結果が必要な場合(クロールは遅い可能性があります)

**警告:** クロールの応答は非常に大きくなる可能性があり、トークン制限を超える場合があります。クロールの深さとページ数を制限するか、より細かい制御のためにマップ + スクレイプを使用してください。

**よくある間違い:**

- リミットや maxDiscoveryDepth を高く設定しすぎる(トークンオーバーフローの原因)
- 単一ページに対してクロールを使用する(代わりにスクレイプを使用)

**プロンプト例:**

> "example.com/blog の最初の2階層からすべてのブログ投稿を取得する。"

**使用例:**```json
{
  "name": "firecrawl_crawl",
  "arguments": {
    "url": "https://example.com/blog/*",
    "maxDiscoveryDepth": 2,
    "limit": 100,
    "allowExternalLinks": false,
    "deduplicateSimilarURLs": true
  }
}

戻り値:

  • 内部ポーリング後の最終的なクロールステータスとデータ。id、status、completed、total、creditsUsed、expiresAt、next、data を含みます。後でジョブを再確認する必要がある場合は、返された id を firecrawl_check_crawl_status と共に使用します。

5. クロールステータスの確認 (firecrawl_check_crawl_status)

既存のクロールジョブのステータスと結果をIDで確認します。```json { "name": "firecrawl_check_crawl_status", "arguments": { "id": "550e8400-e29b-41d4-a716-446655440000" } }

root@kitploit:~
**戻り値:**

- クロールジョブのステータスを含むレスポンス

### 6. パースツール (`firecrawl_parse`)

Firecrawlの`/v2/parse`エンドポイントを使用してローカルファイルまたはホストされたアップロード参照をパースします。

**最適な用途:** PDF、Word文書、スプレッドシート、HTMLファイル、およびマークダウンや構造化JSON出力を必要とするその他のドキュメント。ホスト型MCPは2ステップのアップロード参照フローをサポートしています。ローカルでの直接ファイル読み取りには、自己ホスト型の`FIRECRAWL_API_URL`が必要です。

**推奨しない用途:** リモートURL(scrapeを使用)、1回の呼び出しで複数のファイル(ファイルごとにparseを呼び出す)、スクリーンショットやクリックなどのブラウザのみのアクション。

**ホスト型MCPのフロー:** ホスト型MCPは呼び出し元のファイルシステムを直接読み取ることができません。`firecrawl_parse`を`filePath`付きで呼び出して、有効期限の短いアップロードコマンドと`nextToolCall`を受け取り、ローカルでファイルをアップロードしてから、返された`uploadRef`を使用して再度`firecrawl_parse`を呼び出します。ホスト型アップロードURLの発行にはFirecrawlの認証またはキーレス資格が必要です。ローカルの`npx firecrawl-mcp`モードでは、直接ファイルパースには現在自己ホスト型のFirecrawl APIを指す`FIRECRAWL_API_URL`が必要です。単なるクラウドAPIキーのみのローカルサーバーでは、このツールを介してファイルを読み取りおよびアップロードすることはできません。

**使用例:**```json
{
  "name": "firecrawl_parse",
  "arguments": {
    "filePath": "/absolute/path/to/document.pdf",
    "formats": ["markdown"],
    "parsers": ["pdf"],
    "zeroDataRetention": true
  }
}

戻り値: 解析されたドキュメントコンテンツ、または nextToolCall を使用したホストアップロード手順。

7. 抽出ツール (firecrawl_extract)

LLM機能を使用してウェブページから構造化情報を抽出します。クラウドAIとセルフホストLLM抽出の両方をサポートします。

最適な用途:

  • 価格、名前、詳細などの特定の構造化データの抽出。

推奨しない用途:

  • ページの全コンテンツが必要な場合(スクレイプを使用)
  • 特定の構造化データを探していない場合

引数:

  • urls: 情報を抽出するURLの配列
  • prompt: LLM抽出のためのカスタムプロンプト
  • systemPrompt: LLMをガイドするシステムプロンプト
  • schema: 構造化データ抽出のためのJSONスキーマ
  • allowExternalLinks: 外部リンクからの抽出を許可
  • enableWebSearch: 追加コンテキストのためのウェブ検索を有効化
  • includeSubdomains: 抽出にサブドメインを含める

セルフホストインスタンスを使用する場合、抽出は設定されたLLMを使用します。クラウドAPIの場合は、Firecrawlの管理LLMサービスを使用します。

プロンプト例:

これらの製品ページから製品名、価格、説明を抽出してください。

使用例:```json { "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 } }

root@kitploit:~
**戻り値:**

- スキーマで定義された抽出済み構造化データ```json
{
  "content": [
    {
      "type": "text",
      "text": {
        "name": "Example Product",
        "price": 99.99,
        "description": "This is an example product description"
      }
    }
  ],
  "isError": false
}

8. エージェントツール (firecrawl_agent)

自律型Webリサーチエージェント。これは、あなたのクエリに基づいてインターネットを独立して閲覧し、情報を検索し、ページを移動し、構造化データを抽出する独立したAIエージェント層です。

仕組み:

エージェントはWeb検索を実行し、リンクをたどり、ページを読み込み、データを自律的に収集します。これは非同期で実行されます。即座にジョブIDを返し、完了時に firecrawl_agent_status をポーリングして結果を取得します。

非同期ワークフロー:

  1. firecrawl_agent をプロンプト/スキーマとともに呼び出す → ジョブIDを返す
  2. エージェントが調査している間に他の作業を行う(複雑なクエリでは数分かかる場合があります)
  3. ジョブIDで firecrawl_agent_status をポーリングして進捗を確認する
  4. ステータスが"completed"になったら、応答に抽出されたデータが含まれる

最適な用途:

  • 複雑なリサーチタスク(正確なURLがわからない場合)
  • 複数ソースからのデータ収集
  • ウェブ全体に分散した情報の検索
  • 結果を待つ間に他の作業ができるタスク

推奨しない用途:

  • 単一ページのスクレイピングでURLが分かっている場合(その場合はJSON形式でのスクレイピングを使用 - より高速で安価)

引数:

  • prompt: 取得したいデータの自然言語による説明(必須、最大10,000文字)
  • urls: エージェントを特定のページに集中させるためのURL配列(オプション)
  • schema: 構造化出力のためのJSONスキーマ(オプション)

プロンプト例:

"Firecrawlの創設者とその経歴を調べて"

使用例(エージェントを起動し、その後結果をポーリング):```json { "name": "firecrawl_agent", "arguments": { "prompt": "Find the top 5 AI startups founded in 2024 and their funding amounts", "schema": { "type": "object", "properties": { "startups": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "funding": { "type": "string" }, "founded": { "type": "string" } } } } } } } }

root@kitploit:~
次に、返されたジョブIDを使用して`firecrawl_agent_status`をポーリングします。

**使用例(URL付き - エージェントが特定のページに焦点を当てる):**```json
{
  "name": "firecrawl_agent",
  "arguments": {
    "urls": ["https://docs.firecrawl.dev", "https://firecrawl.dev/pricing"],
    "prompt": "Compare the features and pricing information from these pages"
  }
}

戻り値:

  • ステータス確認用のジョブID。結果をポーリングするには firecrawl_agent_status を使用します。

9. エージェントステータスの確認 (firecrawl_agent_status)

エージェントジョブのステータスを確認し、完了したら結果を取得します。エージェントを起動した後に結果をポーリングするために使用します。

ポーリングパターン: エージェントの調査は複雑なクエリの場合、数分かかることがあります。ステータスが「completed」または「failed」になるまで、このエンドポイントを定期的(例:10~30秒ごと)にポーリングしてください。```json { "name": "firecrawl_agent_status", "arguments": { "id": "550e8400-e29b-41d4-a716-446655440000" } }

root@kitploit:~
**可能なステータス:**

- `processing`: エージェントが調査中 - 後で確認してください
- `completed`: 調査完了 - レスポンスに抽出データが含まれます
- `failed`: エラーが発生しました

### 10. Interact Tool (`firecrawl_interact`)

新しいURL、または `firecrawl_scrape` で既に開かれたページと対話します。

**最適な用途:** 非推奨のブラウザツールを復元することなく、動的ページでのクリック、入力、ナビゲーション、状態の抽出。

**使用オプション:**

- `url` を渡してスクレイピングし、1回のMCP呼び出しで対話用ページを開く。
- `scrapeId` を渡して、既存のスクレイピング済みページとの対話を続ける。
- `url` または `scrapeId` のいずれか一方に加え、`prompt` または `code` のいずれかを正確に渡す。

**使用例:**```json
{
  "name": "firecrawl_interact",
  "arguments": {
    "url": "https://example.com",
    "prompt": "Click the pricing link and summarize the visible plans"
  }
}

戻り値: インタラクション結果と、URLモードの場合はフォローアップまたはクリーンアップのために派生した scrapeId。

11. インタラクト停止ツール (firecrawl_interact_stop)

スクレイピングしたページのインタラクトセッションを、操作が完了したら停止します。```json { "name": "firecrawl_interact_stop", "arguments": { "scrapeId": "scrape-id-here" } }

root@kitploit:~
### 12. 研究ツール (`firecrawl_research_*`)

研究MCPツールを通じて論文やGitHubリポジトリを検索・調査します。

**利用可能な研究ツール:**

- `firecrawl_research_search_papers`: 研究論文を検索します。
- `firecrawl_research_inspect_paper`: 1件の論文を詳しく調べます。
- `firecrawl_research_related_papers`: 関連論文を見つけます。
- `firecrawl_research_read_paper`: 論文の内容を読みます。
- `firecrawl_research_search_github`: GitHubリポジトリを検索します。

**最適な用途:** 文献レビュー、論文検索、リポジトリ発見のワークフローにおいて、エージェントが汎用的なウェブスクレイピングではなく焦点を絞った研究表面を必要とする場合。

### 13. 監視ツール (`firecrawl_monitor_*`)

定期的なページ監視を作成・管理します。監視はスケジュールされたスクレイピングまたはクロールを実行し、各結果を最後に保持したスナップショットと比較し、ウェブフックまたはメールで通知できます。

**最適な用途:**

- 1ページまたは数ページを経時的に監視する
- 平易な英語の目標(goal)を使用して意味のある変更をアラートする
- チェック履歴とページレベルの差分を追跡する

**推奨される作成パターン:**

`page` または `pages` に加えて `goal` を使用します。MCPサーバーは30分間隔のスケジュールで監視リクエストを構築し、APIが自動的に意味のある変更の判断を有効にします。

`goal` が設定されている場合、意味のある変更の判断は自動的に実行されます。ページウェブフックは `monitor.page` イベントで `isMeaningful` と `judgment` を公開します。

目標(goal)は簡潔で2~3文の監視指示として記述します。アラートをトリガーすべき内容を述べ、ユーザーが与えた範囲を保持し、リクエストから明らかな場合にのみ意図固有の除外事項を含めます。空白、書式のみの変更、リクエストID、トラッキングパラメータ、汎用的なメタデータ、無関係なページクロームなどの一般的なノイズは既に判断機能によって処理されるため、すべての目標に繰り返し記述しないでください。ユーザーが曖昧な場合は目標を広く保ちます。ユーザーが広範な監視や「どんな変更でも」を求めた場合は、それを保持します。ユーザーが何かを気にしないと言った場合は、それを明示的に含めます。```json
{
  "name": "firecrawl_monitor_create",
  "arguments": {
    "page": "https://example.com/pricing",
    "goal": "Alert when pricing, packaging, or launch messaging changes."
  }
}

Webhookを使用した複数ページ:```json { "name": "firecrawl_monitor_create", "arguments": { "pages": ["https://example.com/pricing", "https://example.com/changelog"], "goal": "Alert when pricing, packaging, or launch messaging changes.", "webhookUrl": "https://example.com/webhooks/firecrawl" } }

root@kitploit:~
**高度な作成リクエスト:**

クロールターゲット、JSON変更追跡、カスタム保持、または明示的な`judgeEnabled`制御が必要な場合は、`body`を渡します。```json
{
  "name": "firecrawl_monitor_create",
  "arguments": {
    "body": {
      "name": "Docs monitor",
      "schedule": { "text": "hourly", "timezone": "UTC" },
      "goal": "Alert when docs pages add, remove, or materially change API behavior.",
      "targets": [{ "type": "crawl", "url": "https://example.com/docs" }]
    }
  }
}

その他のモニターツール:

  • firecrawl_monitor_list: モニターを一覧表示します。
  • firecrawl_monitor_get: 1つのモニターを取得します。
  • firecrawl_monitor_update: goal、judgeEnabled、webhook、notificationを含むフィールドを更新します。
  • firecrawl_monitor_run: 今すぐチェックをトリガーします。
  • firecrawl_monitor_delete: モニターを削除します(破壊的操作。ユーザーが削除を意図している場合のみ呼び出してください)。
  • firecrawl_monitor_checks: チェックを一覧表示します。オプションでステータスによるフィルタリングが可能です。
  • firecrawl_monitor_check: ページレベルの結果を取得します。diff、snapshot、judgment.meaningful、を含みます。

ログシステム

サーバーは包括的なログ記録を提供します:

  • 操作のステータスと進捗
  • パフォーマンスメトリクス
  • レート制限の追跡
  • エラー状態

ログメッセージの例:``` [INFO] Firecrawl MCP Server initialized successfully [INFO] Starting scrape for URL: https://example.com [ERROR] Rate limit exceeded

root@kitploit:~
## エラーハンドリング

サーバーは堅牢なエラーハンドリングを提供します:

- APIレート制限エラーがMCPクライアントに通知されます
- 詳細なエラーメッセージ
- ネットワークの回復力

エラーレスポンスの例:```json
{
  "content": [
    {
      "type": "text",
      "text": "Error: Rate limit exceeded"
    }
  ],
  "isError": true
}

開発```bash

Install dependencies

npm install

Build

npm run build

Run tests

npm test

root@kitploit:~
### コントリビューション

1. リポジトリをフォークする
2. 機能ブランチを作成する
3. テストを実行する: `npm test`
4. プルリクエストを送信する

### コントリビューターへの感謝

初期実装にご協力いただいた [@vrknetha](https://github.com/vrknetha)、[@cawstudios](https://caw.tech) に感謝します!

ホスティングを提供してくれた MCP.so と Klavis AI、そしてサーバーを統合してくれた [@gstarwd](https://github.com/gstarwd)、[@xiangkaiz](https://github.com/xiangkaiz)、[@zihaolin96](https://github.com/zihaolin96) に感謝します。

## ライセンス

MIT ライセンス - 詳細は LICENSE ファイルを参照してください。
ツールをダウンロード
ツール最適な用途返り値
scrape単一ページのコンテンツJSON(推奨)またはマークダウン
interactURLまたはスクレイプ済みページとの対話実行結果 + URLモード用のscrapeId
mapサイト上のURL発見URL[]
crawl複数ページの抽出(制限あり)内部ポーリング後の最終クロールステータス/データ
parseファイルおよびホスティングされたアップロード参照マークダウン、JSON、またはドキュメント出力
extractURLからの構造化抽出JSON構造化データ
search情報のウェブ検索results[]
agent複雑なマルチソース調査JSON(構造化データ)
monitor定期的なページチェックモニター/チェックのメタデータと差分
research論文およびGitHubリポジトリの調査調査結果とリポジトリ一致
judgment.meaningfulChanges