Search1API MCP サーバー
Search1API を使用して検索およびクロール機能を提供するモデル コンテキスト プロトコル (MCP) サーバー。
前提条件
Node.js >= 18.0.0
有効な Search1API API キー (取得および設定方法については、以下のセットアップ ガイドを参照してください)
Related MCP server: WebSearch
インストール(スタンドアロン / 一般)
リポジトリをクローンします。
git clone https://github.com/fatwang2/search1api-mcp.git cd search1api-mcpAPIキーの設定:セクションをご覧ください。
依存関係をインストールしてビルドします。
npm install npm run build注: API キーにプロジェクトの
使用方法(スタンドアロン / 一般)
API キーが設定されていることを確認します (セットアップ ガイドを参照)。
サーバーを起動します。
これで、サーバーは MCP クライアントからの接続を受け入れる準備が整います。
セットアップガイド
1. Search1APIキーを取得する
Search1APIに登録する
ダッシュボードから API キーを取得します。
2. APIキーを設定する
APIキーをサーバーで利用できるようにする必要があります。以下のいずれかの方法を選択してください。
方法 A: プロジェクトの
このメソッドは、LibreChat の現在のバージョンと統合する場合に必要です (以下の特定のセクションを参照)。
search1api-mcpプロジェクトのルート ディレクトリに、.envという名前のファイルを作成します。# In the search1api-mcp directory echo "SEARCH1API_KEY=your_api_key_here" > .envyour_api_key_here実際のキーに置き換えます。npm install && npm run build実行する**前に、**このファイルが存在することを確認してください。
方法 B: 環境変数 (スタンドアロンのみ)
サーバーを起動する前に、 SEARCH1API_KEY環境変数を設定します。
方法 C: MCP クライアント構成 (詳細)
一部のMCPクライアントでは、設定内で環境変数を直接指定できます。これは、CursorやVS Code拡張機能などのクライアントで便利です。
LibreChatユーザーへの注意: LibreChatの現在の制限により、方法A(プロジェクトの.envファイル)が必須となります。詳細な手順については、以下の統合セクションをご覧ください。
LibreChat (Docker) との統合
このセクションでは、Docker 経由で LibreChat と統合するために必要な手順について詳しく説明します。
概要:
このサーバーのリポジトリを、LibreChat の
docker-compose.ymlからアクセスできる場所に複製します。このサーバーのディレクトリ内のプロジェクトを使用して、必要な API キーを構成します。
このサーバーを構築します。
librechat.yamlを編集して、LibreChat にこのサーバーの実行方法を伝えます。ビルドされたサーバー コードが Docker ボリューム バインドを介して LibreChat コンテナー内で使用できることを確認します。
LibreChatを再起動します。
ステップバイステップ:
リポジトリのクローン作成: LibreChatの外部サービスを管理しているホストマシン上のディレクトリ(通常は
docker-compose.ymlと同じディレクトリ)に移動します。一般的な場所は、専用のmcp-serverディレクトリです。# Example: Navigate to where docker-compose.yml lives, then into mcp-server cd /path/to/your/librechat/setup/mcp-server git clone https://github.com/fatwang2/search1api-mcp.gitサーバー ディレクトリに移動します。
cd search1api-mcpAPI キーを構成する (プロジェクト
# Create the .env file echo "SEARCH1API_KEY=your_api_key_here" > .env # IMPORTANT: Replace 'your_api_key_here' with your actual Search1API key**依存関係のインストールとビルド:**この手順では、サーバー コードを
buildディレクトリにコンパイルします。npm install npm run build**
librechat.yamlの設定:**メインのlibrechat.yamlファイルを編集し、LibreChat にこの MCP サーバーの実行方法を指定します。mcp_serversmcp_servers下に以下のエントリを追加します。# In your main librechat.yaml mcp_servers: # You can add other MCP servers here too search1api: # Optional: Display name for the server in LibreChat UI # name: Search1API Tools # Command tells LibreChat to use 'node' command: node # Args specify the script for 'node' to run *inside the container* args: - /app/mcp-server/search1api-mcp/build/index.jsargsパス (/app/...) は、構築されたサーバーがアクセスされる LibreChat API コンテナー内の場所です (次の手順のボリューム バインドによります)。
Dockerボリュームバインドの設定:
docker-compose.yml(またはおそらくdocker-compose.override.yml)を編集し、ホストマシンのsearch1api-mcpディレクトリをLibreChat APIコンテナにマッピングします。apiapi:サービスのvolumes:セクションを見つけます。# In your docker-compose.yml or docker-compose.override.yml services: api: # ... other service config ... volumes: # ... other volumes likely exist here ... # Add this volume bind: - ./mcp-server/search1api-mcp:/app/mcp-server/search1api-mcp**ホストパス (
./mcp-server/search1api-mcp):**これはdocker-compose.ymlファイルがある場所を基準としたホストマシン上の相対パスです。リポジトリを別の場所にクローンした場合は、この値を調整してください。コンテナパス ( 。
LibreChat を再起動します。 (
docker-compose.yml変更した場合) 再構築して LibreChat スタックを再起動し、変更を適用します。docker compose down && docker compose up -d --build # Or: docker compose restart api (if only librechat.yaml changed)
これで、Search1API サーバーは LibreChat 内でツール プロバイダーとして利用できるようになります。
特徴
ウェブ検索機能
ニュース検索機能
ウェブページコンテンツの抽出
ウェブサイトのサイトマップ抽出
DeepSeek R1による深い思考と複雑な問題解決
Claude Desktop、Cursor、Windsurf、Cline、その他のMCPクライアントとのシームレスな統合
ツール
1. 検索ツール
名前:
search説明: Search1API を使用してウェブを検索する
パラメータ:
query(必須): 自然言語で検索クエリを入力してください。より正確な結果を得るには、具体的かつ簡潔に記述してください。max_results(オプション、デフォルト:10):返される結果の数search_service(オプション、デフォルト: "google"): 使用する検索サービス (google、bing、duckduckgo、yahoo、x、reddit、github、youtube、arxiv、wechat、bilibili、imdb、wikipedia)crawl_results(オプション、デフォルト:0):ウェブページ全体のコンテンツをクロールする結果の数include_sites(オプション): 検索に含めるサイトのリストexclude_sites(オプション): 検索から除外するサイトのリストtime_range(オプション): 検索結果の時間範囲 (「日」、「月」、「年」)
2. ニュースツール
名前:
news説明: Search1API を使用してニュース記事を検索する
パラメータ:
query(必須): 自然言語で検索クエリを入力してください。より正確な結果を得るには、具体的かつ簡潔に記述してください。max_results(オプション、デフォルト:10):返される結果の数search_service(オプション、デフォルト: "bing"): 使用する検索サービス (google、bing、duckduckgo、yahoo、hackernews)crawl_results(オプション、デフォルト:0):ウェブページ全体のコンテンツをクロールする結果の数include_sites(オプション): 検索に含めるサイトのリストexclude_sites(オプション): 検索から除外するサイトのリストtime_range(オプション): 検索結果の時間範囲 (「日」、「月」、「年」)
3. クロールツール
名前:
crawl説明: Search1API を使用して URL からコンテンツを抽出します
パラメータ:
url(必須): クロールするURL
4. サイトマップツール
名前:
sitemap説明: URLからすべての関連リンクを取得します
パラメータ:
url(必須): サイトマップを取得するためのURL
5. 推論ツール
名前:
reasoning説明: 高速な DeepSeek R1 モデルと Web 検索機能を備えた、深い思考と複雑な問題解決のためのツールです (search1api Web サイトで他のモデルに変更できますが、速度は保証されません)
パラメータ:
content(必須): 深く考える必要がある質問または問題
6. トレンドツール
名前:
trending説明: 人気のプラットフォームからトレンドのトピックを取得します
パラメータ:
search_service(必須): トレンドトピックを取得するプラットフォームを指定します (github、hackernews)max_results(オプション、デフォルト:10):返されるトレンドアイテムの最大数
バージョン履歴
v0.2.0: LibreChat 統合のフォールバック
.envサポートが追加され、依存関係が更新されました。v0.1.8: X(Twitter)とRedditの検索サービスを追加
v0.1.7: GitHubとHacker Newsのトレンドツールを追加しました
v0.1.6: Wikipedia検索サービスを追加
v0.1.5: 新しい検索パラメータ(include_sites、exclude_sites、time_range)と新しい検索サービス(arxiv、wechat、bilibili、imdb)を追加しました
v0.1.4: deepseek r1 の推論ツールを追加し、カーソルと Windsurf の設定ガイドを更新しました
v0.1.3: ニュース検索機能を追加
v0.1.2: サイトマップ機能を追加
v0.1.1: ウェブクロール機能を追加
v0.1.0: 検索機能付きの初期リリース
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。