Firecrawl MCP Multiple Keys
Search GitHub issues, pull requests, and readmes through the Firecrawl API.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Firecrawl MCP Multiple Keyssearch for recent developments in quantum computing"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Firecrawl MCP Multiple Keys
A Firecrawl MCP server with built-in support for multiple API keys. It exposes Firecrawl's web search, scraping, crawling, extraction, browser interaction, monitoring, and research tools to OpenCode and other MCP clients.
This fork is useful when you want one local Firecrawl MCP server that rotates across a pool of API keys instead of configuring several separate MCP server entries.
Highlights
Local
stdioMCP server by defaultOptional Streamable HTTP transport for hosted or local HTTP usage
Multi-key rotation with
FIRECRAWL_API_KEYSSingle-key fallback with
FIRECRAWL_API_KEYProcess-local round-robin key selection
Retry/failover across pooled keys for retryable Firecrawl errors where safe
Firecrawl cloud and self-hosted API support
TypeScript source bundled with
tsup
Related MCP server: WebSearch
Requirements
Node.js 22 or newer
pnpm
One or more Firecrawl API keys
OpenCode or another MCP-compatible client
Install
git clone https://github.com/AdvaitR7/firecrawl-mcp-multiple-keys.git
cd firecrawl-mcp-multiple-keys
pnpm install
pnpm run buildThe build creates dist/index.js. MCP clients should run that file with Node.
Configure API Keys
For multiple keys, set FIRECRAWL_API_KEYS as a comma-separated or whitespace-separated list:
FIRECRAWL_API_KEYS=firecrawl_key_1,firecrawl_key_2For a single key, set FIRECRAWL_API_KEY:
FIRECRAWL_API_KEY=firecrawl_key_1FIRECRAWL_API_KEYS takes precedence over FIRECRAWL_API_KEY unless FIRECRAWL_OAUTH_TOKEN is set.
Key Rotation Behavior
At startup, the server loads FIRECRAWL_API_KEYS into a process-local key pool. Each request that uses the pool starts with the next key in sequence.
request 1 -> key 1
request 2 -> key 2
request 3 -> key 1
request 4 -> key 2For retryable failures such as 429, 5xx, timeout, or network errors, supported read-style operations can try remaining keys in the current cycle. Mutating operations are more conservative to avoid duplicate jobs.
Header credentials and FIRECRAWL_OAUTH_TOKEN bypass the environment key pool.
OpenCode Setup
Build the project first:
pnpm install
pnpm run buildAdd a local MCP entry to your OpenCode config. Use an absolute path to dist/index.js.
Multi-key configuration:
{
"mcp": {
"firecrawl": {
"type": "local",
"command": ["node", "/absolute/path/to/firecrawl-mcp-multiple-keys/dist/index.js"],
"enabled": true,
"timeout": 30000,
"environment": {
"FIRECRAWL_API_KEYS": "firecrawl_key_1,firecrawl_key_2"
}
}
}
}Single-key configuration:
{
"mcp": {
"firecrawl": {
"type": "local",
"command": ["node", "/absolute/path/to/firecrawl-mcp-multiple-keys/dist/index.js"],
"enabled": true,
"timeout": 30000,
"environment": {
"FIRECRAWL_API_KEY": "firecrawl_key_1"
}
}
}
}Restart OpenCode after changing MCP configuration.
Environment Variables
Variable | Required | Description |
| No | Comma- or whitespace-separated API keys for round-robin rotation |
| No | Single Firecrawl API key fallback |
| No | Static Firecrawl OAuth access token for stdio usage |
| No | Custom Firecrawl API URL for self-hosted instances |
| No | Set to |
| No | Set to |
| No | Set to |
| No | HTTP transport port, default |
| No | HTTP transport host, default |
Transport Modes
By default, the server starts on stdio:
FIRECRAWL_API_KEYS=firecrawl_key_1,firecrawl_key_2 node dist/index.jsFor local Streamable HTTP transport:
HTTP_STREAMABLE_SERVER=true FIRECRAWL_API_KEY=firecrawl_key_1 node dist/index.jsDirect terminal execution of the stdio server will wait for MCP protocol input. For normal usage, run it through OpenCode or another MCP client.
Tools
Core Firecrawl Tools
Tool | Description |
| Scrape a single URL with markdown, JSON, HTML, screenshots, or other formats |
| Discover URLs on a website |
| Search the web, news, images, GitHub, research, or PDFs |
| Send feedback for a previous Firecrawl search result |
| Send generic endpoint feedback for scrape, parse, map, or search jobs |
| Crawl multiple pages from a site or section |
| Check an existing crawl job status |
| Extract structured data from one or more URLs |
| Start an autonomous web research agent job |
| Poll an agent job until completion |
| Interact with a web page in a browser session |
| Stop an interaction session |
| Parse uploaded or local documents, including PDFs |
Monitor Tools
Tool | Description |
| Create a recurring monitor for pages or searches |
| List monitors |
| Get one monitor by ID |
| Update monitor settings |
| Delete a monitor |
| Trigger a monitor check immediately |
| List historical monitor checks |
| Inspect one monitor check and its page diffs |
Research Tools
Tool | Description |
| Search research papers by topic |
| Fetch metadata for one paper |
| Expand from seed papers through citation graph similarity |
| Read relevant full-text passages for one paper |
| Search GitHub issues, pull requests, and readmes |
Development
Install dependencies:
pnpm installBuild:
pnpm run buildTest:
pnpm testLint:
pnpm run lintFormat:
pnpm run formatRun the compiled stdio server:
FIRECRAWL_API_KEYS=firecrawl_key_1,firecrawl_key_2 pnpm startSecurity
Never put real Firecrawl API keys in source files, README examples, screenshots, issues, or commits. Keep keys in your MCP client environment config, shell environment, or a local .env file that is not committed.
If a key is exposed, revoke it in Firecrawl and create a replacement key.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseCqualityDmaintenanceA server that provides web scraping and intelligent content searching capabilities using the Firecrawl API, enabling AI agents to extract structured data from websites and perform content searches.Last updated52MIT
- FlicenseCqualityCmaintenanceBuilt as a Model Context Protocol (MCP) server that provides advanced web search, content extraction, web crawling, and scraping capabilities using the Firecrawl API.Last updated41
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables web scraping, crawling, and content extraction capabilities through integration with Firecrawl.Last updated8129,6181MIT
- FlicenseAqualityCmaintenanceA production-ready Model Context Protocol (MCP) server that integrates with the Firecrawl API to give AI assistants the power to scrape, crawl, and search the web.Last updated3
Related MCP Connectors
Firecrawl MCP — wraps the Firecrawl API (firecrawl.dev) for web
Free remote MCP server for fetching public web pages through a rotating proxy pool.
SEO MCP server: crawl your site, find AI-visibility gaps, and ship the fix from your coding agent.
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/AdvaitR7/firecrawl-mcp-multiple-keys'
If you have feedback or need assistance with the MCP directory API, please join our Discord server