Run Firecrawl MCP locally when a client needs to launch a local process, when you need a local HTTP transport, or when the MCP server must connect to a self-hosted Firecrawl API. For the managed service, start with Get Started.
Prerequisites#
- Node.js 22 or newer
- npm and
npx, included with Node.js - A Firecrawl API key for the cloud API, or a self-hosted Firecrawl API URL
Confirm the installed Node.js version:
Start the server#
Use stdio when the MCP client launches Firecrawl as a local process:
Configure the client to run npx -y firecrawl-mcp@3.23.7 and provide FIRECRAWL_API_KEY through the client's protected environment or secret mechanism.
Use HTTP when a client such as n8n connects to an already-running server:
Connect the client to:
Confirm the server is ready:
The health check returns ok. The local route is /mcp; /v2/mcp belongs to the hosted Firecrawl service.
Configure the Firecrawl API#
| Environment variable | Purpose |
|---|---|
FIRECRAWL_API_KEY | Authenticates to the Firecrawl cloud API. It is optional only when a self-hosted API does not require authentication. |
FIRECRAWL_API_URL | Sends requests to a self-hosted Firecrawl API instead of the cloud API. |
HTTP_STREAMABLE_SERVER | Set to true to start the local Streamable HTTP transport instead of stdio. |
Direct local-file parsing with firecrawl_parse requires FIRECRAWL_API_URL pointing to a self-hosted Firecrawl API. A local MCP server connected only to the cloud API cannot upload a local file through that tool; the hosted server uses a signed upload handoff instead.
Install globally#
Use npx for the shortest setup. To install the same reviewed release globally instead:
Then run:
Troubleshooting#
The client reports spawn npx ENOENT
Install Node.js 22 or newer, confirm that npx is on the client's PATH, and fully restart the client. On Windows, run where npx in Command Prompt and configure the client to use the returned npx.cmd path.
The HTTP client cannot connect
Confirm that HTTP_STREAMABLE_SERVER=true, then call http://localhost:3000/health. Use http://localhost:3000/mcp as the client endpoint, not the hosted /v2/mcp path.
The server is rate-limited
Rate limits are enforced by the connected Firecrawl API. Review the current rate limits and the limits configured for a self-hosted deployment.

