> ## Documentation Index
> Fetch the complete documentation index at: https://firecrawl-claude-eager-dijkstra-u6tgua.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Run Firecrawl MCP locally

> Install and configure the local Firecrawl MCP server.

## 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:

```bash theme={null}
node --version
```

## Run over stdio

```bash theme={null}
env FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp@3.23.0
```

This is the default transport for clients that launch the MCP server as a local process.

## Run with Streamable HTTP

Use HTTP transport for clients such as n8n that connect to an already-running MCP server:

```bash theme={null}
env HTTP_STREAMABLE_SERVER=true \
  FIRECRAWL_API_KEY=fc-YOUR_API_KEY \
  npx -y firecrawl-mcp@3.23.0
```

Connect the client to:

```text theme={null}
http://localhost:3000/mcp
```

Confirm the server is ready:

```bash theme={null}
curl http://localhost:3000/health
```

The health check returns `ok`. The local route is `/mcp`; `/v2/mcp` is the hosted Firecrawl route.

## Install globally

```bash theme={null}
npm install -g firecrawl-mcp@3.23.0
```

Then run:

```bash theme={null}
env FIRECRAWL_API_KEY=fc-YOUR_API_KEY firecrawl-mcp
```

## Configuration

### Environment Variables

#### Cloud and self-hosted API

* `FIRECRAWL_API_KEY`: Your Firecrawl API key
  * Required when using cloud API (default)
  * Optional when using self-hosted instance with `FIRECRAWL_API_URL`
* `FIRECRAWL_API_URL` (Optional): Custom API endpoint for self-hosted instances
  * Example: `https://firecrawl.your-domain.com`
  * If not provided, the cloud API will be used (requires API key)

### Configuration Examples

For cloud API usage:

```bash theme={null}
export FIRECRAWL_API_KEY=your-api-key
```

For self-hosted instance:

```bash theme={null}
export FIRECRAWL_API_URL=https://firecrawl.your-domain.com
export FIRECRAWL_API_KEY=your-api-key  # If your instance requires auth
```

### Custom configuration with Claude Desktop

Add this to your `claude_desktop_config.json`:

```json theme={null}
{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}
```

### Hosted MCP vs local MCP

The hosted MCP server is optimized for safe remote use. Some options that are available when running the MCP server locally are narrowed or unavailable remotely:

* Hosted keyless mode exposes only Search, Scrape, and Parse and is rate-limited per IP.
* Local-only file reads are available only when you run the MCP server locally.
* Webhooks and local file paths should be configured from a local or self-hosted MCP server when the agent needs access to local resources.

<Note>
  Direct local-file parsing with `firecrawl_parse` requires `FIRECRAWL_API_URL` pointing to a self-hosted Firecrawl API. A local MCP server configured only with a cloud API key cannot upload a local file through that tool.
</Note>

### Rate Limiting

Rate limits are enforced by Firecrawl. Use an API key for higher limits and access to the full tool set.
