Skip to main content
Glama

searxng-mcp

CI Release Pages

SearXNG用のMCPサーバーです。モデルが認識しやすい出力を短く保ち、完全な結果ペイロードを隠しメタデータとして保持します。また、ローカルの stdio クライアントとデプロイされた streamable-http の両方の利用をサポートしています。

提供機能

  • search: _meta に完全な生ペイロードを含む簡潔なウェブ検索

  • search_many: 並列ファンアウト、重複排除、およびマージされたランキング

  • search_and_fetch: 検索とソース抽出を1回の呼び出しで実行

  • research: バッチフェッチとマージされたソースを用いたマルチクエリ検索

  • fetch_url: 引用付きの読み取り可能なページ抽出

  • fetch_many: キャッシュを用いた並列URL抽出

  • health: バックエンド、キャッシュ、およびレンダリングのステータス確認

このサーバーは軽量に設計されています。検索作業はSearXNGが行い、searxng-mcp はツールの整形、キャッシュ、抽出、およびトランスポートを処理します。

Related MCP server: SearXNG MCP Bridge

クイックスタート

チェックアウトからインストール

uv sync
uv run searxng-mcp

uvx でインストール

searxng-mcp はこのリポジトリから配布されています(PyPIリリースはありません)。最も簡単な手順は以下の通りです:

uvx --from git+https://github.com/88plug/searxng-mcp searxng-mcp

レンダリングされたフェッチはデフォルトのインストールに含まれています。ホストにChromiumまたはChromeが既にインストールされている場合、searxng-mcp はそれを使用します。そうでない場合、最初のレンダリングフェッチ時にPlaywright Chromiumがユーザーキャッシュに自動的にブートストラップされます。

Dockerで実行

docker build -t searxng-mcp .
docker run --rm -p 8811:8811 --add-host=host.docker.internal:host-gateway \
  -e SEARXNG_MCP_BASE_URL=http://host.docker.internal:8890 \
  searxng-mcp

Claude Desktopの例

{
  "mcpServers": {
    "searxng-mcp": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/88plug/searxng-mcp", "searxng-mcp"],
      "env": {
        "SEARXNG_MCP_BASE_URL": "http://127.0.0.1:8890",
        "SEARXNG_MCP_TRANSPORT": "stdio"
      }
    }
  }
}

デプロイメントモード

ローカル stdio

デスクトップクライアントやプライベートなワークフローに使用します。最もシンプルで安全なモードです。

SEARXNG_MCP_TRANSPORT=stdio uv run searxng-mcp

ストリーム可能なHTTP

プライベートサービス、チームデプロイメント、またはリバースプロキシされた内部エンドポイントに使用します。

SEARXNG_MCP_TRANSPORT=streamable-http uv run searxng-mcp --host 0.0.0.0 --port 8811

ハードニングされたDockerおよびCompose

長時間稼働するセルフホストサービスには、ハードニングされたコンテナバリアントと提供されているComposeスタックを使用してください。

docker build -f Dockerfile.prod -t searxng-mcp:prod .
cp docker-compose.env.example .env
docker compose up --build -d

セキュリティと信頼性

このプロジェクトは、ローカルおよび信頼されたネットワークでの使用に対して安全です。公開インターネットサービスとしてそのまま利用するものではありません。

  • fetch_url および fetch_many は、クライアントから提供された任意のURLをフェッチできます

  • レンダリングされた抽出は、信頼できないページに対してChromiumを起動する可能性があります

  • streamable-http は、共有デプロイメントを行う場合は認証またはリバースプロキシの背後に配置する必要があります

  • SEARXNG_MCP_FETCH_VERIFY_TLS=0 は、プライベートまたは自己署名のバックエンド設定専用です

HTTPトランスポートを公開する場合は、内部サービスとして扱い、SSRFが可能なツールに期待される制御を追加してください。

なぜこのツールが存在するのか

  • モデルが認識しやすいコンパクトな出力と、隠しメタデータに保持される詳細情報

  • 並列検索とフェッチのファンアウトによる高速なリサーチワークフロー

  • 追加のインストールフラグなしでJSを多用するページをレンダリング抽出

  • 独自のSearXNGバックエンドMCPサーバーを求める人向けのセルフホスト可能なデプロイメント

