Firecrawl
БесплатноНе проверенA 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 w
Описание
A 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.
README
Node.js TypeScript MCP Firecrawl License: MIT
A 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.
Works with Claude Desktop, Cursor, VS Code (Cline/Roo Code), Continue, OpenAI Agents SDK, and any other MCP-compatible AI tool.
Features
| Tool | Description | Input |
|---|---|---|
scrape_url |
Scrape any webpage → returns clean Markdown content + metadata | { "url": "https://..." } |
crawl_website |
Crawl multiple pages (up to 100) from a website | { "url": "https://...", "limit": 10 } |
search_web |
Search the web using Firecrawl's search engine | { "query": "latest AI news" } |
Quick Start
# 1. Clone
git clone https://github.com/YOUR_USERNAME/MCP.git
cd MCP
# 2. Install
npm install
# 3. Configure
cp .env.example .env
# Edit .env → add your Firecrawl API key:
# FIRECRAWL_API_KEY=fc-your-key-here
# 4. Build & Run
npm run build
npm start
✅ Server is now running on stdio (default mode).
Usage
Command Line Test
# List available tools
node test-mcp.mjs tools
# Scrape a website
node test-mcp.mjs scrape https://example.com
# Search the web
node test-mcp.mjs search "latest TypeScript news"
With OpenAI Agents SDK (TypeScript)
import { Agent, run, MCPServerStdio } from "@openai/agents";
const mcp = new MCPServerStdio({
name: "Firecrawl",
fullCommand: "node dist/server.js",
env: { FIRECRAWL_API_KEY: "fc-..." },
});
await mcp.connect();
const agent = new Agent({
name: "Web Assistant",
instructions: "Use tools to scrape, crawl, and search the web.",
mcpServers: [mcp],
});
const result = await run(agent, "Scrape https://example.com");
console.log(result.finalOutput);
await mcp.close();
Integration with AI Tools
Claude Desktop
Add to %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"firecrawl": {
"command": "node",
"args": ["C:/path/to/MCP/dist/server.js"],
"env": {
"FIRECRAWL_API_KEY": "fc-..."
}
}
}
}
Cursor
Settings → Features → MCP → Add Server:
Name: firecrawl
Type: command
Command: node "C:/path/to/MCP/dist/server.js"
Environment: FIRECRAWL_API_KEY=fc-...
VS Code + Cline / Roo Code
File: .vscode/cline_mcp_settings.json
{
"mcpServers": {
"firecrawl": {
"command": "node",
"args": ["C:/path/to/MCP/dist/server.js"],
"env": { "FIRECRAWL_API_KEY": "fc-..." },
"disabled": false,
"autoApprove": []
}
}
}
Continue (VS Code / JetBrains)
File: ~/.continue/config.json
{
"experimental": {
"mcpServers": {
"firecrawl": {
"command": "node",
"args": ["C:/path/to/MCP/dist/server.js"],
"env": { "FIRECRAWL_API_KEY": "fc-..." }
}
}
}
}
opencode
File: ./opencode.json
{
"mcp": {
"firecrawl": {
"type": "local",
"command": ["node", "MCP/dist/server.js"],
"enabled": true,
"env": { "FIRECRAWL_API_KEY": "fc-..." }
}
}
}
HTTP Mode (Streamable HTTP)
Can't use stdio? Run the server as an HTTP endpoint instead:
npm run start:http
# Listening on http://127.0.0.1:3001/mcp
Then connect any MCP client to that URL.
Project Structure
MCP/
├── src/
│ ├── server.ts # Entry point (stdio + HTTP modes)
│ ├── tools/
│ │ ├── scrape.ts # scrape_url tool
│ │ ├── crawl.ts # crawl_website tool
│ │ └── search.ts # search_web tool
│ ├── services/
│ │ └── firecrawl.ts # FirecrawlApp API wrapper
│ └── types/
│ └── index.ts # TypeScript interfaces
├── test-mcp.mjs # CLI test utility
├── .env.example # Environment template
├── package.json
├── tsconfig.json
└── README.md
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
FIRECRAWL_API_KEY |
✅ Yes | — | Your Firecrawl API key |
HTTP_HOST |
❌ No | 127.0.0.1 |
HTTP bind address (HTTP mode only) |
HTTP_PORT |
❌ No | 3001 |
HTTP port (HTTP mode only) |
NPM Scripts
| Script | Description |
|---|---|
npm run build |
Compile TypeScript → dist/ |
npm start |
Run in stdio mode |
npm run start:http |
Run in HTTP mode |
npm run dev |
Run with hot-reload (stdio) |
npm run dev:http |
Run with hot-reload (HTTP) |
npm run clean |
Delete dist/ |
Tech Stack
- Runtime: Node.js 18+
- Language: TypeScript
- MCP SDK:
@modelcontextprotocol/sdk - Scraping Engine:
firecrawlSDK - Validation:
zod - Config:
dotenv
Requirements
- Node.js 18 or higher
- A Firecrawl API key (free tier available)
License
MIT
Установка Firecrawl
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/mustafamemon265789-cloud/MCPFAQ
Firecrawl MCP бесплатный?
Да, Firecrawl MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Firecrawl?
Нет, Firecrawl работает без API-ключей и переменных окружения.
Firecrawl — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Firecrawl в Claude Desktop, Claude Code или Cursor?
Открой Firecrawl на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Playwright
Browser automation, scraping, screenshots
автор: MicrosoftPuppeteer
Browser automation and web scraping.
автор: modelcontextprotocolopentabs-dev/opentabs
Plugin-based MCP server + Chrome extension that gives AI agents access to web applications through the user's authenticated browser session. 100+ plugins with a
автор: opentabs-devrobhunter/agentdeals
1,500+ developer infrastructure deals, free tiers, and startup programs across 54 categories. Search deals, compare vendors, plan stacks, and track pricing chan
автор: robhunterCompare Firecrawl with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории browse
