> ## Documentation Index
> Fetch the complete documentation index at: https://firecrawl-locadex-parallel-t9n-main-ydzk9zxoc20klj1uk5u1gd5b.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Alexandria

> La bibliothèque de connaissances pour la superintelligence

<AlexandriaJourney />

Alexandria donne aux agents accès à des données structurées via Firecrawl. Découvrez un outil, inspectez ses entrées, puis exécutez-le. La découverte est gratuite ; l'exécution consomme les crédits indiqués sur l'outil.

[Parcourir les providers](https://www.firecrawl.dev/app/alexandria) · [Gérer les conditions des providers](https://www.firecrawl.dev/app/settings?tab=data-sources)

<h2 id="built-for-agents">
  Conçu pour les agents
</h2>

Installez le [CLI](/fr/sdks/cli) ou connectez le [serveur MCP](/fr/mcp-server).

<Tabs>
  <Tab title="CLI Firecrawl">
    ```bash theme={null}
    # Trouvez des outils en plus des résultats web.
    firecrawl search "podcast conversations about AI agents" --sources web,alexandria --domain-tools --limit 2

    # Inspectez les entrées et la tarification.
    firecrawl find-tools --providers particle --level tools --expand options,response

    # Exécutez l'outil.
    firecrawl scrape particle/podcasts/episodes/search --options '{"keyword_search":"AI agents","limit":2}'
    ```

    Installez-le avec `npm install -g firecrawl-cli` et connectez-vous avec `firecrawl login`.
  </Tab>

  <Tab title="MCP">
    Demandez à votre agent : « Trouve les outils de podcast de Particle, inspecte les entrées et la tarification de la recherche d'épisodes, puis trouve des conversations sur les agents IA. »

    L'agent utilise `firecrawl_search` pour découvrir les outils, `firecrawl_find_tools` pour les inspecter et `firecrawl_scrape` pour les exécuter.
  </Tab>
</Tabs>

<h2 id="use-it-from-the-sdks-and-api">
  Utiliser Alexandria depuis les SDK et l'API
</h2>

<Steps>
  <Step title="Trouver le bon outil">
    Décrivez votre besoin. Alexandria renvoie les outils pertinents en plus de vos résultats web.

    <CodeGroup>
      ```javascript JavaScript theme={null}
      const result = await firecrawl.search(
        "podcast conversations about AI agents",
        {
          sources: ["web", "alexandria"],
          limit: 2,
        },
      );
      ```

      ```python Python theme={null}
      result = firecrawl.search(
          "podcast conversations about AI agents",
          sources=["web", "alexandria"],
          limit=2,
      )
      ```

      ```bash cURL theme={null}
      curl https://api.firecrawl.dev/v2/search \
        -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
        -H "Content-Type: application/json" \
        -d '{
        "query": "podcast conversations about AI agents",
        "sources": [
          "web",
          "alexandria"
        ],
        "limit": 2
      }'
      ```
    </CodeGroup>

    Les résultats contiennent des pages `web` et des `tools` classés par pertinence. Chaque outil précise son provider, sa fonctionnalité, ses entrées, son contrat de response et son prix.
  </Step>

  <Step title="Vérifier ce dont il a besoin">
    Consultez les `options`, la `response` et le prix d'exécution de l'outil sélectionné avant de l'appeler. Voir [Find Tools](#find-tools) pour plus de détails.
  </Step>

  <Step title="Obtenir les données">
    Utilisez `scrape` pour appeler l'outil avec les entrées définies dans son contrat. Indiquez le provider et la fonctionnalité sous `alexandria` ; aucune URL de page n'est nécessaire.

    <CodeGroup>
      ```javascript JavaScript theme={null}
      const episodes = await firecrawl.scrape({
        alexandria: {
          provider: "particle",
          capability: "podcasts/episodes/search",
          options: {
            semantic_search: "AI agents",
            limit: 2,
          },
        },
      });

      console.log(episodes.alexandria[0].data);
      ```

      ```python Python theme={null}
      episodes = firecrawl.scrape(
          alexandria={
              "provider": "particle",
              "capability": "podcasts/episodes/search",
              "options": {
                  "semantic_search": "AI agents",
                  "limit": 2,
              },
          },
      )

      print(episodes.alexandria[0].data)
      ```

      ```bash cURL theme={null}
      REQUEST_ID="$(uuidgen)"

      curl https://api.firecrawl.dev/v2/scrape \
        -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
        -H "Content-Type: application/json" \
        -H "x-request-id: $REQUEST_ID" \
        -d '{
        "alexandria": {
          "provider": "particle",
          "capability": "podcasts/episodes/search",
          "options": {
            "semantic_search": "AI agents",
            "limit": 2
          }
        }
      }'
      ```
    </CodeGroup>

    Lisez le résultat dans `episodes.alexandria[0].data`. Vérifiez la présence d'erreurs dans chaque résultat d'outil avant d'en exploiter les données. Les réponses HTTP brutes encapsulent le résultat du SDK dans `data`.
  </Step>
</Steps>

<h2 id="find-tools">
  Find Tools
</h2>

Utilisez `findTools` / `find_tools` pour parcourir les providers et inspecter leurs outils gratuitement. Suivez la requête `next` d'un élément pour obtenir plus de détails ; le `next` de premier niveau pagine le catalogue.

<CodeGroup>
  ```javascript JavaScript theme={null}
  const catalogue = await firecrawl.findTools({
    providers: ["particle"],
    limit: 2,
  });

  // Chaque requête next dévoile une autre partie du catalogue.
  const next = catalogue.items[0]?.next;
  if (next) {
    const details = await firecrawl.scrape({ alexandria: next });
    console.log(details.alexandria[0].data);
  }
  ```

  ```python Python theme={null}
  catalogue = firecrawl.find_tools(providers=["particle"], limit=2)

  if catalogue.items and catalogue.items[0].get("next"):
      details = firecrawl.scrape(alexandria=catalogue.items[0]["next"])
      print(details.alexandria[0].data)
  ```
</CodeGroup>

<h2 id="pricing-and-access">
  Tarification et accès
</h2>

* **Découverte des outils :** gratuite. Utilisez `sources: ["alexandria"]` pour les outils uniquement, ou `["web", "alexandria"]` pour inclure les résultats web payants.
* **Exécution :** facturée au prix indiqué de l'outil.
* **Conditions du provider :** une erreur `THIRD_PARTY_DATA_TERMS_REQUIRED` contient `requiresAction.url`. Un administrateur de l'organisation doit y consulter et accepter les conditions. Les agents doivent obtenir une autorisation explicite de l'utilisateur avant d'accepter ces conditions. Les exécutions d'[Agent](/fr/features/agent#data-providers-that-need-terms) ignorent les providers dont votre équipe n'a pas accepté les conditions et les signalent dans `exchange.skippedProviders`.

<AccordionGroup>
  <Accordion title="Trouver des outils pour un site web">
    Ajoutez `domainTools: true` à une recherche ou à un scrape d'URL classique pour inclure les outils associés au site web. La mise en correspondance est gratuite ; la recherche web ou le scrape de page est facturé normalement. Les résultats incluent `matchedBy` et `matchedUrls`.

    La recherche active la correspondance par domaine par défaut lorsque `sources` inclut `alexandria` ; définissez `domainTools: false` pour la désactiver. Pour les scrapes d'URL, la correspondance par domaine est désactivée par défaut.
  </Accordion>
</AccordionGroup>

<h2 id="feedback">
  Retour
</h2>

Signalez des tickets ou demandez des fonctionnalités avec `firecrawl alexandria feedback`. Exécutez `firecrawl alexandria feedback --help` pour voir les options disponibles.
