Firecrawl: как дать Claude, Codex и LLM-агенту поиск, scraping и чистый Markdown из сайтов
Firecrawl · web data API · MCP · Claude Code · Codex

Firecrawl: как дать Claude, Codex и LLM-агенту поиск, scraping и чистый Markdown из сайтов

LLM плохо работает с «сырым интернетом»: HTML переполнен меню, рекламой, script-тегами, dynamic content и повторяющимися блоками. Firecrawl превращает сайт в данные, удобные именно для AI: Markdown, structured JSON, links, screenshots и другие форматы. Agent может искать страницы, обходить сайт, извлекать нужные поля и получать результат через API, CLI или MCP.

Firecrawl v2.11.0 последний tagged core release на момент проверки
Python SDK 4.42.0 production/stable SDK от 8 сентября 2026 года
AGPL-3.0 core SDK и отдельные компоненты имеют собственные MIT-лицензии
Web data layer for AI

Firecrawl не «ходит по сайту вместо человека» — он превращает web в данные

Главная задача Firecrawl — получить из web-источника чистое содержимое в форме, которую удобно передать модели. Для обычного article это Markdown; для catalog — JSON по schema; для большого сайта — crawl/map; для свежей информации — search.

URL / search queryweb source
→
Firecrawlfetch · render · clean · extract
→
Markdown / JSONLLM-ready data
→
Agent / RAG / appClaude · Codex · workflow
01Убирает web boilerplate

Navigation, layout noise и повторяющиеся элементы не должны съедать context window.

02Рендерит dynamic страницы

При необходимости использует browser/Playwright path, а не только обычный HTTP fetch.

03Собирает сайт целиком

Crawl автоматически обходит связанные страницы в заданных пределах.

04Возвращает структуру

Можно получить не только текст, но и JSON по заданной schema.

Чтобы не дублировать Browser Use

Firecrawl и Browser Use решают разные web-задачи

ЗадачаFirecrawlBrowser Use
Прочитать 100 страниц сайтаОсновной сценарийИзбыточно
Получить clean MarkdownДаНужно собирать отдельно
Извлечь catalog в JSONДаВозможно, но тяжелее
Нажать кнопку / пройти формуЕсть interaction/browser APIОсновной сценарий
Действовать как autonomous browser-agentНе основной смыслДа
Массовый crawl/searchДаНе лучший инструмент
Самый частый сценарий

Один URL → чистый Markdown

Python SDK

pip install firecrawl-py==4.42.0
from firecrawl import Firecrawl

firecrawl = Firecrawl(
    api_key="fc-YOUR-API-KEY"
)

doc = firecrawl.scrape(
    "https://example.com"
)

print(doc.markdown)

REST API

curl -X POST https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer fc-YOUR-API-KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "formats": ["markdown"]
  }'
На v2.11 core endpoints получили keyless access через official clients в пределах daily limits.

Для production и predictable quota всё равно разумнее использовать собственный API key.

Когда одной страницы мало

Map сначала находит URL, Crawl затем собирает содержимое

Map Быстро получить структуру сайта

Подходит, чтобы понять количество URL и выбрать только нужные разделы.

job = firecrawl.crawl(
    "https://docs.example.com",
    limit=100
)

Для больших сайтов полезно ограничивать paths, depth и page count. Это одновременно уменьшает стоимость, время и риск случайно собрать нерелевантные разделы.

На большом сайте разумный workflow: Map → фильтрация URL → Crawl.

Не нужно сразу обходить тысячи страниц, если agent реально работает только с одним product/docs разделом.

Не только Markdown

Structured extraction превращает страницу в JSON по вашей schema

{
  "url": "https://example.com/product",
  "formats": [
    {
      "type": "json",
      "schema": {
        "type": "object",
        "properties": {
          "name": {"type": "string"},
          "price": {"type": "number"},
          "in_stock": {"type": "boolean"}
        }
      }
    }
  ]
}

В v2.11 появилась также deterministicJson: Firecrawl создаёт reusable extractor по schema и кеширует его для сайта, чтобы повторные извлечения были более последовательными и не требовали LLM на каждый request.

Markdown Для RAG/summary

Когда agent должен сам интерпретировать текст.

JSON Для one-off extraction

Структурированное извлечение через schema.

deterministicJson Для повторяемых сайтов

Более predictable extraction без LLM-call на каждый scrape.

Не только URL

Parse умеет принимать документы и возвращать LLM-ready content

В current v2-линии /parse поддерживает локальные файлы, включая PDF, DOCX, DOC, ODT, RTF, XLSX, XLS и HTML. Для documents можно получать Markdown, JSON или summary.

PDFText + tables

Подготовка документов для анализа и ingestion.

DOCXOffice documents

Удобно для внутренних инструкций и reports.

XLSXTables

