> ## Documentation Index
> Fetch the complete documentation index at: https://docs.firecrawl.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent Development Kit（ADK）

> Model Context Protocol（MCP）を用いて Firecrawl を Google の ADK と統合し、高度なエージェントワークフローを実現

Model Context Protocol（MCP）経由で Firecrawl を Google の Agent Development Kit（ADK）と統合し、ウェブスクレイピング機能を備えた強力な AI エージェントを構築します。

<div id="overview">
  ## 概要
</div>

Firecrawl は MCP サーバーを提供しており、Google の ADK とシームレスに統合して、エージェントがあらゆるウェブサイトから効率的にスクレイピング、クロール、構造化データの抽出を行えるようにします。この統合は、パフォーマンス最適化のためにストリーミング対応の HTTP を備えた、クラウド版およびセルフホスト版の Firecrawl インスタンスの両方をサポートします。

<div id="features">
  ## 機能
</div>

* あらゆるウェブサイトに対する効率的なスクレイピング、クロール、コンテンツ発見
* 高度な検索機能と賢いコンテンツ抽出
* 深掘り調査
* 柔軟なデプロイ (クラウドまたはセルフホスト)
* Streamable HTTPを活用するモダンなウェブ環境向けに最適化

<div id="prerequisites">
  ## 前提条件
</div>

* [firecrawl.dev](https://firecrawl.dev) で Firecrawl の API キーを取得する
* Google ADK をインストールする

<div id="setup">
  ## セットアップ
</div>

<CodeGroup>
  ```python Remote MCP Server theme={null}
  from google.adk.agents.llm_agent import Agent
  from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPServerParams
  from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset

  FIRECRAWL_API_KEY = "YOUR-API-KEY"

  root_agent = Agent(
      model="gemini-2.5-pro",
      name="firecrawl_agent",
      description='Firecrawl でウェブサイトをスクレイピングするのに役立つアシスタント',
      instruction='ユーザーのウェブサイトコンテンツの検索を支援する',
      tools=[
          MCPToolset(
              connection_params=StreamableHTTPServerParams(
                  url=f"https://mcp.firecrawl.dev/{FIRECRAWL_API_KEY}/v2/mcp",
              ),
          )
      ],
  )
  ```

  ```python Local MCP Server theme={null}
  from google.adk.agents.llm_agent import Agent
  from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
  from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
  from mcp import StdioServerParameters

  root_agent = Agent(
      model='gemini-2.5-pro',
      name='firecrawl_agent',
      description='Firecrawl でウェブサイトをスクレイピングするのに役立つアシスタント',
      instruction='ユーザーのウェブサイトコンテンツの検索を支援する',
      tools=[
          MCPToolset(
              connection_params=StdioConnectionParams(
                  server_params = StdioServerParameters(
                      command='npx',
                      args=[
                          "-y",
                          "firecrawl-mcp",
                      ],
                      env={
                          "FIRECRAWL_API_KEY": "YOUR-API-KEY",
                      }
                  ),
                  timeout=30,
              ),
          )
      ],
  )
  ```
</CodeGroup>

<div id="available-tools">
  ## 利用可能なツール
</div>

| ツール           | 名称                             | 説明                                         |
| ------------- | ------------------------------ | ------------------------------------------ |
| スクレイプツール      | `firecrawl_scrape`             | 高度なオプションで単一のURLからコンテンツをスクレイピングします          |
| マップツール        | `firecrawl_map`                | サイト内のインデックス済みURLを網羅的に把握するためにサイト構造をマッピングします |
| 検索ツール         | `firecrawl_search`             | ウェブを検索し、必要に応じて検索結果からコンテンツを抽出します            |
| クローラーツール      | `firecrawl_crawl`              | 高度なオプションで非同期クローリングを開始します                   |
| クローラーステータスの確認 | `firecrawl_check_crawl_status` | クローリングジョブのステータスを確認します                      |
| 抽出ツール         | `firecrawl_extract`            | LLMを用いてウェブページから構造化された情報を抽出します              |

<div id="configuration">
  ## 構成
</div>

<div id="required-configuration">
  ### 必須設定
</div>

**FIRECRAWL\_API\_KEY**: Firecrawl の API キー

* クラウド API を使用する場合は必須（デフォルト）
* FIRECRAWL\_API\_URL を指定したセルフホスト環境を使用する場合は任意

<div id="optional-configuration">
  ### 任意の構成
</div>

**Firecrawl API URL (セルフホスト環境向け) **:

* `FIRECRAWL_API_URL`: カスタム API エンドポイント
* 例: `https://firecrawl.your-domain.com`
* 指定がない場合はクラウド API を使用します

<div id="example-web-research-agent">
  ## 例：Web Research Agent
</div>

```python theme={null}
from google.adk.agents.llm_agent import Agent
from google.adk.tools.mcp_tool.mcp_session_manager import StreamableHTTPServerParams
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset

FIRECRAWL_API_KEY = "YOUR-API-KEY"

# リサーチエージェントを作成
research_agent = Agent(
    model="gemini-2.5-pro",
    name="research_agent",
    description='Webコンテンツをスクレイピング・分析してトピックを調査するAIエージェント',
    instruction='''あなたはリサーチアシスタントです。トピックや質問が与えられた場合:
    1. 検索ツールを使用して関連するWebサイトを検索
    2. 最も関連性の高いページをスクレイピングして詳細情報を取得
    3. 必要に応じて構造化データを抽出
    4. 包括的で出典が明確な回答を提供''',
    tools=[
        MCPToolset(
            connection_params=StreamableHTTPServerParams(
                url=f"https://mcp.firecrawl.dev/{FIRECRAWL_API_KEY}/v2/mcp",
            ),
        )
    ],
)

# エージェントを使用
response = research_agent.run("Python 3.13の最新機能は何ですか?")
print(response)
```

<div id="best-practices">
  ## ベストプラクティス
</div>

1. **用途に合ったツールを使う**:
   * まず関連ページを見つける必要がある場合は `firecrawl_search`
   * 単一ページには `firecrawl_scrape`
   * サイト全体の探索とスクレイピングには `firecrawl_crawl`
   * 既知のURLの短いリストがある場合は `firecrawl_scrape` を繰り返し呼び出す

2. **利用状況を監視する**: Firecrawl ダッシュボードと API レスポンスを使って、クレジット使用量を追跡する

3. **エラーを適切に処理する**: MCP/API エラーをユーザーに表示し、エージェントのワークフローで安全に行える場合にのみリトライする

4. **パフォーマンスを最適化する**: エージェントが関連URLを見つける必要がある場合は、スクレイピングの前に `firecrawl_map` を使用する

***

<div id="related-resources">
  ## 関連リソース
</div>

<CardGroup cols={2}>
  <Card title="Google Agent Development Kit（ADK）と Firecrawl を用いた AI エージェント構築の完全ガイド" href="https://www.firecrawl.dev/blog/google-adk-multi-agent-tutorial">
    Google の ADK フレームワークと Firecrawl を組み合わせ、Web スクレイピング機能を備えた強力なマルチエージェント AI システムの構築方法を学べます。
  </Card>

  <Card title="MCP サーバー ドキュメント" href="https://docs.firecrawl.dev/mcp-server">
    Firecrawl の Model Context Protocol（MCP）サーバーとの統合および機能について詳しく学べます。
  </Card>

  <Card title="Google ADK 公式ドキュメント" href="https://google.github.io/adk-docs/">
    包括的なガイドと API リファレンスは、Google Agent Development Kit の公式ドキュメントをご覧ください。
  </Card>
</CardGroup>
