mcp-server-firecrawl
Firecrawl MCP-Server
Eine Model Context Protocol (MCP)-Serverimplementierung, die sich für Web-Scraping-Funktionen in Firecrawl integrieren lässt.
Vielen Dank an @vrknetha und @knacklabs für die erste Implementierung!
Merkmale
Web Scraping, Crawling und Discovery
Suche und Inhaltsextraktion
Tiefgehende Recherche und Batch-Scraping
Automatische Wiederholungsversuche und Ratenbegrenzung
Cloud- und selbstgehosteter Support
SSE-Unterstützung
Spielen Sie mit unserem MCP-Server auf dem Spielplatz von MCP.so oder auf Klavis AI herum.
Related MCP server: WebSearch
Installation
Ausführen mit npx
env FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcpManuelle Installation
npm install -g firecrawl-mcpLäuft auf Cursor
Cursor konfigurieren 🖥️ Hinweis: Erfordert Cursor-Version 0.45.6+. Die aktuellsten Konfigurationsanweisungen finden Sie in der offiziellen Cursor-Dokumentation zur Konfiguration von MCP-Servern: Cursor MCP Server Configuration Guide
So konfigurieren Sie Firecrawl MCP in Cursor v0.48.6
Cursoreinstellungen öffnen
Gehen Sie zu Funktionen > MCP-Server
Klicken Sie auf „+ Neuen globalen MCP-Server hinzufügen“.
Geben Sie den folgenden Code ein:
{ "mcpServers": { "firecrawl-mcp": { "command": "npx", "args": ["-y", "firecrawl-mcp"], "env": { "FIRECRAWL_API_KEY": "YOUR-API-KEY" } } } }
So konfigurieren Sie Firecrawl MCP in Cursor v0.45.6
Cursoreinstellungen öffnen
Gehen Sie zu Funktionen > MCP-Server
Klicken Sie auf „+ Neuen MCP-Server hinzufügen“
Geben Sie Folgendes ein:
Name: „firecrawl-mcp“ (oder Ihr bevorzugter Name)
Typ: „Befehl“
Befehl:
env FIRECRAWL_API_KEY=your-api-key npx -y firecrawl-mcp
Wenn Sie Windows verwenden und auf Probleme stoßen, versuchen Sie
cmd /c "set FIRECRAWL_API_KEY=your-api-key && npx -y firecrawl-mcp"
Ersetzen Sie your-api-key durch Ihren Firecrawl-API-Schlüssel. Falls Sie noch keinen haben, können Sie ein Konto erstellen und ihn unter https://www.firecrawl.dev/app/api-keys abrufen.
Aktualisieren Sie nach dem Hinzufügen die MCP-Serverliste, um die neuen Tools anzuzeigen. Der Composer Agent verwendet bei Bedarf automatisch Firecrawl MCP. Sie können es jedoch explizit anfordern, indem Sie Ihre Web-Scraping-Anforderungen beschreiben. Rufen Sie den Composer über Befehl+L (Mac) auf, wählen Sie „Agent“ neben der Schaltfläche „Senden“ und geben Sie Ihre Anfrage ein.
Laufen auf dem Windsurfbrett
Fügen Sie dies zu Ihrer ./codeium/windsurf/model_config.json hinzu:
{
"mcpServers": {
"mcp-server-firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "YOUR_API_KEY"
}
}
}
}Ausführen im lokalen SSE-Modus
So führen Sie den Server lokal mit Server-Sent Events (SSE) anstelle des standardmäßigen stdio-Transports aus:
env SSE_LOCAL=true FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcpVerwenden Sie die URL: http://localhost:3000/sse
Installation über Smithery (Legacy)
So installieren Sie Firecrawl für Claude Desktop automatisch über Smithery :
npx -y @smithery/cli install @mendableai/mcp-server-firecrawl --client claudeAusführung auf VS Code
Klicken Sie für die Ein-Klick-Installation auf eine der folgenden Installationsschaltflächen ...
Für die manuelle Installation fügen Sie den folgenden JSON-Block zu Ihrer Benutzereinstellungsdatei (JSON) in VS Code hinzu. Drücken Sie dazu Ctrl + Shift + P und geben Sie Preferences: Open User Settings (JSON) ein.
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "Firecrawl API Key",
"password": true
}
],
"servers": {
"firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "${input:apiKey}"
}
}
}
}
}Optional können Sie die Konfiguration einer Datei namens .vscode/mcp.json in Ihrem Arbeitsbereich hinzufügen. Dadurch können Sie die Konfiguration mit anderen teilen:
{
"inputs": [
{
"type": "promptString",
"id": "apiKey",
"description": "Firecrawl API Key",
"password": true
}
],
"servers": {
"firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "${input:apiKey}"
}
}
}
}Konfiguration
Umgebungsvariablen
Erforderlich für Cloud-API
FIRECRAWL_API_KEY: Ihr Firecrawl-API-SchlüsselErforderlich bei Verwendung der Cloud-API (Standard)
Optional bei Verwendung einer selbstgehosteten Instanz mit
FIRECRAWL_API_URL
FIRECRAWL_API_URL(Optional): Benutzerdefinierter API-Endpunkt für selbstgehostete InstanzenBeispiel:
https://firecrawl.your-domain.comWenn nicht angegeben, wird die Cloud-API verwendet (erfordert API-Schlüssel)
Optionale Konfiguration
Konfiguration wiederholen
FIRECRAWL_RETRY_MAX_ATTEMPTS: Maximale Anzahl an Wiederholungsversuchen (Standard: 3)FIRECRAWL_RETRY_INITIAL_DELAY: Anfängliche Verzögerung in Millisekunden vor dem ersten Wiederholungsversuch (Standard: 1000)FIRECRAWL_RETRY_MAX_DELAY: Maximale Verzögerung in Millisekunden zwischen Wiederholungsversuchen (Standard: 10000)FIRECRAWL_RETRY_BACKOFF_FACTOR: Exponentieller Backoff-Multiplikator (Standard: 2)
Überwachung der Kreditnutzung
FIRECRAWL_CREDIT_WARNING_THRESHOLD: Warnschwelle für die Kreditnutzung (Standard: 1000)FIRECRAWL_CREDIT_CRITICAL_THRESHOLD: Kritischer Schwellenwert für die Kreditnutzung (Standard: 100)
Konfigurationsbeispiele
Für die Verwendung der Cloud-API mit benutzerdefinierter Wiederholungs- und Kreditüberwachung:
# Required for cloud API
export FIRECRAWL_API_KEY=your-api-key
# Optional retry configuration
export FIRECRAWL_RETRY_MAX_ATTEMPTS=5 # Increase max retry attempts
export FIRECRAWL_RETRY_INITIAL_DELAY=2000 # Start with 2s delay
export FIRECRAWL_RETRY_MAX_DELAY=30000 # Maximum 30s delay
export FIRECRAWL_RETRY_BACKOFF_FACTOR=3 # More aggressive backoff
# Optional credit monitoring
export FIRECRAWL_CREDIT_WARNING_THRESHOLD=2000 # Warning at 2000 credits
export FIRECRAWL_CREDIT_CRITICAL_THRESHOLD=500 # Critical at 500 creditsFür selbst gehostete Instanzen:
# Required for self-hosted
export FIRECRAWL_API_URL=https://firecrawl.your-domain.com
# Optional authentication for self-hosted
export FIRECRAWL_API_KEY=your-api-key # If your instance requires auth
# Custom retry configuration
export FIRECRAWL_RETRY_MAX_ATTEMPTS=10
export FIRECRAWL_RETRY_INITIAL_DELAY=500 # Start with faster retriesVerwendung mit Claude Desktop
Fügen Sie dies zu Ihrer claude_desktop_config.json hinzu:
{
"mcpServers": {
"mcp-server-firecrawl": {
"command": "npx",
"args": ["-y", "firecrawl-mcp"],
"env": {
"FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE",
"FIRECRAWL_RETRY_MAX_ATTEMPTS": "5",
"FIRECRAWL_RETRY_INITIAL_DELAY": "2000",
"FIRECRAWL_RETRY_MAX_DELAY": "30000",
"FIRECRAWL_RETRY_BACKOFF_FACTOR": "3",
"FIRECRAWL_CREDIT_WARNING_THRESHOLD": "2000",
"FIRECRAWL_CREDIT_CRITICAL_THRESHOLD": "500"
}
}
}
}Systemkonfiguration
Der Server verfügt über mehrere konfigurierbare Parameter, die über Umgebungsvariablen festgelegt werden können. Hier sind die Standardwerte, falls nicht konfiguriert:
const CONFIG = {
retry: {
maxAttempts: 3, // Number of retry attempts for rate-limited requests
initialDelay: 1000, // Initial delay before first retry (in milliseconds)
maxDelay: 10000, // Maximum delay between retries (in milliseconds)
backoffFactor: 2, // Multiplier for exponential backoff
},
credit: {
warningThreshold: 1000, // Warn when credit usage reaches this level
criticalThreshold: 100, // Critical alert when credit usage reaches this level
},
};Diese Konfigurationen steuern:
Wiederholungsverhalten
Automatische Wiederholung fehlgeschlagener Anfragen aufgrund von Ratenbegrenzungen
Verwendet exponentielles Backoff, um eine Überlastung der API zu vermeiden
Beispiel: Mit den Standardeinstellungen werden Wiederholungsversuche unternommen bei:
Wiederholungsversuch: 1 Sekunde Verzögerung
Wiederholungsversuch: 2 Sekunden Verzögerung
Wiederholungsversuch: 4 Sekunden Verzögerung (begrenzt auf maxDelay)
Überwachung der Kreditnutzung
Verfolgt den API-Guthabenverbrauch für die Cloud-API-Nutzung
Gibt Warnungen bei festgelegten Schwellenwerten aus
Hilft, unerwartete Dienstunterbrechungen zu vermeiden
Beispiel: Mit Standardeinstellungen:
Warnung bei 1000 verbleibenden Credits
Kritischer Alarm bei 100 verbleibenden Credits
Ratenbegrenzung und Stapelverarbeitung
Der Server nutzt die integrierten Ratenbegrenzungs- und Stapelverarbeitungsfunktionen von Firecrawl:
Automatische Ratenbegrenzungsbehandlung mit exponentiellem Backoff
Effiziente Parallelverarbeitung für Batch-Operationen
Intelligente Anforderungswarteschlange und Drosselung
Automatische Wiederholungsversuche bei vorübergehenden Fehlern
Verfügbare Tools
1. Scrape-Tool ( firecrawl_scrape )
Scrapen Sie Inhalte von einer einzelnen URL mit erweiterten Optionen.
{
"name": "firecrawl_scrape",
"arguments": {
"url": "https://example.com",
"formats": ["markdown"],
"onlyMainContent": true,
"waitFor": 1000,
"timeout": 30000,
"mobile": false,
"includeTags": ["article", "main"],
"excludeTags": ["nav", "footer"],
"skipTlsVerification": false
}
}2. Batch-Scrape-Tool ( firecrawl_batch_scrape )
Scrapen Sie mehrere URLs effizient mit integrierter Ratenbegrenzung und paralleler Verarbeitung.
{
"name": "firecrawl_batch_scrape",
"arguments": {
"urls": ["https://example1.com", "https://example2.com"],
"options": {
"formats": ["markdown"],
"onlyMainContent": true
}
}
}Die Antwort enthält die Vorgangs-ID zur Statusprüfung:
{
"content": [
{
"type": "text",
"text": "Batch operation queued with ID: batch_1. Use firecrawl_check_batch_status to check progress."
}
],
"isError": false
}3. Überprüfen Sie den Batch-Status ( firecrawl_check_batch_status )
Überprüfen Sie den Status eines Batchvorgangs.
{
"name": "firecrawl_check_batch_status",
"arguments": {
"id": "batch_1"
}
}4. Suchwerkzeug ( firecrawl_search )
Durchsuchen Sie das Web und extrahieren Sie optional Inhalte aus Suchergebnissen.
{
"name": "firecrawl_search",
"arguments": {
"query": "your search query",
"limit": 5,
"lang": "en",
"country": "us",
"scrapeOptions": {
"formats": ["markdown"],
"onlyMainContent": true
}
}
}5. Crawl-Tool ( firecrawl_crawl )
Starten Sie einen asynchronen Crawl mit erweiterten Optionen.
{
"name": "firecrawl_crawl",
"arguments": {
"url": "https://example.com",
"maxDepth": 2,
"limit": 100,
"allowExternalLinks": false,
"deduplicateSimilarURLs": true
}
}6. Extraktionstool ( firecrawl_extract )
Extrahieren Sie strukturierte Informationen aus Webseiten mithilfe von LLM-Funktionen. Unterstützt sowohl Cloud-KI als auch selbst gehostete LLM-Extraktion.
{
"name": "firecrawl_extract",
"arguments": {
"urls": ["https://example.com/page1", "https://example.com/page2"],
"prompt": "Extract product information including name, price, and description",
"systemPrompt": "You are a helpful assistant that extracts product information",
"schema": {
"type": "object",
"properties": {
"name": { "type": "string" },
"price": { "type": "number" },
"description": { "type": "string" }
},
"required": ["name", "price"]
},
"allowExternalLinks": false,
"enableWebSearch": false,
"includeSubdomains": false
}
}Beispielantwort:
{
"content": [
{
"type": "text",
"text": {
"name": "Example Product",
"price": 99.99,
"description": "This is an example product description"
}
}
],
"isError": false
}Optionen des Extraktionstools:
urls: Array von URLs, aus denen Informationen extrahiert werden sollenprompt: Benutzerdefinierte Eingabeaufforderung für die LLM-ExtraktionsystemPrompt: Systemaufforderung zur Anleitung des LLMschema: JSON-Schema für die strukturierte DatenextraktionallowExternalLinks: Erlaubt die Extraktion aus externen LinksenableWebSearch: Aktivieren Sie die Websuche für zusätzlichen KontextincludeSubdomains: Subdomains in die Extraktion einschließen
Bei Verwendung einer selbstgehosteten Instanz erfolgt die Extraktion über Ihr konfiguriertes LLM. Für die Cloud-API wird der verwaltete LLM-Dienst von Firecrawl verwendet.
7. Tool für tiefgehende Recherche (firecrawl_deep_research)
Führen Sie mithilfe intelligenter Crawling-, Such- und LLM-Analysen eine Deep-Web-Recherche zu einer Abfrage durch.
{
"name": "firecrawl_deep_research",
"arguments": {
"query": "how does carbon capture technology work?",
"maxDepth": 3,
"timeLimit": 120,
"maxUrls": 50
}
}Argumente:
Abfrage (Zeichenfolge, erforderlich): Die zu untersuchende Forschungsfrage oder das zu untersuchende Thema.
maxDepth (Zahl, optional): Maximale rekursive Tiefe für Crawling/Suche (Standard: 3).
timeLimit (Zahl, optional): Zeitlimit in Sekunden für die Recherchesitzung (Standard: 120).
maxUrls (Zahl, optional): Maximale Anzahl der zu analysierenden URLs (Standard: 50).
Widerrufsfolgen:
Von einem LLM auf Grundlage von Forschung erstellte Endanalyse. (data.finalAnalysis)
Kann auch strukturierte Aktivitäten und Quellen umfassen, die im Forschungsprozess verwendet wurden.
8. Tool zum Generieren von LLMs.txt (firecrawl_generate_llmstxt)
Generieren Sie eine standardisierte llms.txt-Datei (und optional llms-full.txt) für eine bestimmte Domäne. Diese Datei definiert, wie große Sprachmodelle mit der Site interagieren sollen.
{
"name": "firecrawl_generate_llmstxt",
"arguments": {
"url": "https://example.com",
"maxUrls": 20,
"showFullText": true
}
}Argumente:
url (Zeichenfolge, erforderlich): Die Basis-URL der zu analysierenden Website.
maxUrls (Zahl, optional): Maximale Anzahl einzuschließender URLs (Standard: 10).
showFullText (boolesch, optional): Ob der Inhalt von llms-full.txt in die Antwort aufgenommen werden soll.
Widerrufsfolgen:
Generierter Inhalt der Datei llms.txt und optional der Datei llms-full.txt (data.llmstxt und/oder data.llmsfulltxt)
Protokollierungssystem
Der Server beinhaltet eine umfassende Protokollierung:
Betriebsstatus und -fortschritt
Leistungsmetriken
Überwachung der Kreditnutzung
Ratenbegrenzungsverfolgung
Fehlerbedingungen
Beispiele für Protokollmeldungen:
[INFO] Firecrawl MCP Server initialized successfully
[INFO] Starting scrape for URL: https://example.com
[INFO] Batch operation queued with ID: batch_1
[WARNING] Credit usage has reached warning threshold
[ERROR] Rate limit exceeded, retrying in 2s...Fehlerbehandlung
Der Server bietet eine robuste Fehlerbehandlung:
Automatische Wiederholungsversuche bei vorübergehenden Fehlern
Ratenbegrenzungsbehandlung mit Backoff
Detaillierte Fehlermeldungen
Warnungen zur Kreditnutzung
Netzwerkstabilität
Beispiel für eine Fehlerantwort:
{
"content": [
{
"type": "text",
"text": "Error: Rate limit exceeded. Retrying in 2 seconds..."
}
],
"isError": true
}Entwicklung
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm testBeitragen
Forken Sie das Repository
Erstellen Sie Ihren Feature-Zweig
Tests ausführen:
npm testSenden einer Pull-Anfrage
Dank an die Mitwirkenden
Danke an @vrknetha , @cawstudios für die erste Implementierung!
Danke an MCP.so und Klavis AI für das Hosting und @gstarwd , @xiangkaiz und @zihaolin96 für die Integration unseres Servers.
Lizenz
MIT-Lizenz – Einzelheiten finden Sie in der Datei „LICENSE“
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Appeared in Searches
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/firecrawl/firecrawl-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server