searxng-mcp
searxng-mcp
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-mcpuvx でインストール
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-mcpClaude 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_lookup、deep_research、research_workflow: プロンプトインターフェースをサポートするクライアント向けのオプションの互換性プロンプト
環境変数
主要な変数:
SEARXNG_MCP_BASE_URL: SearXNGのベースURL、デフォルトはhttp://127.0.0.1:8890SEARXNG_MCP_FALLBACK_BASE_URLS: オプションのカンマ区切りのフォールバック用SearXNGインスタンスSEARXNG_MCP_TRANSPORT:stdio、streamable-http、またはsseSEARXNG_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ワークフロー
Maintenance
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
- AlicenseBqualityDmaintenanceAn MCP server for connecting agentic systems to search systems via searXNG.1128MIT
- AlicenseNot gradedqualityAmaintenanceAn 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.4627MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that integrates the SearXNG API to provide web search with pagination, filtering, and URL content extraction.28MIT
- FlicenseAqualityCmaintenanceMCP server that provides a search_web tool to query a self-hosted SearXNG instance and return structured web search results.1
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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