MCP Firecrawl Server

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

  • Used for configuration management, allowing users to set environment variables like API tokens in a .env file

  • Supported as an output format for the scraped website content

  • Used for package management and running the server

MCP Firecrawl サーバー

これは、Firecrawl の API を使用して Web サイトをスクレイピングし、構造化データを抽出するためのツールを提供するシンプルな MCP サーバーです。

設定

  1. 依存関係をインストールします:
npm install
  1. 次の変数を含む.envファイルをルート ディレクトリに作成します。
FIRECRAWL_API_TOKEN=your_token_here SENTRY_DSN=your_sentry_dsn_here
  • FIRECRAWL_API_TOKEN (必須): Firecrawl APIトークン
  • SENTRY_DSN (オプション): エラー追跡とパフォーマンス監視用の Sentry DSN
  1. サーバーを起動します。
npm start

あるいは、サーバーの実行時に環境変数を直接設定することもできます。

FIRECRAWL_API_TOKEN=your_token_here npm start

特徴

  • ウェブサイトスクレイピング:さまざまな形式でウェブサイトからコンテンツを抽出します
  • 構造化データ抽出:カスタムスキーマに基づいて特定のデータポイントを抽出します
  • エラー追跡: エラー追跡とパフォーマンス監視のために Sentry と統合されています

使用法

サーバーは 2 つのツールを公開します。

  1. scrape-website : 複数のフォーマットオプションを備えた基本的なウェブサイトスクレイピング
  2. extract-data : プロンプトとスキーマに基づく構造化データ抽出

ツール: scrape-website

このツールは、Web サイトをスクレイピングし、要求された形式でそのコンテンツを返します。

パラメータ:

  • url (文字列、必須): スクレイピングするウェブサイトのURL
  • formats (文字列の配列、オプション): 希望する出力形式の配列。サポートされている形式は以下のとおりです。
    • "markdown" (デフォルト)
    • "html"
    • "text"

MCP Inspector の使用例:

# Basic usage (defaults to markdown) mcp-inspector --tool scrape-website --args '{ "url": "https://example.com" }' # Multiple formats mcp-inspector --tool scrape-website --args '{ "url": "https://example.com", "formats": ["markdown", "html", "text"] }'

ツール: データ抽出

このツールは、提供されたプロンプトとスキーマに基づいて、Web サイトから構造化データを抽出します。

パラメータ:

  • urls (文字列の配列、必須): データを抽出するURLの配列
  • prompt (文字列、必須):抽出するデータを説明するプロンプト
  • schema (オブジェクト、必須): 抽出するデータのスキーマ定義

スキーマ定義は、キーがフィールド名、値が型であるオブジェクトである必要があります。サポートされる型は次のとおりです。

  • "string" : テキストフィールドの場合
  • "boolean" : true/falseフィールド用
  • "number" : 数値フィールドの場合
  • 配列: ["type"]として指定されます。type は上記のいずれかです。
  • オブジェクト: 独自の型定義を持つネストされたオブジェクト

MCP Inspector の使用例:

# Basic example extracting company information mcp-inspector --tool extract-data --args '{ "urls": ["https://example.com"], "prompt": "Extract the company mission, whether it supports SSO, and whether it is open source.", "schema": { "company_mission": "string", "supports_sso": "boolean", "is_open_source": "boolean" } }' # Complex example with nested data mcp-inspector --tool extract-data --args '{ "urls": ["https://example.com/products", "https://example.com/pricing"], "prompt": "Extract product information including name, price, and features.", "schema": { "products": [{ "name": "string", "price": "number", "features": ["string"] }] } }'

どちらのツールも、スクレイピングまたは抽出が失敗した場合に適切なエラー メッセージを返し、設定されている場合は自動的に Sentry にエラーを記録します。

トラブルシューティング

問題が発生した場合:

  1. Firecrawl APIトークンが有効であることを確認してください
  2. スクレイピングしようとしているURLにアクセスできることを確認してください
  3. 複雑なスキーマの場合は、サポートされている形式に従っていることを確認してください。
  4. Sentry ログで詳細なエラー情報を確認する (構成されている場合)

You must be authenticated.

A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Firecrawl の API を使用して Web サイトをスクレイピングし、そこから構造化データを抽出するためのツールを提供するサーバー。複数の形式での基本的な Web サイト スクレイピングと、カスタム スキーマ ベースのデータ抽出の両方をサポートします。

  1. Setup
    1. Features
      1. Usage
        1. Tool: scrape-website
        2. Tool: extract-data
      2. Troubleshooting
        ID: sftk6d22mq