firecrawl-mcp-server icon indicating copy to clipboard operation
firecrawl-mcp-server copied to clipboard

MCP Integration Issue: "Cannot read properties of undefined (reading 'status')" Error When Calling firecrawl-mcp Tool from Cursor

Open liuwenzhoa opened this issue 10 months ago β€’ 6 comments

MCP Integration Issue: "Cannot read properties of undefined (reading 'status')" Error When Calling firecrawl-mcp Tool from Cursor

Description Environment Information Operating System: Windows Local firecrawl version: v1.6.0 firecrawl-mcp version: 1.5.0 Cursor version: 0.47.5

Problem Description I have successfully deployed firecrawl service locally using Docker Compose, and the API works normally when tested with curl. However, when I try to call firecrawl tools through Cursor's MCP service, I encounter a "Cannot read properties of undefined (reading 'status')" error.

Steps to Reproduce 1.Deploy firecrawl locally using Docker Compose 2.Configure MCP service in Cursor

{
  "mcpServers":{
    "firecrawl-mcp": {
      "command": "C:\\Windows\\System32\\cmd.exe",
      "args": [
        "/c",
        "set FIRECRAWL_API_URL=http://localhost:3002 && npx -y firecrawl-mcp" 
      ],
      "enabled": true
    }
  }
}

3.The MCP service successfully starts in the Cursor interface, showing the list of tools

Image

4.Try to use the firecrawl_scrape tool to scrape web content

Image

{
  "url": "https://example.com",
  "formats": [
    "markdown"
  ],
  "onlyMainContent": true
}

5.Receive error: "Cannot read properties of undefined (reading 'status')"

Verification Test Using curl to directly call the local API works perfectly:

curl -X POST http://localhost:3002/v1/scrape \
     -H 'Content-Type: application/json' \
     -d '{"url":"https://example.com","formats":["markdown"],"onlyMainContent": true}'

Returns the correct result: {"success":true,"data":{"markdown":"Example Domain\n==============\n\nThis domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.\n\n[More information...](https://www.iana.org/domains/example)","metadata":{"viewport":"width=device-width, initial-scale=1","title":"Example Domain","scrapeId":"1402b3f9-d808-44f9-9db0-97b368d34c06","sourceURL":"https://example.com","url":"https://example.com","statusCode":200}}}

Attempted Solutions Updated the API path in the MCP configuration (tried both http://localhost:3002 and http://localhost:3002/v1)

Suspected Cause The API response format expected by the MCP client (firecrawl-mcp 1.5.0) may not match what is provided by the local firecrawl API (v1.6.0), or there might be an issue with the environment variable setting method in the Windows environment. Please provide guidance on how to resolve this compatibility issue, especially when using a locally deployed firecrawl service.

liuwenzhoa avatar Mar 15 '25 06:03 liuwenzhoa

i have the same problem

candy-Tong avatar Mar 23 '25 10:03 candy-Tong

Same issue here when using the MCP server in VS Code Insiders.

Call made by the agent (Claude 3.7 Sonnet):

{
  "url": "https://www.machineto.com/c000056b-mini-cnc-lathe-10127795",
  "formats": [
    "markdown"
  ],
  "onlyMainContent": true
}

Cannot read properties of undefined (reading 'status')

MCP server output:

2025-04-06 15:02:44.891 [info] Discovered 10 tools
2025-04-06 15:04:12.422 [warning] [server stderr] [info] [2025-04-06T21:04:12.407Z] Received request for tool: firecrawl_scrape
2025-04-06 15:04:12.422 [warning] [server stderr] [info] Starting scrape for URL: https://www.machineto.com/c000056b-mini-cnc-lathe-10127795 with options: {"formats":["markdown"],"onlyMainContent":true}
2025-04-06 15:04:12.423 [warning] [server stderr] [info] Request completed in 3ms

anthonyarguedas avatar Apr 06 '25 21:04 anthonyarguedas

I've worked it out. Just pay attention to these two details:

  • The .env file must be in the /firecrawl/apps/api directory
  • At least the following environment variables must be set:
NUM_WORKERS_PER_QUEUE=8
PORT=3002
HOST=0.0.0.0
REDIS_URL=redis://redis:6379
REDIS_RATE_LIMIT_URL=redis://redis:6379
USE_DB_AUTHENTICATION=false

anthonyarguedas avatar Apr 08 '25 05:04 anthonyarguedas

TL;DR

Using this config instead might work. Notice there is no space between 3002 and '&'

{
  "mcpServers":{
    "firecrawl-mcp": {
      "command": "C:\\Windows\\System32\\cmd.exe",
      "args": [
        "/c",
        "set FIRECRAWL_API_URL=http://localhost:3002&& npx -y firecrawl-mcp" 
      ],
      "enabled": true
    }
  }
}

Root cause

After using debugger, finally find out the root cause. If your mcp.json looks like below, you might encounter the "Cannot read properties of undefined (reading 'status')" and "Invalid URL" error.

{
  "mcpServers":{
    "firecrawl-mcp": {
      "command": "C:\\Windows\\System32\\cmd.exe",
      "args": [
        "/c",    // some might use /k as well
        "set FIRECRAWL_API_URL=http://localhost:3002 && npx -y firecrawl-mcp" 
      ],
      "enabled": true
    }
  }
}

I mark a breakpoint at 'firecrawl_search' to test it. (whatever tools you use will encounter the same problem using the config above)

Image

The client is the FirecrawlApp instance carry an url with trailing space.

Image

The url in final HTTP config is malformed.

Image

This is the cmd syntax that can be easily overlooked and it has nothing to do with API compatibility

popuku-dog avatar Apr 17 '25 15:04 popuku-dog

Had the same issue, but with using cloud-based firecrawl. Turned out api.firecrawl.dev was inaccessible from my VPN connection.

So, posting this for anyone how came here from search results:

If you see "Cannot read properties of undefined (reading 'status')", first try checking that API server is up and accessible, like so: curl -i https://api.firecrawl.dev (cloud) or curl -i https://your-host:your-port (self-hosted) (should return empty 200)

klkvsk avatar May 05 '25 16:05 klkvsk

Π­Ρ‚ΠΎ тСстовый ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ для получСния ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠΉΡ‚Π΅.

anivartools avatar May 06 '25 17:05 anivartools