mcpField
R
researchsearch

researchsearch

ローカル
github.com/CloudCorpRecords検索02 週間前に更新

researchsearch について

researchsearchは、Tavily APIを利用するウェブ調査用CLI・MCPサーバーです。ランキング検索、ページ抽出、サイトクロール、URLマッピングに対応し、利用にはTavily APIキーが必要です。

主な機能

  1. 01回答生成にも対応するランキング検索
  2. 02ページ本文の抽出
  3. 03上限を指定したサイトクロール
  4. 04到達可能なサイトURLのマッピング
  5. 05CLIとstdio MCPサーバー

活用シーン

  1. 01ランキング付き抜粋で情報源を検索
  2. 02指定ページからテキストを抽出
  3. 03深さと広さを制限してサイトを巡回
  4. 04ページを読む前にサイト構成を確認

MCP 対応

stdio経由でMCPクライアントにTavilyの検索、抽出、クロール、マッピングツールを提供します。`TAVILY_API_KEY`が必要で、ツールの応答は対応するTavily APIの結果です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-researchsearch": {
"command": "npx",
"args": [
"-y",
"@reneturcios/researchsearch"
]
}
}
}
起動コマンドnpx -y @reneturcios/researchsearch

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/researchsearch0.1.0
ocighcr.io/cloudcorprecords/researchsearch:0.1.0

ツール

4

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
daysnumberいいえニューストピックを検索する過去の日数。起点は今日です。
querystringはいウェブで実行する検索クエリ。
topicstringいいえ検索トピック:「general」、「news」、または「finance」。
max_resultsnumberいいえ返す検索結果の最大数。
search_depthstringいいえ検索深度:「basic」または「advanced」。未設定の場合、サービスが選択します。
include_answerbooleanいいえAI が生成した結果の要約を含めるかどうか。
exclude_domainsarrayいいえ結果から除外するドメインのリスト。
include_domainsarrayいいえ結果を限定するドメインのリスト。これらのドメインの結果のみが返されます。
include_raw_contentbooleanいいえ各結果のクリーニング済みページ生コンテンツを含めるかどうか。

詳細

researchsearch

researchsearch は、Tavily API を利用したウェブ向けのリサーチデスクです。順位付けされたコンテンツ付きの検索結果(任意で生成された回答も含む)を検索し、特定のページから読みやすいテキストを抽出し、設定した制限の範囲内でサイトをページごとにクロールし、サイトの構造をマッピングして、読む前に掲載内容を確認できます。コマンドラインから、またはエージェント向けの MCP サーバーとして利用できます。

Tavily API キーが必要です。TAVILY_API_KEY 環境変数に設定してください。設定されていない場合、リクエストを送信する前に、不足している変数名を示すエラーが発生し、すべての操作が停止します。

インストール

export TAVILY_API_KEY="tvly-..."
npx @reneturcios/researchsearch search "composting basics"

または、コンテナイメージを実行します。

docker run -i -e TAVILY_API_KEY="tvly-..." ghcr.io/cloudcorprecords/researchsearch

コンテナはデフォルトで MCP サーバーを起動します(下記を参照)。CLI として使うには、CLI 引数を渡してください。

CLI

# Search; results print as JSON
researchsearch search "composting basics"
researchsearch search "rate decision" --topic news --days 3 --max-results 5 --answer

# Extract the clean content of one or more pages
researchsearch extract https://example.com/article
researchsearch extract https://example.com/a https://example.com/b --depth advanced

# Crawl a site from a starting page
researchsearch crawl https://example.com --max-depth 2 --limit 25
researchsearch crawl https://example.com --instructions "Focus on the guides"

# Map a site's structure (URLs only, no page content)
researchsearch map https://example.com --max-depth 1 --limit 50

researchsearch --version

終了コード:成功時は 0、操作の失敗時は 1(TAVILY_API_KEY の未設定、サービスからの HTTP エラー、ホストに到達できない場合)、使用方法のエラー時は 2 です。

MCP サーバー

1 つの実行ファイルで両方の使い方に対応します。mcp サブコマンドで、標準入出力を使用する MCP サーバーを起動します。

npx -y @reneturcios/researchsearch mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "researchsearch": {
      "command": "npx",
      "args": ["-y", "@reneturcios/researchsearch", "mcp"],
      "env": {
        "TAVILY_API_KEY": "tvly-..."
      }
    }
  }
}
ツール
ツール入力返される内容
tavily-searchquery(文字列、必須)、search_depth、topic、days、max_results、include_answer、include_raw_content、include_domains、exclude_domains(すべて任意)順位付けされた結果とコンテンツの抜粋およびスコア。さらに、要求された場合は生成された回答とページの生コンテンツも返します。
tavily-extracturls(文字列配列、必須)、extract_depth、include_images、query(任意)各ページから抽出した読みやすいコンテンツ。失敗は個別に報告されます。
tavily-crawlurl(文字列、必須)、max_depth、max_breadth、limit、instructions、extract_depth(任意)開始 URL から訪問したページと、それぞれから抽出したコンテンツ。
tavily-mapurl(文字列、必須)、max_depth、max_breadth、limit、instructions(任意)ページのコンテンツを含まない、開始ページから到達可能な URL の一覧。

各ツールは、対応する Tavily API エンドポイントを 1 回呼び出します。設定したパラメーターのみが送信されます。未設定の任意パラメーターは省略され、サービス独自のデフォルト値が適用されます。各レスポンスはサービスの JSON で、変更されずに返されます。

開発

npm install
npm run build   # tsc -> dist/
npm test        # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev     # run the CLI from source via tsx

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。