Извлечение структурированных данных из spreadsheet.

HTMLLocal page/file

Можно обрабатывать не только публичные URL.

Coding agents без ручного API-кода

Firecrawl CLI ставит skills для Claude Code, Codex, Cursor и других agents

Последний tagged CLI release — v1.23.3 от 27 августа 2026 года. CLI ставится отдельно и умеет search, scrape, crawl, map, interaction, research и agent jobs.

npm install -g firecrawl-cli
npx -y firecrawl-cli@latest init -y --browser

Setup умеет автоматически устанавливать skills в поддерживаемые harness: Claude Code, Codex, Cursor, Windsurf, OpenCode, OpenClaw, OpenHands и Hermes Agent.

firecrawl init --agent codex
firecrawl setup skills --agent codex

firecrawl init --agent claude-code
firecrawl setup skills --agent claude-code
CLI telemetry можно отключить.

Документация сообщает, что CLI собирает anonymous usage data вроде версии CLI/OS/Node и обнаруженных dev tools, но не command data, URLs или file contents. Для отключения: FIRECRAWL_NO_TELEMETRY=1.

Native tools для LLM

Official Firecrawl MCP даёт agent search, scrape, parse и другие web tools

Самый простой вариант — hosted MCP endpoint. Можно подключиться keyless, через browser sign-in или API key.

{
  "mcpServers": {
    "firecrawl": {
      "type": "http",
      "url": "https://mcp.firecrawl.dev/v2/mcp",
      "headers": {
        "Authorization": "Bearer <FIRECRAWL_API_KEY>"
      }
    }
  }
}

Для OAuth/browser sign-in используется отдельный endpoint https://mcp.firecrawl.dev/v2/mcp-oauth.

SearchНайти актуальные web sources

Не полагаться на training cutoff.

ScrapeПрочитать конкретную страницу

Получить Markdown или structured content.

ParseДокументы

PDF/DOCX и другие input formats.

InteractДействия на web page

Когда обычного scrape недостаточно.

API key не вставляйте прямо в URL.

Firecrawl docs рекомендуют передавать ключ через Authorization header, environment variable или secret storage клиента.

AGPL self-host

Firecrawl можно поднять на своём сервере, но production setup уже не «один container»

git clone https://github.com/firecrawl/firecrawl.git
cd firecrawl

docker compose up

Current Compose stack включает API/workers, Playwright, Redis, RabbitMQ, NuQ PostgreSQL и optional FoundationDB queue backend. На host по умолчанию публикуется API port 3002.

APIHTTP endpoint

Принимает scrape/crawl/search requests.

WorkersJob processing

Выполняют scraping и processing.

PlaywrightBrowser rendering

Для dynamic content и сложных страниц.

QueuesNuQ/Redis/RabbitMQ

Нужны для async jobs и orchestration.

Self-host baseline по умолчанию не является готовой production-security architecture.

Официальный SELF_HOST.md прямо предупреждает: default API unauthenticated; перед выходом из trusted network нужны полноценная auth-схема, TLS и network policy. Также root Compose не создаёт persistent volumes для NuQ PostgreSQL, Redis и RabbitMQ.

AI-backed features в self-host не получают модель автоматически.

Нужно отдельно подключить OpenAI, OpenAI-compatible endpoint или Ollama, если конкретная feature требует model provider.

Данные web могут содержать PII

v2.11 добавил автоматическую redaction до возврата документа

Опция redactPII умеет удалять/маскировать персональные и чувствительные данные: имена, email, телефоны, адреса и secrets до того, как scraped content попадёт дальше в agent pipeline.

{
  "url": "https://example.com",
  "formats": ["markdown"],
  "redactPII": true
}
До redaction Raw scraped content

Может содержать email, phone, customer names, tokens или другие sensitive strings.

После redaction Cleaner agent input

Снижает риск передать PII следующей облачной модели или сохранить в traces.

Redaction не заменяет собственную data classification policy.

Если источник содержит секретные внутренние данные, сначала решите, вообще можно ли отправлять их в hosted scraping/LLM pipeline.

Web scraping — классическая SSRF-поверхность

Firecrawl нужно рассматривать как сервис, который по запросу ходит во внешнюю сеть

1Не открывать self-host без auth

Иначе любой доступный клиент сможет заставлять server fetch произвольные URL.

2Private network должен быть защищён

Scraper не должен становиться мостом к metadata/internal services.

3Проверять redirects

SSRF часто обходится через разрешённый внешний URL, который редиректит внутрь сети.

4Secrets только через env/secret store

Не коммитить FIRECRAWL_API_KEY в MCP JSON или repository.

5Queue/admin ports не публиковать

Postgres, Redis, RabbitMQ и worker internals должны оставаться private.

6Следить за security updates

Проект активно обновляет Playwright/API/SDK dependencies.

