Appearance
Firecrawl Connector
The Firecrawl connector integrates Agentcy with the Firecrawl web scraping and extraction API. It provides 2 live tools for scraping web pages and extracting structured data using LLM-powered extraction.
Authentication
The connector authenticates using a Firecrawl API key from firecrawl.dev.
json
{
"name": "Firecrawl",
"source_type": "firecrawl",
"config": {
"api_key": "fc-..."
}
}| Variable | Required | Description |
|---|---|---|
api_key | Yes | Firecrawl API key |
Live Tools (2)
| Tool | Description | Arguments |
|---|---|---|
firecrawl_scrape_url | Scrape a web page and return clean markdown content | url, formats?, wait_for?, timeout? |
firecrawl_extract | Extract structured data from a URL using LLM-powered extraction | url, schema, prompt? |
Example: Agent Using Firecrawl Tools
User: "Scrape the pricing page of competitor.com"
Agent: I'll scrape the page content.
→ Calls firecrawl_scrape_url(url: "https://competitor.com/pricing")
→ Returns clean markdown content of the pricing page
→ Summarizes: "Competitor offers 3 tiers:
- Starter: $29/mo (5 users, 10GB)
- Pro: $99/mo (25 users, 100GB)
- Enterprise: Custom pricing"User: "Extract all product names and prices from this catalog page"
Agent: I'll extract structured data.
→ Calls firecrawl_extract(
url: "https://store.example.com/catalog",
schema: {"products": [{"name": "string", "price": "number", "in_stock": "boolean"}]},
prompt: "Extract all product listings with name, price, and availability"
)
→ Returns structured JSON with extracted productsETL Ingestion
This connector does not support ETL ingestion. All tools operate as live API calls to the Firecrawl service.
Configuration Reference
json
{
"name": "Firecrawl",
"source_type": "firecrawl",
"config": {
"api_key": "fc-..."
}
}| Field | Type | Default | Description |
|---|---|---|---|
api_key | string | required | Firecrawl API key |
Troubleshooting
| Error | Cause | Fix |
|---|---|---|
401 Unauthorized | Invalid API key | Verify your Firecrawl API key |
402 Payment Required | Credits exhausted | Top up credits on firecrawl.dev |
Scrape failed | Target page blocks scraping or uses heavy JavaScript | Try adding wait_for parameter to wait for dynamic content |
Timeout | Page took too long to load | Increase the timeout parameter |
Extraction failed | LLM could not match the schema to page content | Simplify the schema or add a more specific prompt |
URL unreachable | Target URL is invalid or returns an error | Verify the URL is accessible |