mcpField
W
web-search

web-search

github.com/hachiman566生産性040 回インストール34 週間前に更新
リポジトリ

web-search について

web-searchは、curlでローカルのSearXNGを検索し、結果を解析するスキルです。エンジン、言語、期間による絞り込みに対応し、スニペットの利用やページ取得の指針も示します。

主な機能

  1. 01curlによるローカルSearXNG検索
  2. 02エンジンと言語による絞り込み
  3. 03期間による検索結果の絞り込み
  4. 04Pythonによる結果スニペットの解析
  5. 05セットアップとトラブルシューティングの案内

活用シーン

  1. 01期間指定で最近のニュースを検索
  2. 02エンジンを選んでコードを検索
  3. 03中国語の検索結果を調査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/hachiman566/miao-skills --skill web-search

インストール後、Claude Code で/web-searchを入力して読み込まれたか確認します。

同梱ファイルscripts/setup.sh

詳細

SearXNG 検索スキル

前提条件: bash skills/searxng/scripts/setup.sh を実行すると、SearXNG が自動的にインストールされ、起動します(Docker ベースで冪等性があり、安全に再実行できます)。

検索

curl を使ってローカルの SearXNG インスタンスにクエリを送信します(推奨 — WebFetch は localhost をブロックします)。

curl -s "http://localhost:8888/search?q=YOUR+QUERY&format=json"

よく使うバリエーション:

# Target specific engines (reduces noise)
curl -s "http://localhost:8888/search?q=react+hooks&engines=google,bing&format=json"

# Filter by recency
curl -s "http://localhost:8888/search?q=openai+news&time_range=week&format=json"

# Chinese content
curl -s "http://localhost:8888/search?q=人工智能&engines=baidu,bing&lang=zh&format=json"

# Dev/code questions
curl -s "http://localhost:8888/search?q=rust+async+error&engines=stackoverflow,github&format=json"

python で検索結果を解析する(推奨):

curl -s "http://localhost:8888/search?q=YOUR+QUERY&format=json" | \
  python3 -c "import sys,json; data=json.load(sys.stdin); [print(f'- {r[\"title\"]}\n  {r[\"url\"]}\n  {r[\"content\"][:150]}') for r in data.get('results',[])[:5]]"

パラメーター

パラメーター説明値
q検索クエリURL エンコードされた文字列
engines特定の検索エンジンgoogle,bing,duckduckgo,stackoverflow,github,baidu,...
lang言語zh、en、all
pagenoページ番号1、2、...
time_range新しさのフィルターday、week、month、year
safesearchセーフサーチ0、1、2

ベストプラクティス

ページを取得する前にスニペットを読みます。 各検索結果には関連する抜粋が content フィールドに含まれており、そこに答えが直接記載されていることもよくあります。ページ全体を取得するとトークンを大幅に消費するため、スニペットだけでは不十分な場合に限って取得してください。

上位 3~5 件に絞ります。 最初の数件でほぼ十分です。検索結果を増やしても、回答の質はほとんど向上せず、トークンが増えるだけです。

タスクに合った検索エンジンを指定します。 関連する検索エンジンに絞ると、ノイズが減り、結果をすばやく取得できます。

  • コード/開発:engines=stackoverflow,github
  • 中国語コンテンツ:engines=baidu,bing&lang=zh
  • 最近の出来事:&time_range=week を追加

SearXNG が起動していない場合

まずセットアップスクリプトを実行してから、再試行してください。

bash skills/web-search/scripts/setup.sh

WebFetch に関する注意

SearXNG には WebFetch を使用しないでください。SSRF 対策により、すべてのローカル/プライベートアドレス(localhost、127.0.0.1、192.168.x.x、[::1]、カスタム hosts エントリ)がブロックされます。必ず Bash 経由で curl を使用してください。

注意事項

  • 最初のリクエストは遅くなる場合があります(検索エンジンのウォームアップ)。
  • リモートまたは本番環境で使用する場合は、SearXNG インスタンスに認証を追加してください。

コメント