Skip to content
Report library
Purpose / Other

Firecrawl Parse Skill Security Audit

What the author says it does (original text)

|

Independent security check

Do not install or run it yet

Files checked
1
Risks found
2
Could it run dangerous commands?Looks for programs run straight after downloading, remote control of your computer, and hidden commands.No risks found
Could it expose your files or keys?Looks for uploads of files containing passwords or keys, and keys written directly in the code.Risks found: 1
High risk

Local document contents may be uploaded to Firecrawl's external service

Source references: 5
What we found

The instructions run `firecrawl parse` on local files. The stated upload-size limit, per-page credits, and authenticated balance check indicate an upload-backed account service rather than purely local parsing. Because the trigger covers any file path, contracts, financial sheets, or internal documents could enter this workflow.

Why this matters

Document text, tables, and metadata may leave the device for third-party processing and consume account credits. Files containing personal data, trade secrets, or credentials could breach confidentiality or data-residency requirements.

The skill explicitly triggers for any local file path and directs Firecrawl to parse that file. Its 50 MB “upload” limit, per-page credits, and authenticated balance check together support processing by an external, metered account service. Contracts, spreadsheets, or internal documents could therefore leave the device; the instructions do not require upload consent or exclude sensitive files. Before use, the user can confirm data destination, retention, and terms, and prohibit sensitive inputs.

SKILL.md:4In the instructionsOpen original file
description: |  Convert a local file (PDF, DOCX, XLSX, HTML, …) to markdown, or answer questions about its content. Use whenever the input is a file path, not a URL.allowed-tools:
Show 4 other places
SKILL.md:25In the instructionsOpen original file
# AI summaryfirecrawl parse ./paper.pdf -S -o .firecrawl/paper-summary.md# Ask a question about the docfirecrawl parse ./paper.pdf -Q "What are the main conclusions?" \  -o .firecrawl/paper-qa.md```
SKILL.md:41In the instructionsOpen original file
- Quote paths with spaces: `firecrawl parse "./My Doc.pdf" -o .firecrawl/mydoc.md`.- Max upload size: **50 MB** per file.- Credits: ~1 per PDF page; HTML is 1 flat.- Check `.firecrawl/` before re-parsing the same file.- To check your credit balance (recommended for batch processing and similar workflows), use `firecrawl credit-usage` (requires authentication).
SKILL.md:22In the instructionsOpen original file
# File → markdownfirecrawl parse ./paper.pdf -o .firecrawl/paper.md
SKILL.md:44In the instructionsOpen original file
- Check `.firecrawl/` before re-parsing the same file.- To check your credit balance (recommended for batch processing and similar workflows), use `firecrawl credit-usage` (requires authentication).
Could it delete files or keep running?Looks for broad file deletion, disk overwrites, and programs set to start automatically.No risks found
Could it bypass safety checks?Looks for skipped website security checks, excessive file access, or actions that skip your approval.Risks found: 1
Low risk

The install command does not pin a dependency version

Source references: 2
What we found

The installation command does not specify dependency versions. The same command may download different code later, so what you install can differ from what was checked.

Why this matters

A later install may download different code even though the command and this report have not changed.

What this evidence establishes

Line 7 permits unversioned `npx firecrawl-cli` calls. If the agent uses that entry point and the package is unavailable locally, npx may fetch the version current at that time, creating version-drift or supply-chain risk. However, the actual examples invoke only `firecrawl`; no instruction requires installing or running the npx package. The user can ask for a pinned version and restrict npx use.

This assessment concerns the code and conditions shown, not proof that harm has occurred.
SKILL.md:7In the instructionsOpen original file
  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
Show 1 other places
SKILL.md:22In the instructionsOpen original file
# File → markdownfirecrawl parse ./paper.pdf -o .firecrawl/paper.md
Could it mislead the AI or hide text?Checks the skill instructions for requests to ignore you, influence the report, or hide text in invisible characters.No risks found
Could it change links or payment recipients without asking?Looks for forced referral or payment changes combined with instructions to hide the change.No risks found

Inside this skill

3 instruction sections

This Skill uses the Firecrawl CLI to convert local PDFs, Office documents, or HTML into Markdown, and can also summarize or answer questions about a document.

View source
SKILL.md:4In the instructionsOpen original file
description: |  Convert a local file (PDF, DOCX, XLSX, HTML, …) to markdown, or answer questions about its content. Use whenever the input is a file path, not a URL.allowed-tools:
SKILL.md:21In the instructionsOpen original file
# File → markdownfirecrawl parse ./paper.pdf -o .firecrawl/paper.md# AI summaryfirecrawl parse ./paper.pdf -S -o .firecrawl/paper-summary.md# Ask a question about the docfirecrawl parse ./paper.pdf -Q "What are the main conclusions?" \  -o .firecrawl/paper-qa.md```

Results are written into a project-local `.firecrawl/` directory. The instructions also say to add that directory to `.gitignore`, without prescribing a particular command.

View source
SKILL.md:16In the instructionsOpen original file
Always save to `.firecrawl/` with `-o` — parsed docs can be hundreds of KB and blow up context if streamed to stdout. Add `.firecrawl/` to `.gitignore`.
SKILL.md:19In the instructionsOpen original file
```bashmkdir -p .firecrawl# File → markdownfirecrawl parse ./paper.pdf -o .firecrawl/paper.md
Start here · InstructionsSKILL.md
firecrawl-parse
Lines connect the instruction file to its sections, not an observed execution order. Select a section to read the source.
Files and check records1 files

Coverage and gaps

Content covered in each file

These are the source ranges included in this check, not a guarantee that every issue has been resolved.

  • SKILL.mdFull text included

This report is for the version above. We read the available code and instructions without running the skill or checking extra packages it installs. This is not a promise of safety: a different version or setup may behave differently.

  • SKILL.mdInstructions

Operations mentioned in code and instructions

Run commands
SKILL.md:6In the instructionsOpen original file
allowed-tools:  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)
SKILL.md:7In the instructionsOpen original file
  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
SKILL.md:18In the instructionsOpen original file
```bashmkdir -p .firecrawl
Install extra software packages
SKILL.md:7In the instructionsOpen original file
  - Bash(firecrawl *)  - Bash(npx firecrawl-cli *)---
Connect to websites
SKILL.md:49In the instructionsOpen original file
- [firecrawl-scrape](../firecrawl-scrape/SKILL.md) — same idea for URLs- [firecrawl-build-scrape](https://github.com/firecrawl/skills/tree/main/skills/build/firecrawl-build-scrape) — building document extraction into an app instead of running it here
Lines read
50
File checksum (to compare versions)
56eb901d69c6a2a8b267d2042637a67a7fdd80fc1ffe6413d62e3d0a3c77de28