firecrawl
무엇인가
Firecrawl은 웹 페이지를 수집해 LLM이 소비하는 형식으로 바꾸는 웹 컨텍스트 API다. 자체 호스팅 가능한 오픈소스 서버와 firecrawl.dev의 호스팅 서비스가 같은 기능을 제공하며, AI 에이전트가 실시간 웹 데이터를 참조할 때 쓰는 백엔드 자리에 놓인다.
어떻게 동작하나
핵심 엔드포인트는 /search, /scrape, /crawl, /map, /batch/scrape, /agent다. /crawl은 작업 ID를 반환하고 상태 조회로 진행을 확인하며, SDK가 폴링을 대신 처리한다. /scrape는 추출 전에 click, scroll, write, wait, press 같은 액션을 실행할 수 있고 결과는 Markdown, 구조화 JSON, 스크린샷으로 나온다. 웹에 호스팅된 PDF와 DOCX도 파싱한다.
무엇과 다른가
Playwright나 Puppeteer로 스크래퍼를 직접 작성하는 방식과 달리 프록시 회전, 오케스트레이션, 레이트 리밋, JS 차단 콘텐츠 처리를 서버 쪽에서 담당한다. /agent는 URL을 미리 알 필요 없이 필요한 데이터를 서술하면 검색·탐색·추출을 수행하며, 기존 /extract 엔드포인트를 대체한다.
어떻게 쓰나
firecrawl.dev에서 API 키를 발급받고 플레이그라운드에서 시험한다. Python, Node.js, Go, Java, Elixir, Rust, Ruby, .NET, PHP SDK가 있고 CLI와 MCP 서버로 에이전트에 연결한다. 스킬은 npx skills add firecrawl/skills로 설치하며 Claude Code, Antigravity, OpenCode 등에서 동작한다.
전제와 한계
코어는 AGPL-3.0, SDK와 일부 UI 컴포넌트는 MIT로 배포된다. 클라우드 버전에는 오픈소스에 없는 기능이 추가로 있다. /agent에서 model과 effort를 함께 보내면 400 오류가 나고, 둘 다 없으면 spark-1-pro가 실행된다. 자체 호스팅과 로컬 실행은 별도 가이드를 따른다.
유사 도구
- crawl4ai웹 페이지를 LLM이 바로 읽는 Markdown과 구조화 JSON으로 바꾸는 비동기 Python 크롤러다. Playwright 브라우저 풀과 BM25 필터로 본문만 남긴다.
- wigoloAI 에이전트에 검색·fetch·크롤·추출·캐시를 MCP 한 표면으로 제공하는 로컬 우선 웹 계층이다. API 키 없이 공개 엔진을 직접 호출하고 결과를 ~/.wigolo/에 캐시한다.
- readerURL 앞에 https://r.jina.ai/ 를 붙이면 웹 페이지·PDF·오피스 문서를 LLM이 읽는 마크다운으로 변환하는 TypeScript 서비스다.
- Scrapling적응형 파서와 안티봇 우회 fetcher, Scrapy 스타일 스파이더를 한 라이브러리에 묶은 Python 웹 스크래핑·크롤링 프레임워크다.
- crawleeNode.js용 웹 스크래핑·브라우저 자동화 라이브러리다. HTTP와 헤드리스 브라우저를 같은 인터페이스로 다루고 프록시 회전과 요청 큐를 내장한다.
- scrapy파이썬으로 웹사이트를 순회하며 구조화된 데이터를 추출하는 비동기 스크래핑 프레임워크다. 스파이더·미들웨어·아이템 파이프라인으로 수집 흐름을 조립한다.