# Agent Development Kit（ADK） (/ja/developer-guides/llm-sdks-and-frameworks/google-adk)

<!-- agent-signals: reading_time_min: 2 · est_tokens: 1688 · updated: 2026-07-30 -->
Related: [OpenAI](/ja/developer-guides/llm-sdks-and-frameworks/openai.md), [Anthropic](/ja/developer-guides/llm-sdks-and-frameworks/anthropic.md), [Gemini](/ja/developer-guides/llm-sdks-and-frameworks/gemini.md), [Vercel AI SDK](/ja/developer-guides/llm-sdks-and-frameworks/vercel-ai-sdk.md), [LangChain](/ja/developer-guides/llm-sdks-and-frameworks/langchain.md), [LangGraph](/ja/developer-guides/llm-sdks-and-frameworks/langgraph.md)

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>
  <CodeBlockTabs defaultValue="Remote MCP Server" groupId="local-mcp-server+remote-mcp-server">
    <CodeBlockTabsList>
      <CodeBlockTabsTrigger value="Remote MCP Server">
        Remote MCP Server
      </CodeBlockTabsTrigger>

      <CodeBlockTabsTrigger value="Local MCP Server">
        Local MCP Server
      </CodeBlockTabsTrigger>
    </CodeBlockTabsList>

    <CodeBlockTab value="Remote MCP Server">
      ```python  
      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="https://mcp.firecrawl.dev/v2/mcp",
                      headers={"Authorization": f"Bearer {FIRECRAWL_API_KEY}"},
                  ),
              )
          ],
      )
      ```
    </CodeBlockTab>

    <CodeBlockTab value="Local MCP Server">
      ```python  
      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,
                  ),
              )
          ],
      )
      ```
    </CodeBlockTab>
  </CodeBlockTabs>
</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 (セルフホスト環境向け)&#x20;**:

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

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

```python
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='An AI agent that researches topics by scraping and analyzing web content',
    instruction='''You are a research assistant. When given a topic or question:
    1. Use the search tool to find relevant websites
    2. Scrape the most relevant pages for detailed information
    3. Extract structured data when needed
    4. Provide comprehensive, well-sourced answers''',
    tools=[
        MCPToolset(
            connection_params=StreamableHTTPServerParams(
                url="https://mcp.firecrawl.dev/v2/mcp",
                headers={"Authorization": f"Bearer {FIRECRAWL_API_KEY}"},
            ),
        )
    ],
)

# エージェントを使用
response = research_agent.run("What are the latest features in 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>
