> ## 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)

> Intégrez Firecrawl à l’ADK de Google via le Model Context Protocol (MCP) pour des workflows d’agents avancés

Intégrez Firecrawl à l’Agent Development Kit (ADK) de Google pour créer des agents IA puissants dotés de capacités de web scraping via le Model Context Protocol (MCP).

<div id="overview">
  ## Vue d’ensemble
</div>

Firecrawl fournit un serveur MCP qui s’intègre de façon transparente à l’ADK de Google, permettant à vos agents d’extraire, de parcourir et d’aspirer efficacement des données structurées depuis n’importe quel site web. L’intégration prend en charge les instances Firecrawl hébergées dans le cloud comme auto‑hébergées, avec HTTP en streaming pour des performances optimales.

<div id="features">
  ## Fonctionnalités
</div>

* Scraping, exploration et découverte de contenu web efficaces sur n’importe quel site
* Recherche avancée et extraction de contenu intelligente
* Recherche approfondie
* Déploiement flexible (cloud ou auto‑hébergé)
* Optimisé pour les environnements web modernes avec prise en charge du streaming HTTP

<div id="prerequisites">
  ## Prérequis
</div>

* Obtenez une clé d’API Firecrawl sur [firecrawl.dev](https://firecrawl.dev)
* Installez le SDK Google

<div id="setup">
  ## Configuration
</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='Un assistant pratique pour l’extraction de sites web avec Firecrawl',
      instruction='Aidez l’utilisateur à rechercher du contenu sur des sites web',
      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='Un assistant pratique pour l’extraction de sites web avec Firecrawl',
      instruction='Aidez l’utilisateur à rechercher du contenu sur des sites web',
      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">
  ## Outils disponibles
</div>

| Outil                    | Nom                            | Description                                                                         |
| ------------------------ | ------------------------------ | ----------------------------------------------------------------------------------- |
| Outil de scraping        | `firecrawl_scrape`             | Extraire le contenu d’une seule URL avec des options avancées                       |
| Outil de cartographie    | `firecrawl_map`                | Cartographier un site web pour découvrir toutes les URL indexées du site            |
| Outil de recherche       | `firecrawl_search`             | Rechercher sur le web et, en option, extraire le contenu des résultats de recherche |
| Outil de crawl           | `firecrawl_crawl`              | Démarrer un crawl asynchrone avec des options avancées                              |
| Vérifier l’état du crawl | `firecrawl_check_crawl_status` | Vérifier l’état d’une tâche de crawl                                                |
| Outil d’extraction       | `firecrawl_extract`            | Extraire des informations structurées à partir de pages web à l’aide de modèles LLM |

<div id="setup">
  ## Configuration
</div>

<div id="required-configuration">
  ### Configuration requise
</div>

**FIRECRAWL\_API\_KEY**: votre clé API Firecrawl

* Requise lors de l’utilisation de l’API cloud (par défaut)
* Facultative lors de l’utilisation d’une instance auto-hébergée avec FIRECRAWL\_API\_URL

<div id="optional-configuration">
  ### Configuration optionnelle
</div>

**URL de l’API Firecrawl (pour les instances auto-hébergées)** :

* `FIRECRAWL_API_URL` : Point de terminaison de l’API personnalisé
* Exemple : `https://firecrawl.your-domain.com`
* Si non renseigné, l’API cloud sera utilisée

<div id="example-web-research-agent">
  ## Exemple : Agent de recherche sur le Web
</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"

# Créer un agent de recherche
research_agent = Agent(
    model="gemini-2.5-pro",
    name="research_agent",
    description='Un agent IA qui recherche des sujets en scrapant et en analysant du contenu web',
    instruction='''Vous êtes un assistant de recherche. Lorsqu'on vous donne un sujet ou une question :
    1. Utilisez l'outil de recherche pour trouver des sites web pertinents
    2. Scrapez les pages les plus pertinentes pour obtenir des informations détaillées
    3. Extrayez des données structurées si nécessaire
    4. Fournissez des réponses complètes et bien documentées''',
    tools=[
        MCPToolset(
            connection_params=StreamableHTTPServerParams(
                url=f"https://mcp.firecrawl.dev/{FIRECRAWL_API_KEY}/v2/mcp",
            ),
        )
    ],
)

# Utiliser l'agent
response = research_agent.run("Quelles sont les dernières fonctionnalités de Python 3.13 ?")
print(response)
```

<div id="best-practices">
  ## Bonnes pratiques
</div>

1. **Utiliser le bon outil pour la tâche** :
   * `firecrawl_search` lorsque vous devez d’abord trouver les pages pertinentes
   * `firecrawl_scrape` pour une seule page
   * `firecrawl_crawl` pour découvrir et faire du scraping de sites entiers
   * des appels répétés à `firecrawl_scrape` lorsque vous disposez déjà d’une courte liste d’URL connues

2. **Surveiller votre consommation** : utilisez votre tableau de bord Firecrawl et les réponses de l’API pour suivre votre consommation de crédits.

3. **Gérer les erreurs proprement** : faites remonter les erreurs MCP/API à l’utilisateur et ne réessayez que lorsque votre workflow d’agent peut le faire en toute sécurité.

4. **Optimiser les performances** : utilisez `firecrawl_map` avant de faire du scraping lorsque l’agent doit découvrir des URL pertinentes.

***

<div id="related-resources">
  ## Ressources associées
</div>

<CardGroup cols={2}>
  <Card title="Guide complet pour créer des agents IA avec Google Agent Development Kit (ADK) et Firecrawl" href="https://www.firecrawl.dev/blog/google-adk-multi-agent-tutorial">
    Découvrez comment créer des systèmes d’IA multi-agents performants en utilisant le framework ADK de Google, avec Firecrawl pour le scraping web.
  </Card>

  <Card title="Documentation du serveur MCP" href="https://docs.firecrawl.dev/mcp-server">
    En savoir plus sur l’intégration et les fonctionnalités du serveur Model Context Protocol (MCP) de Firecrawl.
  </Card>

  <Card title="Documentation officielle de Google ADK" href="https://google.github.io/adk-docs/">
    Explorez la documentation officielle de Google Agent Development Kit pour des guides complets et des références API.
  </Card>
</CardGroup>