MCPインターフェース

  • searxng://config: 現在の設定、トランスポートモード、およびレンダリングサポートを公開

  • searxng://guide: 利用可能なツールとその使用タイミングの要約

  • quick_lookupdeep_researchresearch_workflow: プロンプトインターフェースをサポートするクライアント向けのオプションの互換性プロンプト

環境変数

主要な変数:

  • SEARXNG_MCP_BASE_URL: SearXNGのベースURL、デフォルトは http://127.0.0.1:8890

  • SEARXNG_MCP_FALLBACK_BASE_URLS: オプションのカンマ区切りのフォールバック用SearXNGインスタンス

  • SEARXNG_MCP_TRANSPORT: stdiostreamable-http、または sse

  • SEARXNG_MCP_SEARCH_TIMEOUT: バックエンド検索のタイムアウト(秒)

  • SEARXNG_MCP_FETCH_TIMEOUT: フェッチのタイムアウト(秒)

  • SEARXNG_MCP_SEARCH_CACHE_TTL: 検索キャッシュのTTL(秒)

  • SEARXNG_MCP_FETCH_CACHE_TTL: フェッチキャッシュのTTL(秒)

  • SEARXNG_MCP_FETCH_VERIFY_TLS: フェッチ時のTLS検証をスキップするには 0 に設定

  • SEARXNG_MCP_RENDER_TIMEOUT: レンダリングフェッチのブラウザナビゲーションタイムアウト

  • SEARXNG_MCP_RENDER_WAIT_MS: レンダリングフェッチでDOMコンテンツ読み込み後に追加で待機する時間

  • SEARXNG_MCP_RENDER_CONCURRENCY: 同時レンダリングフェッチの制限数

  • SEARXNG_MCP_RENDER_HEADLESS: ブラウザを表示するには 0 に設定

  • SEARXNG_MCP_RENDER_BROWSER_PATH: ChromiumまたはChromeバイナリの明示的なパス

  • SEARXNG_MCP_RENDER_SANDBOX: Chromiumのサンドボックスを有効に保つには 1 に設定

  • SEARXNG_MCP_RENDER_BLOCK_RESOURCES: レンダリング中に画像、フォント、スタイルシート、メディアを許可するには 0 に設定

  • SEARXNG_MCP_RENDER_AUTO_FALLBACK: 自動レンダリングフォールバックを無効にするには 0 に設定

  • SEARXNG_MCP_RENDER_AUTO_MIN_WORDS: 自動レンダリングをより積極的に行うにはこの値を下げる

  • SEARXNG_MCP_RENDER_AUTO_MIN_CHARS: 自動レンダリングをより積極的に行うにはこの値を下げる

  • SEARXNG_MCP_CACHE_DIR: キャッシュディレクトリのパス

ベンチマーク

uv run searxng-mcp-bench --rounds 3

ベンチマークレポートの内容:

  • 生のSearXNGバックエンドレイテンシ

  • トークンとして認識可能な検索出力サイズ

  • マージされたマルチクエリ検索レイテンシ

  • マルチクエリリサーチレイテンシ

  • フェッチ抽出レイテンシ

  • レンダリングフェッチレイテンシ

  • バッチフェッチ抽出レイテンシ

  • レンダリングバッチフェッチレイテンシ

ドキュメント

ビルドとテスト

uv sync --all-groups
uv run pytest -q
uv run python -m compileall src
uv run mkdocs build --strict

依存関係のメンテナンス

手動チェック:

uv lock --upgrade --dry-run
uvx --from pip-audit pip-audit

自動チェック:

  • uv の依存関係とGitHub Actionsに対する毎週のDependabot PR

  • 脆弱性スキャンとアップグレードのドライランを行う毎週の Dependency Health ワークフロー

Install Server
F
license - not found
A
quality
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

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

  • A
    license
    Not graded
    quality
    A
    maintenance
    An MCP server that acts as a bridge to SearXNG instances, allowing AI models to perform web searches with privacy-focused search tools. It supports both STDIO and HTTP transports, featuring built-in rate limiting and session management.
    462
    7
    MIT
  • F
    license
    A
    quality
    C
    maintenance
    MCP server that provides a search_web tool to query a self-hosted SearXNG instance and return structured web search results.
    1

View all related MCP servers

Related MCP Connectors

  • Serper MCP — wraps the Serper Google Search API (serper.dev)

  • MCP server for Google search results via SERP API

  • Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.

View all MCP Connectors

Latest Blog Posts

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/88plug/searxng-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server