'Install and configure Firecrawl SDK authentication for web scraping.
Scanned 9/2/2026
Install to Claude Code
npx -y skills add jeremylongshore/tons-of-skills-marketplace --skill firecrawl-install-auth --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Firecrawl Install Auth?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/jeremylongshore-firecrawl-install-auth-tons-of-skills-marketplace)More formats (shields.io, HTML) on the badges page.
---
name: firecrawl-install-auth
description: 'Install and configure Firecrawl SDK authentication for web scraping.
Use when setting up a new Firecrawl integration, configuring API keys,
or initializing Firecrawl in your project.
Trigger with phrases like "install firecrawl", "setup firecrawl",
"firecrawl auth", "configure firecrawl API key".
'
allowed-tools: Read, Write, Edit, Bash(npm:*), Bash(pip:*), Grep
version: 1.11.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags:
- saas
- firecrawl
- api
- authentication
compatibility: Designed for Claude Code
---
# Firecrawl Install & Auth
## Overview
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.
## Prerequisites
- Node.js 18+ or Python 3.10+
- Package manager (npm, pnpm, yarn, or pip)
- Firecrawl API key from [firecrawl.dev/app](https://firecrawl.dev/app) (free tier available)
## Instructions
### Step 1: Install the SDK
```bash
set -euo pipefail
# Node.js (official npm package)
npm install @mendable/firecrawl-js
# Python
pip install firecrawl-py
```
### Step 2: Configure Your API Key
```bash
# 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](https://firecrawl.dev/app).
### Step 3: Verify Connection — TypeScript
```typescript
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);
}
```
### Step 4: Verify Connection — Python
```python
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")
```
### Step 5: Self-Hosted Setup (Optional)
```typescript
// 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
});
```
## Output
- `@mendable/firecrawl-js` installed in `node_modules/`
- `FIRECRAWL_API_KEY` environment variable configured
- Successful scrape confirming API connectivity
## Error Handling
| 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 |
## Examples
### TypeScript with dotenv
```typescript
import "dotenv/config";
import FirecrawlApp from "@mendable/firecrawl-js";
const firecrawl = new FirecrawlApp({
apiKey: process.env.FIRECRAWL_API_KEY!,
});
```
### Python with Environment Variable
```python
import os
from firecrawl import FirecrawlApp
firecrawl = FirecrawlApp(api_key=os.environ["FIRECRAWL_API_KEY"])
```
### Verify .gitignore Protects Secrets
```bash
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
```
## Resources
- [Firecrawl Quickstart](https://docs.firecrawl.dev/introduction)
- [Firecrawl Dashboard](https://firecrawl.dev/app)
- [Node SDK on npm](https://www.npmjs.com/package/@mendable/firecrawl-js)
- [Python SDK on PyPI](https://pypi.org/project/firecrawl-py/)
## Next Steps
After successful auth, proceed to `firecrawl-hello-world` for your first real scrape.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!