Best MCP Servers for Gemini CLI in 2026
Firecrawl, Bright Data, and Crawlora compared as Gemini CLI MCP servers: config, the httpUrl/url gotcha, and which fits which job (Zyte isn't here yet).
Gemini CLI's MCP onboarding is genuinely lower-friction than most clients in this series: a gemini mcp add command writes your settings.json for you, no hand-editing required. Firecrawl published its own Gemini CLI buyer's guide on August 17, 2026; this one runs the same comparison with Crawlora in it, sourced from each vendor's own docs and Gemini CLI's own documentation, not paraphrased from a listicle.
Gemini CLI's MCP config
Gemini CLI reads MCP server definitions from a JSON file at ~/.gemini/settings.json (user-level, applies everywhere) or .gemini/settings.json at your project root (project-scoped). The root key is mcpServers, the same shape Claude Desktop uses.
Gemini CLI supports two server shapes, and they take different fields:
- Command-based (local/stdio):
{ "command": "...", "args": [...], "env": {...}, "cwd": "...", "timeout": ..., "trust": ..., "includeTools": [...], "excludeTools": [...] }— runs a local process, typically vianpx. - URL-based (remote): either
url(an SSE endpoint) orhttpUrl(an HTTP-streaming endpoint) — pick the one your server actually speaks, they're not interchangeable — plus an optionalheadersobject for auth:
"headers": {
"Authorization": "Bearer your-api-token"
}
You don't have to hand-edit the file, either: gemini mcp add [options] <name> <commandOrUrl> [args...] writes the same JSON for you, with flags for -t/--transport (stdio/sse/http), -e/--env, -H/--header, --timeout, --trust, --include-tools, --exclude-tools. Manage servers afterward with gemini mcp list, gemini mcp remove <name>, and gemini mcp enable/disable <name>.
What to evaluate
- Generic crawl (any URL → markdown) vs. structured platform data (named sites → JSON).
- Local command-based server vs. a remote HTTP server you don't have to run yourself.
- Tool count and what it actually covers, not just the headline number.
- Pricing model and whether a failed request still gets billed.
The contenders
| Tool | Format | Coverage | Config | Best for |
|---|---|---|---|---|
| Firecrawl MCP | Local MCP server | Scrape/crawl/search/extract any URL | command-based, npx -y firecrawl-mcp, FIRECRAWL_API_KEY in env | Generic crawl-to-markdown for arbitrary sites |
| Bright Data | Local MCP server (60+ tools) | 40+ named platforms + proxy/anti-bot infra | command-based, npx -y @brightdata/mcp, API_TOKEN (+ PRO_MODE: "true" for the full tool set) in env | Anti-bot-hardened extraction at scale |
| Zyte | N/A | N/A | No official Gemini CLI integration | Not currently an option here |
| Crawlora | Remote MCP server | 1,398 tools across 155 platform groups | httpUrl-based, https://mcp.crawlora.net/mcp, Authorization: Bearer <key> under headers | Structured JSON from named platforms, pay-on-success, nothing to run locally |
Firecrawl MCP: generic crawl-to-markdown
Firecrawl's MCP server exposes scrape, crawl, map, search, extract, and interact tools against any public URL rather than a fixed platform catalog. Firecrawl's own Gemini CLI quickstart has you add it as a command-based entry — npx -y firecrawl-mcp, with FIRECRAWL_API_KEY under env — then confirm it loaded with /mcp list. Choose it when the job is reading or crawling arbitrary websites, not a fixed set of named sources.
Bright Data: anti-bot scale across 40+ named platforms
Bright Data publishes its own Gemini CLI guide with the identical command-based shape: npx -y @brightdata/mcp, API_TOKEN under env, and "PRO_MODE": "true" to unlock the full 60+-tool set (the default is a smaller Rapid-mode tier). Coverage spans named e-commerce, social, business, and finance platforms. Choose it when anti-bot reliability on hard, named targets is the actual constraint.
Zyte: not currently available for Gemini CLI
Worth stating plainly rather than skipping: Zyte's two Claude-adjacent products (the Claude Code plugin and the GitHub-Copilot-specific Web Scraping Copilot VS Code extension) are each locked to one client, and neither connects to Gemini CLI. If your stack is Gemini-first, Zyte isn't currently in the running here.
Crawlora: structured JSON across 155 platform groups, nothing to run locally
Crawlora's MCP server connects to Gemini CLI as an httpUrl-based remote server, not url — Crawlora's hosted endpoint runs Streamable HTTP, and Gemini CLI reserves url for SSE specifically, so pointing the wrong field at it won't connect. Point httpUrl at https://mcp.crawlora.net/mcp with the API key under headers.Authorization (Bearer <key>), or skip the JSON entirely with the CLI shortcut:
gemini mcp add --transport http crawlora https://mcp.crawlora.net/mcp \
--header "Authorization: Bearer $CRAWLORA_API_KEY"
No npx process to install or keep running. 1,398 tools across search, maps, e-commerce, social, finance, travel, jobs, media, app stores, and reviews, normalized JSON, pay-on-success billing, 2,000 free credits/month with no card. Choose it for structured records from named platforms without maintaining a parser or a local process.
How to choose, by job
- You need to crawl or read arbitrary websites for agent context → Firecrawl MCP.
- You need reliable extraction from specific hard, named platforms at scale → Bright Data.
- You need structured JSON from named platforms without running a local process, billed only on success → Crawlora MCP.
- You specifically want Zyte's Scrapy-generation workflow → you'll need Claude Code or GitHub Copilot for now, not Gemini CLI.
Add structured web data to Gemini CLI
1,398 tools across 155 platform groups, one API key, billed only on success. 2,000 free credits a month, no card.
Sources
Related reading
- Best MCP Servers for Warp in 2026: another CLI-first client, same three vendors.
- Best MCP Servers for JetBrains IDEs in 2026: the header-auth-bridge gotcha for a different client.
- Best MCP Servers for GitHub Copilot in 2026.
- Best MCP Servers for Windsurf in 2026.
- Best Web Scraping MCP Servers & Skills for Claude Code in 2026.
- Crawlora vs Firecrawl · Crawlora vs Bright Data.
- Give your AI agent live web data with MCP.
Frequently asked questions
What's the best MCP server for web scraping with Gemini CLI?
It depends on the job. Firecrawl MCP fits crawling or reading arbitrary websites. Bright Data is built for anti-bot-hardened extraction across 40+ named platforms and publishes its own Gemini CLI setup guide. Crawlora fits when you want structured JSON from named platforms without maintaining a parser or running a local process, billed only on success. Zyte does not currently offer a Gemini CLI integration.
Where does Gemini CLI read its MCP server config from?
A JSON file at ~/.gemini/settings.json (user-level, global) or .gemini/settings.json (project-scoped), root key mcpServers — the same shape as Claude Desktop. You can also skip hand-editing it with gemini mcp add <name> <commandOrUrl>, plus gemini mcp list/remove/enable/disable to manage servers afterward.
What's the difference between url and httpUrl in a Gemini CLI MCP config?
They're two distinct fields for two distinct remote transports, not interchangeable: url is for an SSE endpoint, httpUrl is for an HTTP-streaming endpoint. Crawlora's hosted MCP server runs Streamable HTTP, so its config goes under httpUrl, not url — pointing the wrong field at a Streamable HTTP endpoint won't connect.
Does Zyte work with Gemini CLI?
Not officially. Zyte's Claude Code plugin and its GitHub-Copilot-specific Web Scraping Copilot extension are each locked to one client, and neither connects to Gemini CLI.
How do I install Crawlora's MCP server for Gemini CLI?
Run gemini mcp add --transport http crawlora https://mcp.crawlora.net/mcp --header "Authorization: Bearer $CRAWLORA_API_KEY", or add an httpUrl-based entry by hand pointing at the same URL with the API key under headers.Authorization (Bearer <key>). No local process to install or run. Free tier is 2,000 credits/month, no card.
