You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Constraint: README should document current registered MCP tools after stale batch cleanup.
Rejected: Leaving parse, interact, research, and monitor delete undocumented | agents miss supported capabilities.
Confidence: high
Scope-risk: narrow
Directive: Keep README inventory synchronized with registered FastMCP tools after cleanup merges.
Tested: npm run build; GitHub build check passed after rebase.
Not-tested: Full manual MCP session not run.
| research | Paper and GitHub repository research | research results and repo matches |
357
361
358
362
### Format Selection Guide
359
363
@@ -672,7 +676,33 @@ Check the status and results of an existing crawl job by ID.
672
676
673
677
- Response includes the status of the crawl job:
674
678
675
-
### 6. Extract Tool (`firecrawl_extract`)
679
+
### 6. Parse Tool (`firecrawl_parse`)
680
+
681
+
Parse local files or hosted upload references with Firecrawl's `/v2/parse` endpoint.
682
+
683
+
**Best for:** PDFs, Word documents, spreadsheets, HTML files, and other documents that need markdown or structured JSON output. Hosted MCP supports a two-step upload-ref flow; local direct file reads require a self-hosted `FIRECRAWL_API_URL`.
684
+
685
+
**Not recommended for:** Remote URLs (use scrape), multiple files in one call (call parse once per file), or browser-only actions such as screenshots and clicks.
686
+
687
+
**Hosted MCP flow:** Hosted MCP cannot read the caller's filesystem directly. Call `firecrawl_parse` with `filePath` to receive a short-lived upload command and `nextToolCall`, upload the file locally, then call `firecrawl_parse` again with the returned `uploadRef`. Minting the hosted upload URL requires Firecrawl auth or keyless eligibility. In local `npx firecrawl-mcp` mode, direct file parsing currently requires `FIRECRAWL_API_URL` pointing to a self-hosted Firecrawl API; a plain cloud API-key-only local server cannot read and upload files through this tool.
688
+
689
+
**Usage Example:**
690
+
691
+
```json
692
+
{
693
+
"name": "firecrawl_parse",
694
+
"arguments": {
695
+
"filePath": "/absolute/path/to/document.pdf",
696
+
"formats": ["markdown"],
697
+
"parsers": ["pdf"],
698
+
"zeroDataRetention": true
699
+
}
700
+
}
701
+
```
702
+
703
+
**Returns:** Parsed document content or hosted upload instructions with a `nextToolCall`.
704
+
705
+
### 7. Extract Tool (`firecrawl_extract`)
676
706
677
707
Extract structured information from web pages using LLM capabilities. Supports both cloud AI and self-hosted LLM extraction.
678
708
@@ -745,7 +775,7 @@ When using a self-hosted instance, the extraction will use your configured LLM.
745
775
}
746
776
```
747
777
748
-
### 7. Agent Tool (`firecrawl_agent`)
778
+
### 8. Agent Tool (`firecrawl_agent`)
749
779
750
780
Autonomous web research agent. This is a separate AI agent layer that independently browses the internet, searches for information, navigates through pages, and extracts structured data based on your query.
751
781
@@ -826,7 +856,7 @@ Then poll with `firecrawl_agent_status` using the returned job ID.
826
856
827
857
- Job ID for status checking. Use `firecrawl_agent_status` to poll for results.
828
858
829
-
### 8. Check Agent Status (`firecrawl_agent_status`)
859
+
### 9. Check Agent Status (`firecrawl_agent_status`)
830
860
831
861
Check the status of an agent job and retrieve results when complete. Use this to poll for results after starting an agent.
832
862
@@ -847,7 +877,60 @@ Check the status of an agent job and retrieve results when complete. Use this to
847
877
-`completed`: Research finished - response includes the extracted data
848
878
-`failed`: An error occurred
849
879
850
-
### 9. Monitor Tools (`firecrawl_monitor_*`)
880
+
### 10. Interact Tool (`firecrawl_interact`)
881
+
882
+
Interact with a fresh URL or with a page that was already opened by `firecrawl_scrape`.
883
+
884
+
**Best for:** Clicking, typing, navigating, and extracting state from dynamic pages without restoring the deprecated browser tools.
885
+
886
+
**Usage options:**
887
+
888
+
- Pass `url` to scrape and open a page for interaction in one MCP call.
889
+
- Pass `scrapeId` to continue interacting with an existing scraped page.
890
+
- Pass exactly one of `url` or `scrapeId`, plus either `prompt` or `code`.
891
+
892
+
**Usage Example:**
893
+
894
+
```json
895
+
{
896
+
"name": "firecrawl_interact",
897
+
"arguments": {
898
+
"url": "https://example.com",
899
+
"prompt": "Click the pricing link and summarize the visible plans"
900
+
}
901
+
}
902
+
```
903
+
904
+
**Returns:** Interaction result and, for URL mode, the derived `scrapeId` for follow-up or cleanup.
**Best for:** Literature review, paper lookup, and repository discovery workflows where the agent needs a focused research surface instead of general web scraping.
932
+
933
+
### 13. Monitor Tools (`firecrawl_monitor_*`)
851
934
852
935
Create and manage recurring page monitors. Monitors run scheduled scrapes or crawls, diff each result against the last retained snapshot, and can notify by webhook or email.
853
936
@@ -912,6 +995,7 @@ Pass `body` when you need crawl targets, JSON change tracking, custom retention,
912
995
-`firecrawl_monitor_get`: get one monitor.
913
996
-`firecrawl_monitor_update`: update fields including `goal`, `judgeEnabled`, `webhook`, and `notification`.
914
997
-`firecrawl_monitor_run`: trigger a check now.
998
+
-`firecrawl_monitor_delete`: delete a monitor (destructive; only call when the user intends to remove it).
915
999
-`firecrawl_monitor_checks`: list checks, optionally filtered by status.
916
1000
-`firecrawl_monitor_check`: get page-level results, including `diff`, `snapshot`, `judgment.meaningful`, and `judgment.meaningfulChanges`.
0 commit comments