Firecrawl MCPをClaude Codeにつなぐ手順と無料枠・料金
Firecrawl公式MCPサーバーをClaude Codeに接続する手順です。APIキーなしの無料枠で使えるツール、検索のクレジット消費、クロールの使い分けを説明します。
FirecrawlのMCPサーバーは、URLを指定したページ取得からサイト全体のクロール、Web検索までをClaude Codeから自然言語で呼び出せる公式ツールです。APIキーなしの無料枠でも一部ツールが動き、キーを設定すればクロールやAIリサーチエージェントまで使えるようになります。
Claude Codeへの接続はclaude mcp add --transport http firecrawl https://mcp.firecrawl.dev/v2/mcpの1行です。料金面では、キーなしのscrape・search・parseが無料でレート制限付きです。キーありの検索は1回2クレジットを消費します。返金の仕組みと上限は後半の料金の節で扱います。
Firecrawl MCPサーバーとは
Firecrawl MCPサーバーとは、Webスクレイピング・検索サービスFirecrawlが提供するMCP(Model Context Protocol)サーバーです。Claude CodeをはじめとするMCP対応クライアントから、Firecrawlの機能を呼び出せるようにします。単一ページの取得だけでなく、サイト内URLの発見、複数ページのクロール、Web検索、動的ページでのクリックやフォーム入力まで、Web関連の操作をひとつの接続にまとめている点が特徴です。
リポジトリはfirecrawl/firecrawl-mcp-serverで、MITライセンスのもと公開されています。GitHubのスターは7,500以上です。旧名のmendableai/firecrawl-mcp-serverのURLは、現在のリポジトリへ301でリダイレクトされます。Store上のActorから目的に合うものを選ぶ方式はClaudeとApifyの連携で扱っています。
ツール数は接続先で変わる
フルプロファイル
27個
APIキーあり。既定設定
キーなしのホスティング
3個
scrape・search・parse
検索専用エンドポイント
9個
/v2/mcp-search。固定の構成
ツール数はクライアント側の上限にも関わります。Claude Codeに追加するとツール定義がコンテキストを占めるので、使う用途に合わせて接続先を選ぶ意味があります。
接続方式の選び方
接続方式によって使えるツールの範囲と手順が変わります。まずは自分の用途に合う方式を決めます。
Claude Codeにつなぐ3つの経路
ホスティング(キーなし)
接続先はhttps://mcp.firecrawl.dev/v2/mcpです。使えるのはscrape・search・parseの3つで、レート制限があります。crawl・map・agentはキーが要ります。
ホスティング(キーあり)
同じURLにAuthorizationヘッダーでBearerトークンを付けます。crawl・map・agentを含むフルセットが使えます。アカウント連携のOAuth用には別のURLhttps://mcp.firecrawl.dev/v2/mcp-oauthが用意されています。
ローカル(npx)
stdioのローカルプロセスで、フルセットを使えます。FIRECRAWL_API_URLを設定すると、セルフホストのFirecrawl APIも指定できます。
試しにキーなしで動かしたい場合は、HTTPトランスポートでホスティングエンドポイントに接続するだけです。
claude mcp add --transport http firecrawl https://mcp.firecrawl.dev/v2/mcp本格的に使うにはFirecrawlのアカウントでAPIキーを発行し、AuthorizationヘッダーにBearerトークンとして渡します。READMEは、APIキーをサーバーURLに含めたりエージェントとのチャットに貼ったりせず、クライアントのヘッダー設定やシークレット管理に置くよう求めています。
claude mcp add --transport http firecrawl https://mcp.firecrawl.dev/v2/mcp \
--header "Authorization: Bearer YOUR_FIRECRAWL_API_KEY"ローカルプロセスとして起動したい場合は、npx経由のstdioサーバーとして追加します。環境変数FIRECRAWL_API_KEYをそのまま渡せます。
claude mcp add --env FIRECRAWL_API_KEY=fc-YOUR_API_KEY --transport stdio firecrawl -- npx -y firecrawl-mcpClaude Desktopで使う場合は、claude_desktop_config.jsonに同じcommand・args・envのJSONブロックを書きます。設定の考え方は共通です。--scopeやヘッダー指定の詳しい構文はClaude Code MCP設定ガイドにあります。
-eの直後にサーバー名を書くと失敗する
claude mcp addの環境変数オプションは-e, --env <env...>と複数値を取る形です。v2.1.289で、-eの直後にサーバー名を置いて試すとエラーになります。
claude mcp add --scope project -e FIRECRAWL_API_KEY=fc-EXAMPLE fc3 -- npx -y firecrawl-mcp
# Invalid environment variable format: fc3, environment variables should be added as: -e KEY1=value1 -e KEY2=value2サーバー名fc3が環境変数の2つ目の値として読まれるためです。--transport stdioのような別のオプションを間に挟むか、サーバー名を-eより前に置くと追加できます。上のstdio例が--transport stdio firecrawlの順で書かれているのはこのためです。
--scope projectで追加すると、作業ディレクトリの.mcp.jsonに次の形で書き込まれます。HTTP版はヘッダー付きで、stdio版はenvにキーが入ります。
{
"mcpServers": {
"firecrawl": {
"type": "http",
"url": "https://mcp.firecrawl.dev/v2/mcp",
"headers": { "Authorization": "Bearer fc-EXAMPLE" }
},
"firecrawl-local": {
"type": "stdio",
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": { "FIRECRAWL_API_KEY": "fc-EXAMPLE" }
}
}
}.mcp.jsonはリポジトリで共有されやすいファイルです。実際のキーを直接書いたままコミットしないよう、環境変数展開などの仕組みを使います。
目的別のツールの選び方
Firecrawl MCPサーバーは用途別に複数のツールを公開しています。READMEの選び方を、目的から引ける形にすると次のとおりです。
| やりたいこと | 使うツール | ポイント |
|---|---|---|
| 既知のURL1件から内容を取得 | 使うツールfirecrawl_scrape | ポイントJSON形式+スキーマ指定が推奨される |
| サイト内のURL一覧だけ知りたい | 使うツールfirecrawl_map | ポイントページ内容は取得しない |
| 検索クエリから関連ページを探す | 使うツールfirecrawl_search | ポイントscrapeOptionsで本文も同時に取得できる |
| サイト内の複数ページをまとめて取得 | 使うツールfirecrawl_crawl | ポイントlimitやmaxDiscoveryDepthで範囲を絞る |
| クリックや入力が必要な動的ページ | 使うツールfirecrawl_interact | ポイントscrapeIdでセッションを継続できる |
| 複数サイトにまたがる情報を集める | 使うツールfirecrawl_agent | ポイント非同期ジョブ。firecrawl_agent_statusで確認する |
| PDFやWord文書を読む | 使うツールfirecrawl_parse | ポイントホスティングでは2段階の読み込み |
このほかにも、米国の法令・判例を引くfirecrawl_gov_search、論文検索のfirecrawl_research_*、定期巡回のfirecrawl_monitor_*、GitHubのissueやREADMEを引くfirecrawl_developer_search、残りクレジットを返すfirecrawl_credit_usageがあります。フィードバック用ツールはFIRECRAWL_NO_SEARCH_FEEDBACK=1・FIRECRAWL_NO_ENDPOINT_FEEDBACK=1で登録しないようにでき、ツール数の上限があるクライアントで数を減らせます。
サイトを丸ごと調べるときの順序
サイト全体の情報が欲しいとき、最初からcrawlを呼ぶと返るデータが大きくなりすぎます。READMEは、crawlの応答がトークン上限を超えうると警告し、map+scrapeでの絞り込みを勧めています。
map → scrape → crawlの順に範囲を狭める
- 1
mapでURLの全体像だけ掴む
firecrawl_mapはページ内容を取らずURLだけを返します。対象サイトの構造を、コンテキストをほとんど使わずに把握できます。 - 2
欲しいページだけscrapeする
目的のURLが絞れたら、
firecrawl_scrapeをJSON形式とスキーマ付きで呼びます。欲しいフィールドだけが返るので、レスポンスが小さく済みます。 - 3
同じ構造のページが多いときだけcrawlする
firecrawl_crawlはlimit・maxDiscoveryDepth・includePaths・excludePathsで範囲を決めて呼びます。READMEの例はmaxDiscoveryDepth: 2・limit: 100です。
複数のURLをまとめて取りたいときは、firecrawl_scrapeをURLごとに呼びます。一括処理が必要なら、MCPの外でFirecrawl APIのバッチエンドポイントを使います。crawlは内部で状態をポーリングして最終結果を返し、返ったidはfirecrawl_check_crawl_statusで再確認に使えます。
検索・リサーチ系ツールの使い分け
通常のWeb検索のほかに、開発者向けや論文向けの検索があります。
firecrawl_search: 通常のWeb検索です。categories: ["research"]は、論文寄りのサイトに結果を絞るフィルタです。論文そのものの検索ではありません。firecrawl_developer_search: GitHubのissue・マージ済みPull Request・README・ドキュメントを対象にしたインデックスを引きます。エラーメッセージや既知のバグを調べるときに向きます。skillsを"only"にするとAgent Skillsファイルだけに絞れ、kで返す件数(既定10、最大100)を指定できます。firecrawl_research_*: PubMed・bioRxiv・medRxiv・arXivなどの論文を扱う4つのツールです。search_papersで検索し、inspect_paperでメタデータ、related_papersで引用関係の展開、read_paperで本文の読み込みをします。firecrawl_agent: URLが分からない、または複数サイトにまたがる調査向けの非同期ツールです。プロンプトと任意のJSONスキーマを渡すとジョブIDが返り、firecrawl_agent_statusで完了を待ちます。URLが1つ分かっているなら、scrapeのJSON形式のほうが速く安価です。
検索専用エンドポイントhttps://mcp.firecrawl.dev/v2/mcp-searchは、firecrawl_search・firecrawl_developer_search・firecrawl_gov_search・firecrawl_research_*の4つ・Alexandria用のfirecrawl_find_toolsとfirecrawl_scrapeの計9つに固定されています。ここのfirecrawl_searchはページ本文を取得しません。
Alexandriaでデータ提供元を呼ぶ
Alexandriaは、Firecrawl APIから呼べるデータ提供元のカタログです。利用にはAlexandriaの権限があるチームのAPIキーが必要で、キーなしのセッションではエラーになります。使い方は、firecrawl_searchにsources: ["web", "alexandria"]を渡して候補を探し、firecrawl_find_toolsでカテゴリ→提供元→ツールの順に契約(入力と応答の形)を絞り込み、firecrawl_scrapeのalexandria引数で実行する流れです。
動的ページの操作と定期監視
クリックやフォーム入力が必要なページにはfirecrawl_interactを使います。新規ページならurl、すでにscrapeで開いたページの続きならscrapeIdをどちらか一方だけ渡し、prompt(自然言語の指示)かcodeのどちらかを指定します。操作が終わったセッションはfirecrawl_interact_stopで閉じます。
1回の呼び出しは1つのプロンプトまたはコードの実行で完結します。クライアント側から1手ずつ操作を積み重ねたい用途は、設計の想定外です。ホスティングサーバーのfirecrawl_scrapeは読み取り専用で、ブラウザのactionsを受け付けません。操作が要るページはinteractを使います。
同じページを定期的にチェックしたい場合はfirecrawl_monitor_*が使えます。page(またはpages)とgoal(変更検知の条件)を渡すと、30分間隔のスケジュールでスクレイピングと差分判定が設定されます。変更はwebhookやメールで通知でき、firecrawl_monitor_checkで差分(diff)や判定結果を取得します。goalは2〜3文で、何を警告の対象にするかと除外したい変化を書く形がREADMEで勧められています。
自前でクローラーを組むなら、Scrapyのspiderをrobots.txt遵守とcontractsで固める手順も選べます。
スクレイピングを頼んでみる
接続できたら、Claude Codeへの指示は具体的なURLと欲しい情報を伝えるだけで足ります。
https://example.com/product の商品名・価格・説明をJSON形式で取得してClaudeはfirecrawl_scrapeをJSON形式・スキーマ付きで呼び、指定したフィールドだけを返します。ページ全体の要約が必要なら「Markdown形式で本文を取得して」と伝えると、formats: ["markdown"]が選ばれます。サイト全体なら「example.comのブログ記事を最初の2階層まで、100件以内でクロールして」のように、深さと件数の目安を添えます。
firecrawl_scrapeには用途別の特殊フォーマットもあります。個人情報を含むページではredactPII: trueで、個人を特定できる情報を伏せた結果を受け取れます。配色・フォント・ロゴなどのブランド要素だけを抜くときはformats: ["branding"]を指定します。
PDFやWord文書を読み込む(parse)
ローカルのPDFやWord文書、スプレッドシートにはfirecrawl_parseを使います。ホスティングMCPはクライアントのファイルシステムを直接読めません。filePathを渡すと短命のアップロード用コマンドとnextToolCallが返ります。そのコマンドでファイルをアップロードし、返ってきたuploadRefを指定してfirecrawl_parseをもう一度呼ぶ、2段階の流れです。
ローカルのnpx firecrawl-mcpでファイルを直接読むには、FIRECRAWL_API_URLでセルフホストのFirecrawl APIを指定する必要があります。クラウドのAPIキーだけでは、この経路は動きません。
料金とレート制限の考え方
キーなしのホスティングでは、scrape・search・parseがレート制限付きで無料で使えます。ほかのツールはAPIキーが必須です。
検索(firecrawl_search)は1回2クレジットです。結果を使ったかどうかをfirecrawl_search_feedbackで送ると、検索IDごとに最初の1回だけ1クレジットが返ります。返金にはチーム単位・UTC日単位の上限(既定100クレジット)があります。上限に達すると応答にdailyCapReached: trueが付き、その日の以降のフィードバックは記録されても返金されません。
消費の確認にはfirecrawl_credit_usageを使えます。既定は{ "view": "current" }で、残りクレジットとプランのクレジット、課金期間の開始日・終了日を返します。トップアップなどがあると、残りがプランのクレジットを上回ることがあります。{ "view": "historical" }なら月ごとの消費量、byApiKey: trueならAPIキー別の内訳です。認証済みのアカウントが前提で、キーなしでは使えません。
自前のFirecrawlインスタンスは、FIRECRAWL_API_URLでエンドポイントを指定して使います。MCPサーバー自体の実装はMCPサーバー自作ガイドが参考になります。
よくあるつまずき
crawlの範囲を絞らずに実行する。limitやmaxDiscoveryDepthを大きくしすぎると、返るデータがコンテキストウィンドウを超えることがあります。READMEの「よくある間違い」にも同じ項目があります。
markdown形式を最初から使う。READMEはmarkdownを「全文が本当に必要なときだけ」としています。目的のフィールドが決まっているなら、最初からJSON形式にするほうがレスポンスが小さくなります。
OAuthトークンとAPIキーの優先順位。READMEによると、HTTPストリーム系のモード(CLOUD_SERVICE=true・HTTP_STREAMABLE_SERVER=true・SSE_LOCAL=true)では、OAuthのBearerトークン(fco_始まり)がx-firecrawl-api-keyなどのヘッダーより優先されます。両方を設定して挙動が変わらないときは、どちらが使われているかを見ます。リフレッシュトークン(fcr_)は渡さず、アクセストークンだけを使います。
キーなしでcrawlやmapが見つからない。ホスティングのキーなしで公開されるのは3つだけです。ツールが一覧に出ないときは、Authorizationヘッダーにキーが入っているかを見ます。
まとめ
まずはキーなしのホスティングでfirecrawl_scrapeとfirecrawl_searchを試し、crawlや構造化抽出が必要になった時点でAPIキーを発行してフルセットに切り替える進め方が扱いやすい構成です。サイト全体を相手にするときは、map、scrape、crawlの順に範囲を狭めると、トークンとクレジットの消費を抑えられます。ブラウザーの直接操作やスクリーンショット中心の用途では、Cloudflare Browser RenderingのMCPのような専用サーバーとの使い分けも考えられます。
参照した一次ソース
この記事の記述は、次の一次ソースと照合しています。更新時に参照先が変わった場合は一覧も更新します。