Firecrawl MCP 서버
Firecrawl API를 사용하여 웹 스크래핑, 콘텐츠 검색, 사이트 크롤링 및 데이터 추출을 위한 MCP(Model Context Protocol) 서버입니다.
특징
웹 스크래핑 : 사용자 정의 옵션을 사용하여 모든 웹 페이지에서 콘텐츠 추출
모바일 장치 에뮬레이션
광고 및 팝업 차단
콘텐츠 필터링
구조화된 데이터 추출
다양한 출력 형식
콘텐츠 검색 : 지능형 검색 기능
다국어 지원
위치 기반 결과
사용자 정의 가능한 결과 제한
구조화된 출력 형식
사이트 크롤링 : 고급 웹 크롤링 기능
깊이 제어
경로 필터링
속도 제한
진행 상황 추적
사이트맵 통합
사이트 매핑 : 사이트 구조 맵 생성
하위 도메인 지원
검색 필터링
링크 분석
시각적 계층 구조
데이터 추출 : 여러 URL에서 구조화된 데이터 추출
스키마 검증
일괄 처리
웹 검색 강화
사용자 정의 추출 프롬프트
Related MCP server: MCP Firecrawl Server
설치
지엑스피1
빠른 시작
개발자 포털 에서 Firecrawl API 키를 받으세요
API 키를 설정하세요:
Unix/Linux/macOS(bash/zsh):
export FIRECRAWL_API_KEY=your-api-keyWindows(명령 프롬프트):
set FIRECRAWL_API_KEY=your-api-key윈도우(PowerShell):
$env:FIRECRAWL_API_KEY = "your-api-key"대안: .env 파일 사용(개발에 권장):
# Install dotenv npm install dotenv # Create .env file echo "FIRECRAWL_API_KEY=your-api-key" > .env그런 다음 코드에서 다음을 수행합니다.
import dotenv from 'dotenv'; dotenv.config();서버를 실행합니다:
mcp-server-firecrawl
완성
클로드 데스크톱 앱
MCP 설정에 추가:
{
"firecrawl": {
"command": "mcp-server-firecrawl",
"env": {
"FIRECRAWL_API_KEY": "your-api-key"
}
}
}클로드 VSCode 확장
MCP 구성에 추가:
{
"mcpServers": {
"firecrawl": {
"command": "mcp-server-firecrawl",
"env": {
"FIRECRAWL_API_KEY": "your-api-key"
}
}
}
}사용 예
웹 스크래핑
// Basic scraping
{
name: "scrape_url",
arguments: {
url: "https://example.com",
formats: ["markdown"],
onlyMainContent: true
}
}
// Advanced extraction
{
name: "scrape_url",
arguments: {
url: "https://example.com/blog",
jsonOptions: {
prompt: "Extract article content",
schema: {
title: "string",
content: "string"
}
},
mobile: true,
blockAds: true
}
}사이트 크롤링
// Basic crawling
{
name: "crawl",
arguments: {
url: "https://example.com",
maxDepth: 2,
limit: 100
}
}
// Advanced crawling
{
name: "crawl",
arguments: {
url: "https://example.com",
maxDepth: 3,
includePaths: ["/blog", "/products"],
excludePaths: ["/admin"],
ignoreQueryParameters: true
}
}사이트 매핑
// Generate site map
{
name: "map",
arguments: {
url: "https://example.com",
includeSubdomains: true,
limit: 1000
}
}데이터 추출
// Extract structured data
{
name: "extract",
arguments: {
urls: ["https://example.com/product1", "https://example.com/product2"],
prompt: "Extract product details",
schema: {
name: "string",
price: "number",
description: "string"
}
}
}구성
자세한 설정 옵션은 구성 가이드를 참조하세요.
API 문서
자세한 엔드포인트 사양은 API 문서를 참조하세요.
개발
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Start in development mode
npm run dev예시
더 많은 사용 예를 보려면 예제 디렉토리를 확인하세요.
기본 스크래핑: scrape.ts
크롤링 및 매핑: crawl-and-map.ts
오류 처리
서버는 강력한 오류 처리를 구현합니다.
지수 백오프를 통한 속도 제한
자동 재시도
자세한 오류 메시지
디버그 로깅
보안
API 키 보호
요청 검증
도메인 허용 목록
속도 제한
안전 오류 메시지
기여하다
기여 지침은 CONTRIBUTING.md를 참조하세요.
특허
MIT 라이센스 - 자세한 내용은 라이센스를 참조하세요.