Firecrawl MCP Server について
Firecrawl MCP Serverは、Firecrawl APIによるウェブページのスクレイピング、検索、クロール、構造化データ抽出をMCPクライアントに提供します。サイトマップ生成やコンテンツの絞り込み、複数の出力形式にも対応します。
主な機能
- 01ページのスクレイピングと内容の絞り込み
- 02複数言語のウェブコンテンツ検索
- 03深度を指定したサイトクロール
- 04サイト構造マップの生成
- 05複数URLから構造化データを抽出
活用シーン
- 01ウェブページの内容をMarkdownに変換
- 02パスと深度を指定してサイトをクロール
- 03複数ページから情報を一括抽出
MCP 対応
Firecrawl APIを利用するスクレイピング、検索、クロール、サイトマッピング、データ抽出のツールをMCPクライアントに公開します。Firecrawl APIキーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Firecrawl MCP サーバー
Firecrawl API を使用したウェブスクレイピング、コンテンツ検索、サイトのクロール、データ抽出のための Model Context Protocol(MCP)サーバーです。
機能
-
ウェブスクレイピング:カスタマイズ可能なオプションで、あらゆるウェブページからコンテンツを抽出します
- モバイルデバイスのエミュレーション
- 広告とポップアップのブロック
- コンテンツのフィルタリング
- 構造化データの抽出
- 複数の出力形式
-
コンテンツ検索:インテリジェントな検索機能
- 多言語サポート
- 場所に基づく検索結果
- 検索結果数のカスタマイズ
- 構造化された出力形式
-
サイトのクロール:高度なウェブクロール機能
- 深度の制御
- パスのフィルタリング
- レート制限
- 進行状況の追跡
- サイトマップとの統合
-
サイトマッピング:サイト構造のマップを生成します
- サブドメインのサポート
- 検索フィルタリング
- リンク分析
- 視覚的な階層構造
-
データ抽出:複数の URL から構造化データを抽出します
- スキーマ検証
- バッチ処理
- ウェブ検索による情報補完
- カスタム抽出プロンプト
インストール
# Global installation
npm install -g @modelcontextprotocol/mcp-server-firecrawl
# Local project installation
npm install @modelcontextprotocol/mcp-server-firecrawl
クイックスタート
-
開発者ポータルから Firecrawl API キーを取得します
-
API キーを設定します:
Unix/Linux/macOS(bash/zsh):
export FIRECRAWL_API_KEY=your-api-keyWindows(コマンドプロンプト):
set FIRECRAWL_API_KEY=your-api-keyWindows(PowerShell):
$env:FIRECRAWL_API_KEY = "your-api-key"代替方法:.env ファイルを使用する(開発時に推奨):
# Install dotenv npm install dotenv # Create .env file echo "FIRECRAWL_API_KEY=your-api-key" > .env次に、コード内で設定します:
import dotenv from 'dotenv'; dotenv.config(); -
サーバーを起動します:
mcp-server-firecrawl
統合
Claude Desktop アプリ
MCP 設定に追加します:
{
"firecrawl": {
"command": "mcp-server-firecrawl",
"env": {
"FIRECRAWL_API_KEY": "your-api-key"
}
}
}
Claude VSCode 拡張機能
MCP 設定に追加します:
{
"mcpServers": {
"firecrawl": {
"command": "mcp-server-firecrawl",
"env": {
"FIRECRAWL_API_KEY": "your-api-key"
}
}
}
}
使用例
ウェブスクレイピング
// Basic scraping
{
name: "scrape_url",
arguments: {
url: "https://example.com",
formats: ["markdown"],
onlyMainContent: true
}
}
// Advanced extraction
{
name: "scrape_url",
arguments: {
url: "https://example.com/blog",
jsonOptions: {
prompt: "Extract article content",
schema: {
title: "string",
content: "string"
}
},
mobile: true,
blockAds: true
}
}
サイトのクロール
// Basic crawling
{
name: "crawl",
arguments: {
url: "https://example.com",
maxDepth: 2,
limit: 100
}
}
// Advanced crawling
{
name: "crawl",
arguments: {
url: "https://example.com",
maxDepth: 3,
includePaths: ["/blog", "/products"],
excludePaths: ["/admin"],
ignoreQueryParameters: true
}
}
サイトマッピング
// Generate site map
{
name: "map",
arguments: {
url: "https://example.com",
includeSubdomains: true,
limit: 1000
}
}
データ抽出
// Extract structured data
{
name: "extract",
arguments: {
urls: ["https://example.com/product1", "https://example.com/product2"],
prompt: "Extract product details",
schema: {
name: "string",
price: "number",
description: "string"
}
}
}
設定
詳細なセットアップオプションについては、設定ガイドを参照してください。
API ドキュメント
エンドポイントの仕様について詳しくは、API ドキュメントを参照してください。
開発
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Start in development mode
npm run dev
例
使用例については、examplesディレクトリを確認してください:
- 基本的なスクレイピング:scrape.ts
- クロールとマッピング:crawl-and-map.ts
エラー処理
このサーバーは堅牢なエラー処理を実装しています:
- 指数バックオフによるレート制限
- 自動再試行
- 詳細なエラーメッセージ
- デバッグログ
セキュリティ
- API キーの保護
- リクエストの検証
- ドメインの許可リスト
- レート制限
- 安全なエラーメッセージ
貢献
貢献のガイドラインについては、CONTRIBUTING.mdを参照してください。
ライセンス
MIT ライセンスの詳細については、LICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。