From firecrawl-pack
Installs Firecrawl SDK and configures API key for web scraping in Node.js or Python projects. Verifies connection with code examples.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin firecrawl-packThis skill is limited to using the following tools:
Install the Firecrawl SDK and configure API key authentication. Firecrawl turns any website into LLM-ready markdown or structured data. The SDK is published as `@mendable/firecrawl-js` on npm and `firecrawl-py` on PyPI.
Provides Firecrawl SDK patterns for TypeScript and Python: singleton clients, typed scrape wrappers, retry backoff, response validation, reusable scraping services.
Installs Apify SDK, CLI, apify-client, and Crawlee packages and configures API token authentication via env vars or CLI for Node.js scraping projects.
Scrapes URLs to markdown/HTML/JSON, crawls websites with BFS, searches web, maps URLs, and extracts structured data via Firecrawl MCP for AI agents.
Share bugs, ideas, or general feedback.
Install the Firecrawl SDK and configure API key authentication. Firecrawl turns any website into LLM-ready markdown or structured data. The SDK is published as @mendable/firecrawl-js on npm and firecrawl-py on PyPI.
set -euo pipefail
# Node.js (official npm package)
npm install @mendable/firecrawl-js
# Python
pip install firecrawl-py
# Set the environment variable (SDK reads FIRECRAWL_API_KEY automatically)
export FIRECRAWL_API_KEY="fc-YOUR_API_KEY"
# Or add to .env file (use dotenv in your app)
echo 'FIRECRAWL_API_KEY=fc-YOUR_API_KEY' >> .env
All Firecrawl API keys start with fc-. Get yours at firecrawl.dev/app.
import FirecrawlApp from "@mendable/firecrawl-js";
const firecrawl = new FirecrawlApp({
apiKey: process.env.FIRECRAWL_API_KEY!,
});
// Quick connection test: scrape a simple page
const result = await firecrawl.scrapeUrl("https://example.com", {
formats: ["markdown"],
});
if (result.success) {
console.log("Firecrawl connected. Page title:", result.metadata?.title);
console.log("Content length:", result.markdown?.length, "chars");
} else {
console.error("Firecrawl error:", result.error);
}
from firecrawl import FirecrawlApp
firecrawl = FirecrawlApp(api_key="fc-YOUR_API_KEY")
# Quick connection test
result = firecrawl.scrape_url("https://example.com", params={
"formats": ["markdown"]
})
print(f"Title: {result.get('metadata', {}).get('title')}")
print(f"Content: {len(result.get('markdown', ''))} chars")
// Point to your own Firecrawl instance instead of api.firecrawl.dev
const firecrawl = new FirecrawlApp({
apiKey: "any-key", // required even for self-hosted
apiUrl: "http://localhost:3002", // self-hosted Firecrawl URL
});
@mendable/firecrawl-js installed in node_modules/FIRECRAWL_API_KEY environment variable configured| Error | Cause | Solution |
|---|---|---|
401 Unauthorized | Invalid or missing API key | Verify key starts with fc- and is set in env |
402 Payment Required | Credits exhausted | Check balance at firecrawl.dev/app |
MODULE_NOT_FOUND | Wrong package name | Use @mendable/firecrawl-js not firecrawl-js |
ECONNREFUSED | Wrong API URL for self-hosted | Verify apiUrl and Docker container is running |
429 Too Many Requests | Rate limit exceeded | Wait for Retry-After header duration |
import "dotenv/config";
import FirecrawlApp from "@mendable/firecrawl-js";
const firecrawl = new FirecrawlApp({
apiKey: process.env.FIRECRAWL_API_KEY!,
});
import os
from firecrawl import FirecrawlApp
firecrawl = FirecrawlApp(api_key=os.environ["FIRECRAWL_API_KEY"])
set -euo pipefail
# Ensure .env files are gitignored
grep -q "^\.env" .gitignore 2>/dev/null || echo -e "\n.env\n.env.local\n.env.*.local" >> .gitignore
After successful auth, proceed to firecrawl-hello-world for your first real scrape.