LF

lispking/ferris-search

Developer tools

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る

61 stars 18 forks 品質 64 トレンド 13Apache-2.0

Rustで書かれているマルチエンジンWeb検索用の超高速MCP(Model Context Protocol)サーバー.

概要

Rustで書かれているマルチエンジンWeb検索用の超高速MCPサーバー。 ClaudeコードのビルトインWeb検索は、理想的なネットワーク条件で素晴らしい機能しますが、実際には、多くの開発者は、それが信頼できないか、利用できなくなった環境に動作します。 企業ネットワーク、制限された地域、エアギャップの設定、または単にスポット接続。 ワークアラウンドを探しながら、オープンソースのNode.js MCP サーバーで、複数のエンジンで検索クエリをルーティングしました。 問題はよく解決しました。 しかし、私はRustのためのものを持っています — そして、Node.jsのランタイムをスピンして、いくつかのHTTPリクエストをプロキシするだけで、より重い感じました。 つまり、Rust: - — 単一の自己完結バイナリ ~8 MB - — Rust async I/O、エンジン全体での同時ファンアウト - — 必須メモリ使用 - — HTTP/SOCKS5 プロキシ via env var、それを必要とするネットワーク Claude Code の検索が環境で機能しない場合は、これはあなたにとってです。 ferris-searchは、シナリオのための良い基盤です.

概要(AI 翻訳)

Rustで書かれているマルチエンジンWeb検索用の超高速MCPサーバー。

なぜフェリス検索?

ClaudeコードのビルトインWeb検索は、理想的なネットワーク条件で素晴らしい機能しますが、実際には、多くの開発者は、それが信頼できないか、利用できなくなった環境に動作します。 企業ネットワーク、制限された地域、エアギャップの設定、または単にスポット接続。

ワークアラウンドを探しながら、オープンソースのNode.js MCP サーバーで、複数のエンジンで検索クエリをルーティングしました。 問題はよく解決しました。 しかし、私はRustのためのものを持っています — そして、Node.jsのランタイムをスピンして、いくつかのHTTPリクエストをプロキシするだけで、より重い感じました。

なので、私は同じ考えをRustで書きました:

  • Node.js の実行時間なし — 単一の自己完結バイナリ ~8 MB
  • 低レイテンシ — Rust async I/O、エンジンを介した同時ファンアウト
  • 小さなフットプリント — 必須メモリ使用量 -プロキシサポート — jav var 経由で HTTP/SOCKS5 プロキシ、ネットワーク

Claude Code の検索が環境で機能しない場合は、これはあなたにとってです。

企業と内部の使用

ferris-searchは、enterprise内部検索のシナリオのための良い基盤です.

このページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。

README

以下は原文 README の抜粋です。原文を見る。

ferris-search 🦀

A blazing-fast MCP server for multi-engine web search, written in Rust.

Claude Code’s built-in web search works great in ideal network conditions — but in practice, many developers run into environments where it’s unreliable or unavailable: corporate networks, restricted regions, air-gapped setups, or simply spotty connectivity.

While looking for a workaround, I came across open-webSearch, a Node.js MCP server that routes search queries through multiple engines. It solved the problem well. But I have a thing for Rust — and spinning up a Node.js runtime just to proxy a few HTTP requests felt heavier than it needed to be.

So I rewrote the same idea in Rust:

  • No Node.js runtime — single self-contained binary, ~8 MB
  • Lower latency — Rust async I/O, concurrent fan-out across engines
  • Smaller footprint — negligible memory usage
  • Proxy support — HTTP/SOCKS5 proxy via env var, for networks that need it

If Claude Code’s search isn’t working in your environment, this is for you.

Enterprise & Internal Use

ferris-search is also a good foundation for enterprise internal search scenarios. Since it’s a standard MCP server written in Rust, you can fork it and add custom search engines that connect to your internal knowledge bases — Confluence, Notion, internal wikis, code repositories, or proprietary document stores.

Some ideas:

  • Add an engine that searches your internal Elasticsearch or OpenSearch cluster
  • Integrate with your company’s Confluence or GitLab search API
  • Connect to a private RAG (Retrieval-Augmented Generation) service
  • Route queries to different backends based on query language or topic

With Claude Code as the AI layer and ferris-search as the search backbone, your team gets a local AI coding assistant that can actually find and reference internal documentation — without sending anything to external search engines.

Features

  • Multi-engine fan-out — search across multiple engines simultaneously with a single call
  • 14 search engines — Bing, DuckDuckGo, Brave, Baidu, CSDN, Juejin, Exa, Firecrawl, Zhihu, LinuxDo, Jina, Tavily, GitHub (repo search), GitHub Code (code search)
  • 7 MCP tools — web_search + 6 article/content fetchers
  • No API keys required for most engines (Brave, Exa, Firecrawl, Jina, and Tavily require API keys)
  • Single binary — ~8 MB, no runtime dependencies
  • Proxy support — HTTP/SOCKS5 proxy via env var

Quick Install

Linux / macOS (one-liner)

curl -fsSL https://raw.githubusercontent.com/lispking/ferris-search/main/install.sh | bash

Or from a local clone:

bash install.sh

The script will:

  1. Build and install the binary via cargo install
  2. Register the MCP server with Claude Code (claude mcp add -s user) if the CLI is found
  3. Install Claude Code skills for ferris-search

Windows (PowerShell)

GitHub で README 全文を見る

インストール

This server does not publish a one-line install command.

Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →

設定

{ "mcpServers": { "ferris-search": { "command": "/Users/<you>/.cargo/bin/ferris-search", "env": { "DEFAULT_SEARCH_ENGINE": "bing" } } } }