Firecrawl
์ ๋ฐ์ดํธ
๐ฅ The API to search, scrape, and interact with the web for AI. SearchยทScrapeยทInteract ์ธ ๊ฐ์ง ๊ธฐ๋ฅ์ ํ API ๋ก ํตํฉ ์ ๊ณตํ๋ ์คํ์์ค ์น ๋ฐ์ดํฐ ์ธํ๋ผ. firecrawl.dev ํด๋ผ์ฐ๋ SaaS ์ ๊ธฐ๋ฐ์ด ๋๋ ์์ง์ผ๋ก, AGPL-3.0 ์ผ๋ก ๊ณต๊ฐ๋์ด docker-compose ๋ก self-host ๊ฐ๋ฅํฉ๋๋ค.
git clone https://github.com/firecrawl/firecrawl && cd firecrawl && docker compose up pip install firecrawl-py npm install @mendable/firecrawl-js ์ ํ์ํ๊ฐ?
AI ์์ด์ ํธ์ RAG ํ์ดํ๋ผ์ธ์ด ๋๋ฉด์ โ์ค์ ์น์ ์ ์ ๋ ๋ฐ์ดํฐโ ๋ฅผ ์์ ์ ์ผ๋ก ๊ฐ์ ธ์ค๋ ์ธํ๋ผ ์์๊ฐ ์ปค์ก์ต๋๋ค. ์ผ๋ฐ ์คํฌ๋ํ ๋๊ตฌ๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ ๋๋งยท๋ณต์กํ ๋งํฌ์ ยทrobots.txtยท์ธํฐ๋์ ๋จ๊ณ๋ฅผ ๊ฐ์ ํด๊ฒฐํด์ผ ํด ์ด์ ๋ถ๋ด์ด ํฌ๊ณ , ๊ฒฐ๊ณผ๊ฐ LLM ์ปจํ ์คํธ์ ๋ฐ๋ก ๋ค์ด๊ฐ์ง ๋ชปํด ํ์ฒ๋ฆฌ๋ ํ์ํฉ๋๋ค.
Firecrawl ์ ๊ทธ ์ธํ๋ผ ๊ณ์ธต์ ํ API ๋ก ๋ฌถ์ต๋๋ค โ โinfrastructure layer that helps AI find, read, and act on the live webโ ๋ฅผ ํ๋ฐฉํ๋ฉฐ, ๊ฒฐ๊ณผ๋ฅผ ์ฒ์๋ถํฐ LLM ์ค๋น๋ markdown / ๊ตฌ์กฐํ ๋ฐ์ดํฐ ๋ก ๋๋ ค์ค๋๋ค.
ํต์ฌ ๊ธฐ๋ฅ โ ์ธ ๊ฐ์ง ํตํฉ ๋ฅ๋ ฅ
-
Search โ ์น ๊ฒ์
์ฟผ๋ฆฌ๋ฅผ ๋์ ธ ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ต๋๋ค. ๊ฒฐ๊ณผ์ ๋ํ ์ปจํ ์ธ ์ถ์ถ๊น์ง ํ ํธ์ถ์์ ์ฒ๋ฆฌ ๊ฐ๋ฅ.
-
Scrape โ ํ์ด์ง โ ์ ์ ๋ฐ์ดํฐ
๋จ์ผ URL ์ JSONยทmarkdown ๋ฑ LLM ์นํ ํฌ๋งท์ผ๋ก ์ถ์ถํฉ๋๋ค. ์๋ฐ์คํฌ๋ฆฝํธ ๋ ๋๋ง๊ณผ ๋ณต์กํ ๋งํฌ์ ์ ์๋ ์ฒ๋ฆฌ.
-
Interact โ ํ์ด์ง ์๋ํ
ํด๋ฆญยท์ ๋ ฅยท๋ด๋น๊ฒ์ด์ ๊ฐ์ ์ธํฐ๋์ ์ ์๋ํํด ์ ์ ์คํฌ๋ํ์ผ๋ก ๋ฟ์ง ๋ชปํ๋ ํ๋ฆ๊น์ง ์ ๊ทผ.
๋ถ๊ฐ ์๋ํฌ์ธํธ๋ก Agent(์์จ ๋ฉํฐ์์ค ๋ฆฌ์์น), Crawl(๊น์ดยทํ์ด์ง ์ ํ ํ์ ๋ค์ค ํ์ด์ง ์์ง), Map(์ฌ์ดํธ URL ๋ฐ๊ฒฌ), Batch Scrape(์ฌ๋ฌ URL ๋ณ๋ ฌ ์ฒ๋ฆฌ) ๊ฐ ์ ๊ณต๋ฉ๋๋ค.
Cloud vs Open Source
| ์ถ | Open Source (์ด repo) | Cloud (firecrawl.dev) |
|---|---|---|
| ์ด์ ์ฃผ์ฒด | ์ฌ์ฉ์ ๋ณธ์ธ | Firecrawl ํ |
| ๋ผ์ด์ ์ค | AGPL-3.0 (SDKยท์ผ๋ถ UI ๋ MIT) | SaaS ์ฝ๊ด |
| ์ถ๊ฐ ๊ธฐ๋ฅ | ์์ง ํต์ฌ | ํด๋ผ์ฐ๋ ์ ์ฉ ๊ธฐ๋ฅ ์ถ๊ฐ (README ๋น๊ต ํ ์ฐธ์กฐ) |
| ๋น์ฉ | ์ธํ๋ผ ์ด์ ๋น์ฉ | ๋ฌด๋ฃ 1,000 ํฌ๋ ๋ง/์ + ์ ๋ฃ ํ๋ |
| ๋ฐ์ดํฐ ํต์ | ์์ ์์ฒด ํต์ | Firecrawl ์ธํ๋ผ ๊ฒฝ์ |
| ์ ํฉํ ์กฐ์ง | ๋ฐ์ดํฐ ์๋ฅยท๋น์ฉยท์ปค์คํฐ๋ง์ด์ฆ๊ฐ ์ค์ํ ๊ณณ | ๋น ๋ฅธ ์์ยท์ธํ๋ผ ๋ถ๋ด ํํผ๊ฐ ์ฐ์ ์ธ ๊ณณ |
SDK
| ์ธ์ด | ํจํค์ง |
|---|---|
| Python | pip install firecrawl-py |
| Node.js | npm install @mendable/firecrawl-js |
| Java | JitPack ์ผ๋ก Gradle / Maven (com.github.firecrawl:firecrawl-java-sdk:2.0) |
| Elixir | {:firecrawl, "~> 1.0"} |
| Rust | firecrawl = "2" |
์ปค๋ฎค๋ํฐ Go SDK ๋ README ์ ๋ณ๋ ๋งํฌ๋์ด ์์ต๋๋ค.
์ฌ์ฉ ๋ฐฉ๋ฒ
ํด๋ผ์ฐ๋ (๊ฐ์ฅ ๋น ๋ฅธ ์์) โ firecrawl.dev ์์ API ํค ๋ฐ๊ธ ํ ์ง์ ํธ์ถ.
curl -X POST 'https://api.firecrawl.dev/v2/search' \
-H 'Authorization: Bearer fc-YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"query": "firecrawl", "limit": 5}'
Self-Host โ ๋ฆฌํฌ ๋ฃจํธ์ docker-compose ์คํ์ ์ฌ์ฉ.
git clone https://github.com/firecrawl/firecrawl
cd firecrawl
docker compose up
์์ธํ ํ๊ฒฝ ์ค์ ยท์์กด์ฑ์ ๋ฆฌํฌ์ SELF_HOST.md ๊ฐ์ด๋ ์ฐธ์กฐ.
Claude Code ์์ ์ฌ์ฉ โ Firecrawl MCP ๋ฅผ ํตํด ํธ์ถ. FIRECRAWL_API_URL ํ๊ฒฝ๋ณ์๋ก self-host ์ธ์คํด์ค๋ฅผ ์ง์ ํ๋ฉด ํด๋ผ์ฐ๋ ์์กด ์์ด๋ Claude ์์์ ๋๊ตฌ๋ก ์ธ ์ ์์ต๋๋ค.
์์๋๋ฉด ์ข์ ์
- AGPL-3.0 ๋ผ์ด์ ์ค ์ฃผ์ โ ์๋ฆฌ ์ ํ์ ์์ง ๋ณธ์ฒด๋ฅผ ํตํฉยท์์ ํด ๋ฐฐํฌํ ๊ณํ์ด๋ผ๋ฉด AGPL ์ ์นดํผ๋ ํํธ ์กฐํญ์ ์ฌ์ ๊ฒํ ํด์ผ ํฉ๋๋ค. ๋จ์ํ ํด๋ผ์ด์ธํธ์์ API ๋ฅผ ํธ์ถํ๋ ๊ฒฝ์ฐ(MCPยทSDK ์ฌ์ฉ)๋ ์ผ๋ฐ์ ์ผ๋ก ์ํฅ ์์.
- SDK ์ ์ผ๋ถ UI ๋ MIT โ README ๋ช ์: ํด๋ผ์ด์ธํธ ์ธก ํตํฉ์๋ MIT ๋ผ์ด์ ์ค ๋ถ๋ถ๋ง ๋ค์ด๊ฐ๋ฏ๋ก ์ผ๋ฐ ์ฌ์ฉ์๋ ๋ถ๋ด ์์.
- robots.txt ๊ธฐ๋ณธ ์ค์ โ README ๋ช ์: โFirecrawl respects robots.txt by defaultโ ๊ทธ๋ฆฌ๊ณ โIt is the sole responsibility of end users to respect websitesโ policies when scrapingโ โ ์คํฌ๋ํ ๋์ ์ฌ์ดํธ ์ ์ฑ ์ค์๋ ์ฌ์ฉ์ ์ฑ ์.
- ๋๊ท๋ชจ ์ฑํ โ 100๋ง ๋ช ์ด์์ ๋ฑ๋ก ์ฌ์ฉ์, AppleยทCanvaยทLovable ๋ฑ์ด ์ฌ์ฉํ๋ค๊ณ firecrawl.dev ๊ฐ ๋ช ์.
- ํ๋ฐํ ์ ์ง๋ณด์ โ 2024๋ 4์ ์ฒซ ์ปค๋ฐ ์ดํ ๊ฑฐ์ ๋งค์ผ ์ ๋ฐ์ดํธ.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
Firecrawl ์ ๋ฌด์์ธ๊ฐ์?
AI ๋ฅผ ์ํ ์น ๊ฒ์ยท์คํฌ๋ํยท์ธํฐ๋์ API ์์ง์ ๋๋ค. README ํ๊ธฐ ๊ทธ๋๋ก "The API to search, scrape, and interact with the web for AI". TypeScriptยทPythonยทRustยทJava ๋ก ์์ฑ๋ ํ์คํ ๋ฐฑ์๋ ์๋น์ค๋ก, [firecrawl.dev](https://firecrawl.dev) ํด๋ผ์ฐ๋ SaaS ์ ๊ธฐ๋ฐ์ด ๋๋ ๋์์ AGPL-3.0 ์ผ๋ก ๋๊ตฌ๋ self-host ํ ์ ์์ต๋๋ค.
์คํ์์ค์ธ๊ฐ์? ๋ผ์ด์ ์ค๋?
์, GitHub ์ AGPL-3.0 ์ผ๋ก ๊ณต๊ฐ๋์ด ์์ต๋๋ค. README ์ธ์ฉ: "This project is primarily licensed under the GNU Affero General Public License v3.0 (AGPL-3.0). The SDKs and some UI components are licensed under the MIT License." ์ฆ ์์ง ๋ณธ์ฒด๋ AGPL, SDKยท์ผ๋ถ UI ์ปดํฌ๋ํธ๋ MIT ์ ๋๋ค.
firecrawl.dev ์ ์ด๋ค ๊ด๊ณ์ธ๊ฐ์?
๊ฐ์ Firecrawl ํ์ด ์ด์ํ๋ ํด๋ผ์ฐ๋ SaaS ์ ๋๋ค. ์ด GitHub ์ ์์ง์ ํธ์คํ ํ ๋ฒ์ ์ด๋ฉฐ, ํด๋ผ์ฐ๋ ์ ์ฉ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์ด ์์ต๋๋ค(README ์ "Open Source vs Cloud" ๋น๊ต ํ ์ฐธ์กฐ). ๋ฌด๋ฃ 1,000 ํฌ๋ ๋ง/์ ํ๋์ผ๋ก ์์ํ ์ ์์ต๋๋ค.
์ด๋ป๊ฒ self-host ํ๋์?
๋ฆฌํฌ ๋ฃจํธ์ `docker-compose.yaml` ๊ณผ `SELF_HOST.md` ๊ฐ์ด๋๋ฅผ ๋ฐ๋ฆ ๋๋ค. ์ผ๋ฐ docker compose ๊ธฐ๋ฐ ๋ฐฐํฌ ๋ฐฉ์์ผ๋ก, redis ๊ฐ์ ์์กด ์๋น์ค์ ํจ๊ป ์ปจํ ์ด๋ ์คํ์ผ๋ก ์ด์๋ฉ๋๋ค. ๋จ์ผ `docker run` ์ผ๋ก ๋๋๋ ์ ์ ์ ์๋์ง๋ง, ๋ฒ ์ด๋ฉํ ์ธํ๋ผ ๋ฐฐํฌ๋ณด๋ค๋ ๊ฐ๋ฒผ์ด ์์ค์ ๋๋ค.
์ด๋ค SDK ๊ฐ ์๋์?
๊ณต์ ์ง์ SDK ๋ Python(`firecrawl-py`), Node.js(`@mendable/firecrawl-js`), Java(JitPack ์ผ๋ก Gradle/Maven), Elixir(`firecrawl`), Rust(`firecrawl`) ๋ค์ฏ ๊ฐ์ง์ ๋๋ค. ์ปค๋ฎค๋ํฐ Go SDK ๋ ๋ณ๋ ์กด์ฌ.
Claude Code ์์๋ ์ด๋ป๊ฒ ์ฐ๋์?
[Firecrawl MCP](/ko/tools/firecrawl-mcp/) ๋ฅผ ํตํด ํธ์ถํฉ๋๋ค. MCP ์๋ฒ๋ ํด๋ผ์ฐ๋(`FIRECRAWL_API_KEY`) ๋๋ self-host ์ธ์คํด์ค(`FIRECRAWL_API_URL`) ์ด๋ ์ชฝ์ด๋ ๊ฐ๋ฆฌํฌ ์ ์์ด, ์์ฒด ํธ์คํ ํ๊ฒฝ๋ ๊ทธ๋๋ก ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค.