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

# Firecrawl MCP

> Connect Firecrawl to an MCP client with OAuth, an API key, or a keyless trial.

Firecrawl MCP gives AI clients access to live web data through the Model Context Protocol. Use the hosted server for the fastest setup, or [run the open-source server locally](/mcp-server/local) when you need a local process or self-hosted Firecrawl API.

This page is the canonical setup guide for hosted Firecrawl MCP.

## Setup Firecrawl MCP Server

For an interactive client, connect with OAuth. The client opens Firecrawl in your browser so you can sign in, choose a team, and approve access without copying an API key.

<Tabs>
  <Tab title="Codex">
    Add the hosted server and complete OAuth sign-in:

    ```bash theme={null}
    codex mcp add firecrawl \
      --url https://mcp.firecrawl.dev/v2/mcp-oauth
    codex mcp login firecrawl
    ```

    Start or restart the Codex app, CLI, or IDE extension. Enter `/mcp` to confirm that `firecrawl` is connected.
  </Tab>

  <Tab title="Claude Desktop">
    1. Open **Settings > Connectors**.
    2. Select **Add custom connector**.
    3. Enter `https://mcp.firecrawl.dev/v2/mcp-oauth` as the remote MCP server URL.
    4. Select **Connect**, then sign in to Firecrawl and approve access.

    <Note>
      Remote servers must be added from **Settings > Connectors**. The `claude_desktop_config.json` file is for local MCP servers.
    </Note>
  </Tab>

  <Tab title="Claude Code">
    Add the hosted server:

    ```bash theme={null}
    claude mcp add --transport http firecrawl \
      https://mcp.firecrawl.dev/v2/mcp-oauth
    ```

    Enter `/mcp` in Claude Code, choose `firecrawl`, and complete the browser sign-in.
  </Tab>

  <Tab title="Cursor">
    Add the hosted server to `~/.cursor/mcp.json`:

    ```json theme={null}
    {
      "mcpServers": {
        "firecrawl": {
          "url": "https://mcp.firecrawl.dev/v2/mcp-oauth"
        }
      }
    }
    ```

    Save the file, open Cursor's MCP settings, and complete the Firecrawl sign-in. Cursor then makes the Firecrawl tools available to Agent.
  </Tab>

  <Tab title="Other clients">
    Point an OAuth-capable remote MCP client at:

    ```text theme={null}
    https://mcp.firecrawl.dev/v2/mcp-oauth
    ```

    If the client asks for an OAuth Client ID or Client Secret, leave both blank. Compatible clients use Client ID Metadata Documents or Dynamic Client Registration.

    If the client cannot complete remote OAuth, use the API-key setup below. If it cannot send request headers, [run Firecrawl MCP locally](/mcp-server/local).
  </Tab>
</Tabs>

OAuth connections receive short-lived, resource-bound tokens rather than your Firecrawl API key. You can review and revoke them from [MCP settings](https://www.firecrawl.dev/app/settings?tab=mcp).

## Set up with an API key

Use an API key for CI, servers, scripts, or another client that cannot complete browser OAuth. [Create a Firecrawl API key](https://www.firecrawl.dev/app/api-keys), keep it in an environment variable or secret store, and connect to the full hosted MCP endpoint.

<Tabs>
  <Tab title="Codex">
    ```bash theme={null}
    export FIRECRAWL_API_KEY=fc-YOUR-API-KEY
    codex mcp add firecrawl \
      --url https://mcp.firecrawl.dev/v2/mcp \
      --bearer-token-env-var FIRECRAWL_API_KEY
    ```
  </Tab>

  <Tab title="Claude Code">
    Claude Code expands the environment variable when it connects:

    ```bash theme={null}
    export FIRECRAWL_API_KEY=fc-YOUR-API-KEY
    claude mcp add --transport http firecrawl \
      https://mcp.firecrawl.dev/v2/mcp \
      --header 'Authorization: Bearer ${FIRECRAWL_API_KEY}'
    ```
  </Tab>

  <Tab title="Other clients">
    Configure the client to send the API key as a bearer token:

    ```text theme={null}
    URL: https://mcp.firecrawl.dev/v2/mcp
    Authorization: Bearer <FIRECRAWL_API_KEY>
    ```

    Header configuration differs by client. Keep the key in the client's environment or protected secret storage.
  </Tab>
</Tabs>

<Warning>
  Never put an API key in a project configuration file, paste it into chat, or share it in a screenshot or issue. New configurations should use OAuth or an environment-backed Authorization header, never a credential-bearing URL.
</Warning>

## Try without an API key

To try Firecrawl without creating an account, add the keyless endpoint to any client that supports remote MCP:

```text theme={null}
https://mcp.firecrawl.dev/v2/mcp
```

Keyless MCP is rate-limited per network and exposes exactly **Search, Scrape, and Parse** while eligible. Connect with OAuth or an API key when you need the full tool surface or higher limits.

<Accordion title="What happens when I reach the keyless limit?">
  The MCP error includes the current retry time when it is available. Wait for that interval to continue keyless use, or connect immediately through OAuth or an API key.
</Accordion>

## Verify your connection

Open your client's MCP status or tool list and confirm that `firecrawl` is connected. A keyless connection shows `firecrawl_search`, `firecrawl_scrape`, and `firecrawl_parse`; an authenticated connection can expose the [full tool surface](/mcp-server/tools), subject to plan, deployment, and team policy.

Try a read-only request:

```text theme={null}
Search the web for the latest Firecrawl release notes and summarize the sources.
```

If no Firecrawl tools appear, restart or reload the client after saving its MCP configuration. For a local-process error such as `spawn npx ENOENT`, see [Run Firecrawl MCP locally](/mcp-server/local#troubleshooting).

## Compatibility and legacy setup

<AccordionGroup>
  <Accordion title="Legacy API-key URL support">
    <Warning>
      This legacy form exists only for existing configurations and clients that cannot complete OAuth or send a custom Authorization header. It is not the recommended setup for new integrations.
    </Warning>

    ```text theme={null}
    https://mcp.firecrawl.dev/<FIRECRAWL_API_KEY>/v2/mcp
    ```

    The API key is part of the URL, so treat the complete URL like a password. If it is exposed, rotate the key. This fallback applies only to the full `/v2/mcp` surface. It does not work for the OAuth-only search resource.
  </Accordion>

  <Accordion title="Existing OAuth connections">
    Existing `/v2/mcp` OAuth connections remain supported during the migration to the dedicated account endpoint. New interactive account connections should use `/v2/mcp-oauth`; new tokens for that account resource are not accepted by `/v2/mcp`.
  </Accordion>
</AccordionGroup>

## Next steps

<CardGroup cols={3}>
  <Card title="Choose a tool" icon="wrench" href="/mcp-server/tools">
    Find the right Firecrawl MCP tool and review connection-specific availability.
  </Card>

  <Card title="Run locally" icon="terminal" href="/mcp-server/local">
    Start the open-source server over stdio or Streamable HTTP.
  </Card>

  <Card title="Contribute" icon="github" href="https://github.com/firecrawl/firecrawl-mcp-server">
    Build, test, and contribute to the Firecrawl MCP server.
  </Card>
</CardGroup>

For the current keyless allowance and plan limits, see [Rate limits](/rate-limits#keyless-no-api-key).