CVE-2026-32857: redirect-based SSRF bypass

GitHub Advisory Database описывает high-severity проблему в Firecrawl 2.8.0 и более ранних версиях: URL проверялся до перехода, но redirect destination мог не пройти повторную network-policy validation. В результате внешний URL мог перенаправить browser к internal/restricted resource.

Для нового deployment не используйте старые 2.8.x images.

Текущий tagged core release — 2.11.0, а main дополнительно получает security dependency updates. Для self-host лучше фиксировать точный актуальный tag и следить за advisories/patches.

Ограничения

Firecrawl полезен как data layer, но не делает web «идеально структурированным»

01Сайт может блокировать scraping

Anti-bot, login, captcha и нестандартный JS всё ещё усложняют доступ.

02Crawl может быть дорогим

Большой сайт легко превращается в тысячи requests/pages.

03JSON extraction может ошибаться

Schema не гарантирует, что источник содержит однозначный правильный ответ.

04Hosted service требует доверия

URL и scraped content проходят через внешнюю инфраструктуру Firecrawl.

05Self-host требует эксплуатации

Queues, browser workers, storage, updates и network security становятся вашей задачей.

06Нужно соблюдать правила сайтов

Проект прямо возлагает на пользователя ответственность за policies/privacy/terms и по умолчанию уважает robots.txt.

Для одной статической страницы Firecrawl может быть избыточен.

Он особенно полезен, когда нужно регулярно получать данные, обходить много URL, превращать web в структуру или давать web tools AI-agent.

Практические сценарии

Где Firecrawl действительно полезен

01Research agent

Search → scrape sources → summary with citations.

02RAG ingestion

Crawl docs-сайта и сохранение clean Markdown.

03Price/catalog monitoring

Извлечение одинаковых JSON-полей с нескольких сайтов.

04SEO/content audit

Map сайта, titles/content и массовый анализ страниц.

05Claude/Codex web tools

Agent сам решает, когда искать или читать web-source.

06Document pipeline

Parse PDF/DOCX/XLSX перед дальнейшим LLM-анализом.

Первоисточники

Firecrawl: releases, API, MCP, CLI, self-host и security

Материал проверен 21 сентября 2026 года.

Latest tagged core — v2.11.0 от 19 июня 2026 года. Python SDK — 4.42.0 от 8 сентября. Latest tagged CLI — v1.23.3 от 27 августа.

Вывод

Firecrawl нужен тогда, когда web должен стать нормальным input для AI-системы

Если Browser Use отвечает на вопрос «как дать агенту браузер и действия», Firecrawl отвечает на другой: «как массово и предсказуемо превратить web в данные». Поэтому эти инструменты не конкуренты — они закрывают разные уровни web automation.

Для coding-agent особенно полезны CLI Skills и MCP: Claude/Codex может сначала найти свежий source, затем scrape содержимое, а уже после этого делать вывод или менять код.

FAQ

Частые вопросы про Firecrawl

Что такое Firecrawl простыми словами?

Web data API и open-source stack, который ищет, scrape/crawl'ит страницы и превращает их в Markdown, JSON и другие форматы для AI-приложений.

Чем Firecrawl отличается от Browser Use?

Firecrawl ориентирован на получение и структурирование web-данных в масштабе. Browser Use ориентирован на autonomous browser interaction и действия как пользователь.

Можно ли подключить Firecrawl к Claude Code или Codex?

Да. Есть official MCP и отдельный CLI с skills для Claude Code, Codex, Cursor и других agents.

Можно ли self-host?

Да. Core доступен под AGPL-3.0 и имеет Docker Compose/Kubernetes starting points. Но default self-host baseline требует дополнительной auth, TLS, persistence и network hardening для production.

Работает ли с PDF?

Да. Parse поддерживает PDF и ряд офисных форматов, а scrape/crawl также умеют работать с PDF в web-сценариях.

Можно ли получить JSON вместо Markdown?

Да. Поддерживаются structured JSON и deterministicJson для повторяемых extraction-сценариев.

Firecrawl полностью MIT?

Нет. Core repository в основном AGPL-3.0; SDK и некоторые отдельные компоненты имеют MIT-лицензии.

Безопасно ли открыть self-hosted Firecrawl в интернет?

Не в default configuration. Официальный SELF_HOST.md прямо говорит, что baseline API unauthenticated; нужны auth, TLS и network policy.

Какая версия актуальна?

На 21 сентября 2026 года latest tagged core release — Firecrawl v2.11.0; Python SDK — 4.42.0.

Web data для LLM

Нужно дать локальному или облачному агенту нормальный доступ к web без ручной обработки HTML?

Можно построить схему Search → Scrape/Crawl → Markdown/JSON → LLM, а для Claude/Codex подключить Firecrawl через MCP или готовые skills.