CAUTION version 1.0.0 · audited 2026-09-17
This package provides command-line Python scripts for Firecrawl web search, single-page scraping, and site crawling. It reads a Firecrawl API key from the environment and sends requests only to api.firecrawl.dev. The returned content is printed to the terminal; the scripts do not write files or run other commands. The publisher discloses that search queries and target URLs are shared with Firecrawl and that the API key must be protected. No hidden network destinations, persistence, payment redirection, or rule-overriding instructions were found.
| Declared purpose | Web search and scraping via Firecrawl API, including searching the web, scraping websites, crawling sites, and extracting structured data. Requires FIRECRAWL_API_KEY environment variable. |
| Observed behavior | Three Python scripts use the standard library urllib.request to send POST requests to Firecrawl API endpoints for search, scrape, and crawl. Each script reads FIRECRAWL_API_KEY from the environment and sends it as a Bearer token to api.firecrawl.dev. The scripts print Markdown, JSON, or plain text results to stdout. The crawl script can optionally poll job status with --wait. No file writes, persistence, or process execution were observed. |
| Verdict, rules only | CAUTION · reads credential-like environment variables: FIRECRAWL_API_KEY |
| Verdict, AI | SAFE |
| Final verdict | CAUTION (never better than either pass) |
| capability | vs purpose | detail |
|---|---|---|
| network | needed | Makes HTTPS requests to https://api.firecrawl.dev/v1/search, /v1/scrape, and /v1/crawl using urllib.request (scripts/search.py:18, scripts/scrape.py:20, scripts/crawl.py:19). |
| credentials | needed | Reads FIRECRAWL_API_KEY from environment variables and sends it as a Bearer token to api.firecrawl.dev (scripts/crawl.py:14 and 39; scripts/scrape.py:13 and 32; scripts/search.py:13 and 31). |
| shell | needed | SKILL.md gives bash commands for exporting the API key and invoking the helper commands (SKILL.md:13-21). The package scripts are Python programs run from a shell. |
| severity | finding |
|---|---|
| info | Declared purpose matches observed behavior The skill description states it uses the Firecrawl API for web search, scraping, and crawling, which matches what the Python scripts do. SKILL.md:3 description: Web search and scraping via Firecrawl API. Use when you need to search the web, scrape websites (including JS-heavy pages), crawl entire sites, or |
| info | API key setup instruction The skill instructs setting FIRECRAWL_API_KEY in the shell environment. The scripts read this variable and require it to run. SKILL.md:14 export FIRECRAWL_API_KEY=fc-xxxxxxxxxx |
| low | Reads sensitive Firecrawl API key The crawl script reads FIRECRAWL_API_KEY from environment variables. The same pattern appears in scripts/scrape.py line 13 and scripts/search.py line 13. scripts/crawl.py:14 api_key = os.environ.get("FIRECRAWL_API_KEY") |
| info | Network call to Firecrawl crawl endpoint The script sends crawl requests to the Firecrawl API endpoint declared in the documentation. scripts/crawl.py:19 req_url = "https://api.firecrawl.dev/v1/crawl" |
| low | API key sent as Bearer token The Firecrawl API key is placed in the Authorization header and sent to api.firecrawl.dev. This is required for the declared API use, but the key is sensitive. scripts/crawl.py:39 "Authorization": f"Bearer {api_key}", |
| info | Network call to Firecrawl search endpoint The search script sends search queries to the Firecrawl search API endpoint. scripts/search.py:18 url = "https://api.firecrawl.dev/v1/search" |
| info | Network call to Firecrawl scrape endpoint The scrape script sends target URLs to the Firecrawl scrape API endpoint. scripts/scrape.py:20 req_url = "https://api.firecrawl.dev/v1/scrape" |
| info | Publisher discloses data sharing The skill card explicitly warns that queries and target URLs are sent to Firecrawl. The mitigation on line 26 advises users to avoid sending secret-bearing or internal links. skill-card.md:24 Risk: The skill sends search queries and target URLs to Firecrawl as an external web search and scraping service. |
| info | Publisher discloses API key risk The publisher warns that the API key is sensitive and should be kept out of source control and rotated if exposed. skill-card.md:28 Risk: The Firecrawl API key is required for operation and could be exposed if handled carelessly. |
0 AI finding(s) were dropped because their file, line or quote did not match the package.
| domain | service rating | where |
|---|---|---|
| api.firecrawl.dev | not in the service index | references/api.md:14 |
| clawhub.ai | not in the service index | skill-card.md:9 |
| example.com | not in the service index | SKILL.md:26 |
| firecrawl.dev | not in the service index | references/api.md:85 |
| Binaries invoked | bash, python3 |
| Environment variables read | FIRECRAWL_API_KEY |
| Hard-coded wallets | none |
| Pipes a download to a shell | 0 |
| eval / exec / subprocess | 0 |
| base64 blobs | 0 |
| File writes | 0 |
| Persistence | 0 |
| file | lines | sha256 |
|---|---|---|
SKILL.md | 42 | 4b09a36a0fd89571… |
_meta.json | 6 | b3f930ff8e8c9880… |
references/api.md | 85 | 559cdd24c85a24fe… |
scripts/crawl.py | 117 | 4587259893fd79f9… |
scripts/scrape.py | 89 | 6150ea7de1b465f6… |
scripts/search.py | 77 | 8c57169e252f806d… |
skill-card.md | 54 | 57fe4321bbcb12cc… |
For agents
JSON: https://agenteconomy.report/k/firecrawl-search.audit.json · badge: https://agenteconomy.report/k/firecrawl-search.audited.svg ·
skill rating: /k/firecrawl-search · commission an audit of any skill: US$ 29 per version.
The complete published package of this exact version was downloaded from the registry and read statically; nothing was executed. A deterministic pass extracts network destinations, binaries, environment variables, writes, install commands, obfuscation markers, subprocesses and wallets, each with file and line. An AI then reads the whole package with those facts and writes the summary, the capabilities and the findings under a strict schema; every finding it produces must cite a file, a line and the exact text, or it is dropped. The final verdict is the worst of the two passes. The audit does not change the skill's trust tier (policy); the author may respond through the dispute channel and the response is published here. Commissioned by: the Agent Economy Report (free program: the 150 most downloaded skills, September 2026).