Ferris Search
A blazing-fast MCP (Model Context Protocol) server for multi-engine web search, written in Rust.
What is Ferris Search?
Ferris Search is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to blazing-fast mcp (model context protocol) server for multi-engine web search, written in rust.
A blazing-fast MCP (Model Context Protocol) server for multi-engine web search, written in Rust.
This server falls under the Search & Data Extraction category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- A blazing-fast MCP (Model Context Protocol) server for multi
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx ferris-searchConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use Ferris Search
Ferris Search is a high-performance MCP server for web search written in Rust, supporting 14 different search engines including Bing, DuckDuckGo, Brave, Exa, Tavily, GitHub, Baidu, and domain-specific sources like Zhihu and Juejin. It exposes 7 MCP tools covering multi-engine search, web content fetching, GitHub README retrieval, and platform-specific article extraction, with configurable engine allowlists and automatic failover. Teams use it to give AI assistants fast, privacy-respecting web search without being locked into a single search provider.
Prerequisites
- Rust and Cargo installed (for building from source) OR the pre-built binary from the GitHub releases page
- API keys for premium search engines if used: Brave Search API key, Exa API key, Firecrawl API key, Jina API key, or Tavily API key (Bing and DuckDuckGo work without keys)
- Optional: GitHub personal access token to raise GitHub search rate limit from 60 to 5000 req/hr
- Claude Desktop, Claude Code CLI, or another MCP-compatible client
Install the ferris-search binary
Install via the shell script (Linux/macOS) or build from source using Cargo. The binary is self-contained with no Node.js or Python runtime required.
# Linux/macOS via install script
curl -fsSL https://raw.githubusercontent.com/lispking/ferris-search/main/install.sh | bash
# Or build from source with Cargo
cargo install --path .Verify the installation
Confirm the binary is accessible on your PATH.
ferris-search --version
which ferris-searchRegister with Claude Code CLI
Add ferris-search as a user-scoped MCP server in Claude Code. This makes it available across all projects.
claude mcp add -s user ferris-search $(which ferris-search)Configure Claude Desktop
For Claude Desktop, add ferris-search to your config file. Set API keys for whichever search engines you want to enable.
{
"mcpServers": {
"ferris-search": {
"command": "/usr/local/bin/ferris-search",
"args": [],
"env": {
"DEFAULT_SEARCH_ENGINE": "bing",
"ALLOWED_SEARCH_ENGINES": "bing,duckduckgo,brave",
"BRAVE_API_KEY": "your_brave_api_key",
"TAVILY_API_KEY": "your_tavily_api_key"
}
}
}
}Optionally configure proxy for restricted networks
If running behind a corporate firewall or VPN, enable proxy support with the USE_PROXY and PROXY_URL environment variables.
USE_PROXY=true
PROXY_URL=http://127.0.0.1:7890Ferris Search Examples
Client configuration
Claude Desktop configuration for Ferris Search with DuckDuckGo as the default engine and Brave as a fallback.
{
"mcpServers": {
"ferris-search": {
"command": "/usr/local/bin/ferris-search",
"args": [],
"env": {
"DEFAULT_SEARCH_ENGINE": "duckduckgo",
"ALLOWED_SEARCH_ENGINES": "duckduckgo,brave,bing",
"BRAVE_API_KEY": "your_brave_api_key_here"
}
}
}
}Prompts to try
Example prompts for web search and content fetching with Ferris Search.
- "Search the web for the latest Rust async runtime benchmarks"
- "Fetch the content of this URL and summarize it: https://example.com/article"
- "Search GitHub for MCP server implementations in Rust"
- "Search for 'Solana DeFi protocols' using DuckDuckGo"
- "Fetch the README from the github.com/tokio-rs/tokio repository"
- "Search for 'Kubernetes best practices 2025' and give me the top findings"Troubleshooting Ferris Search
Search returns no results or errors for a specific engine
Some engines require API keys (Brave, Exa, Firecrawl, Jina, Tavily). Verify the key is set in your env config. If the engine is not listed in ALLOWED_SEARCH_ENGINES, it will not be used. Ferris Search automatically falls back to the default engine if a specific engine fails.
Binary not found after running the install script
The install script places the binary in ~/.local/bin or /usr/local/bin. Run 'which ferris-search' to confirm. If not found, add the install directory to your PATH in ~/.zshrc or ~/.bashrc and restart your shell.
GitHub search hits rate limits quickly
Without authentication, GitHub allows only 60 requests per hour. Set the GITHUB_TOKEN environment variable with a personal access token to raise the limit to 5000 req/hr. Create a token at github.com/settings/tokens (no special scopes needed for public repo search).
Frequently Asked Questions about Ferris Search
What is Ferris Search?
Ferris Search is a Model Context Protocol (MCP) server that blazing-fast mcp (model context protocol) server for multi-engine web search, written in rust. It connects AI assistants to external tools and data sources through a standardized interface.
How do I install Ferris Search?
Follow the installation instructions on the Ferris Search GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with Ferris Search?
Ferris Search works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is Ferris Search free to use?
Yes, Ferris Search is open source and available under the Apache-2.0 license. You can use it freely in both personal and commercial projects.
Ferris Search Alternatives — Similar Search & Data Extraction Servers
Looking for alternatives to Ferris Search? Here are other popular search & data extraction servers you can use with Claude, Cursor, and VS Code.
TrendRadar
★ 58.0kA real-time hotspot monitoring and news aggregation assistant that provides AI-powered analysis of trending topics across multiple platforms via the Model Context Protocol. It enables users to track news and receive automated notifications through va
Scrapling
★ 52.7k🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!
PDF Math Translate
★ 33.9k[EMNLP 2025 Demo] PDF scientific paper translation with preserved formats - 基于 AI 完整保留排版的 PDF 文档全文双语翻译,支持 Google/DeepL/Ollama/OpenAI 等服务,提供 CLI/GUI/MCP/Docker/Zotero
GPT Researcher
★ 27.2kAn autonomous agent that conducts deep research on any data using any LLM providers
Agent Reach
★ 20.1kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
Xiaohongshu
★ 13.7kMCP for xiaohongshu.com
Browse More Search & Data Extraction MCP Servers
Explore all search & data extraction servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up Ferris Search in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use Ferris Search?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.