Fix all PR #82 issues: Update to Firecrawl v3 API #87
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix all PR #82 issues: Update to Firecrawl v3 API
Summary
This PR comprehensively addresses all issues identified in PR #82 by updating the codebase from Firecrawl v2 to v3 API. This is a major breaking change that involves updating method signatures, response handling, and tool implementations.
Key Changes:
@mendable/firecrawl-js ^3.1.0scrapeUrl→scrape,asyncCrawlUrl→crawl, etc.)firecrawl_deep_researchtool implementation--passWithNoTestsflagReview & Testing Checklist for Human
{ type: "screenshot", fullPage, quality, viewport }firecrawl_deep_researchtool work as expectedRecommended Test Plan:
Diagram
%%{ init : { "theme" : "default" }}%% graph TD Package["package.json<br/>Updated deps"]:::major-edit MainCode["src/index.ts<br/>Core server logic"]:::major-edit Tests["src/index.test.ts<br/>Unit tests"]:::major-edit JestSetup["jest.setup.ts<br/>Test configuration"]:::major-edit Package --> MainCode MainCode --> |"API calls"| FirecrawlV3["Firecrawl v3 API<br/>External service"]:::context MainCode --> |"Tool implementations"| Tools["MCP Tools<br/>(scrape, crawl, search, etc.)"]:::context Tests --> MainCode JestSetup --> Tests subgraph Legend L1["Major Edit"]:::major-edit L2["Minor Edit"]:::minor-edit L3["Context/No Edit"]:::context end classDef major-edit fill:#90EE90 classDef minor-edit fill:#87CEEB classDef context fill:#FFFFFFNotes
success/errorfield handling that was used in v2, as v3 API throws exceptions instead. This is a fundamental change in error handling approach.anytyping in several places to handle inconsistent v3 response structures - this trades type safety for compatibility.Session Info: