ai-search-mcp
AI Search MCP
エージェント向けに作られた Web 検索 MCP サーバー:設定不要ですぐ使える無料検索エンジン、プラグイン可能な高品質エンジン、内蔵キャッシュ、時間フィルタリング、そして1回の呼び出しで調査を完了する
research統合ツール。An agent-friendly web search MCP server — zero-config free engines, region-aware failover, freshness filtering, and a one-call
researchtool.
なぜ作るのか(Why)
検索はエージェントにとって最も頻度の高いツールですが、既存のソリューションには決定的な欠点があります:
既存の方法 | 問題 |
公式 | 既知の URL しか取得できず、検索ができない |
Tavily / Brave / Exa 公式 MCP | 品質は高いが、すべて有料 API Key が必要 |
コミュニティ DuckDuckGo MCP | 無料だが脆弱、出力が非構造化、キャッシュ/リトライなし |
ai-search-mcp がこの穴を埋めます:ゼロ設定ですぐ使え(DuckDuckGo / Bing / 百度 / 搜狗)、リージョンに応じて最適なエンジンを自動選択してフェイルオーバー、時間フィルタにも対応。さらに「検索 → 選択 → 取得 → 要約」という一連の調査を1回の research 呼び出しに圧縮できます。
Related MCP server: websearch-skill
特徴(Features)
🆓 ゼロ設定ですぐ使える:
npx ai-search-mcpを実行するだけ。API Key は一切不要🔌 マルチエンジン・プラグ可能:無料エンジン
duckduckgo·bing·baidu·so360+ 有料エンジンbrave·tavily🌏 リージョン連携の自動エンジン選択:
SEARCH_ENGINE=auto(デフォルト)→ 中国リージョンはbing→baidu→sogou、その他はduckduckgo→bingを利用。429/タイムアウト時は自動フェイルオーバー。カンマ区切りのエンジンチェーンに対応🕒 時間フィルタ:
freshness=day|week|month|yearまたはtimeRange="YYYY-MM-DD..YYYY-MM-DD"を各エンジンへ自動マッピング🧠 エージェント向け出力:構造化 JSON(
{ id, title, url, snippet, domain })で、生 HTML ではない。各結果には安定したidがあり、そのまま引用可能🧭
research統合ツール:1回の呼び出し = 検索 + 上位ページ取得 → エビデンスブリーフ(5〜10往復のツール呼び出を削減)⚡ 内蔵キャッシュ(TTL、デフォルト10分):重複するネットワークリクエストを減らし、高速化と省リソース化を実現
🛡️ エンジニアリング冗長:タイムアウト、指数バックオフ再試行、統一エラーコード。
RATE_LIMITEDエラーではsuggestedEngine/retryAfterの提案も返却🐢 礼儀正しいクローラー内蔵:エンジンごとのレート制限(デフォルト8回/分)、ランダムなリクエスト間隔を設定し、プラットフォームのリスク検知を能動的に回避。アンチスクレイピングの対処は一切しない(コンプライアンス優先)
📄
fetch_pageツール:任意の URL(または検索結果のid)を読みやすい Markdown に変換🌏 プロキシ対応:
SEARCH_HTTP_PROXY/HTTP(S)_PROXY🧪 ビルド不要の純 JS(CommonJS)。130 のユニットテスト + エンドツーエンドスモークテスト
クイックスタート(Quick Start)
Node.js >= 18 が必要です。
# 直接用 npx 运行(无需安装)
npx -y ai-search-mcp
# 或全局/本地安装
npm i -g ai-search-mcp
ai-search-mcpClaude Desktop
claude_desktop_config.json に次を追加します:
{
"mcpServers": {
"ai-search-mcp": {
"command": "npx",
"args": ["-y", "ai-search-mcp"]
}
}
}Cursor / Cline / その他の MCP 対応クライアント
{
"mcpServers": {
"ai-search-mcp": {
"command": "npx",
"args": ["-y", "ai-search-mcp"],
"env": {
"SEARCH_REGION": "cn-zh"
}
}
}
}中国ユーザーは
SEARCH_REGION=cn-zhを追加することを推奨します。国内で直接接続可能なエンジンチェーン(bing → baidu → sogou)を自動選択し、プロキシ不要で利用できます。
ソースから実行
git clone https://github.com/zhulingyu666/ai-search-mcp.git
cd ai-search-mcp
npm install
npm startツール説明(Tools)
search — 検索
{
"query": "2026年 大模型 最新进展",
"maxResults": 10,
"site": "github.com",
"region": "us-en",
"freshness": "week"
}戻り値(構造化 JSON):
{
"query": "2026年 大模型 最新进展",
"queryRewritten": "大模型 最新进展",
"queryYear": 2026,
"engine": "bing",
"engineSwitched": false,
"cached": false,
"total": 10,
"deduped": 2,
"freshnessApplied": true,
"freshnessAutoInferred": true,
"timeRange": "2025-08-25..2026-08-25",
"results": [
{
"id": "a1b2c3d4",
"title": "...",
"url": "https://...",
"snippet": "...",
"domain": "example.com"
}
]
}中文查询自动改写:クエリに中国語が含まれている「20xx年」という年代表記(例:「2026年 大模型 最新进展」)がある場合、ツールは年号語を削除し、
freshness=yearを自動付与して時間の意図を補償します。これは Bing などが中国語の分かち書きに弱く、年号が先頭にあると「2026年百科/日历」のような意味論的な結果が返るためです。この書き換えはqueryRewritten/queryYear/freshnessAutoInferredで透過的に返るため、エージェント側で受け入れるか判断できます。
パラメータ | 型 | デフォルト | 説明 |
| string | — | 検索キーワード(必須) |
| number | 10 | 返却件数(1〜20) |
| string | — | 特定のドメインのみに限定、例: |
| string[] | — | これらのドメインの結果のみ返す、例: |
| string[] | — | これらのドメインを除外、例: |
| string | — | リージョンヒント:DDG 的 |
| string | — |
|
| string | — | 正确な時間範囲 |
各結果には安定した
id(sha1 プレフィックス)が付与されます。このidをfetch_pageに渡すと、ページの詳細を読むことができます。URL を手動で組み立てる必要はありません。
research — 1回の呼び出しで調査を完了
エージェントの「検索 → ページ選択 → 取得 → 要約」というループの代わりに、1回の呼び出しで完了します:
{
"query": "2026 LLM open source models comparison",
"maxResults": 5,
"fetchTopN": 2,
"freshness": "month"
}戻り値はエビデンスブリーフ:
内訳
{
"query": "...",
"engine": "bing",
"overview": { "total": 5, "results": [ { "id": "...", "title": "...", "url": "...", "snippet": "...", "domain": "..." } ] },
"pages": [ { "id": "...", "url": "...", "title": "...", "headings": [ { "level": 1, "text": "..." } ], "content": "...", "length": 4000, "truncated": false } ],
"note": "证据简报已就绪,请基于页面内容总结并标注来源 URL。"
}複数ページを並列取得。単一のページが失敗した場合は
{ url, error }として記録され、全体の結果に影響はありませんスマートなページ選択:pages はドメインの多様性に基づいて選びます(最初に各ドメインの最高ランクの1件、その後ランクの順に補完)。単一サイトの独占を回避し、あるサイトの 403/反スクレイピング時も他ドメインのページは影響を受けません。
rankフィールドは検索結果内での元の順位extractMode(デフォルトsummary):summaryはノイズを除去した本文の要点を返し(トークン節約)、fullはページ全体の Markdown を返します要約はホストモデルが実施します——MCP 内部ではどの LLM にも依存せず、外部依存ゼロ、ベンダー非依存を維持
fetch_page — ウェブページを取得して構造化コンテンツに変換
{
"url": "https://example.com/article",
"extractMode": "summary",
"maxLength": 8000
}extractMode:summary(デフォルト。トークンを節約し、ノイズ除去後の本文mainTextを返す)/full(ページ全体のmarkdownを返す)戻り値:
{ url, title, description, headings, mainText, markdown, length, truncated, cached }。headingsはページの見出し構成なので、エージェントはまず構造を確認してから詳細を読むかを選べます
検索結果の id も利用できます:{ "id": "a1b2c3d4", "maxLength": 8000 }。
設定(環境変数)
変数 | デフォルト | 説明 |
|
| 単一エンジン、またはカンマ区切りのエンジンチェーン(例: |
| — | エンジン自動選択で使用するデフォルトリージョン。例: |
|
| デフォルトの結果件数(1〜20) |
|
| キャッシュ TTL(秒)。 |
| — | キャッシュ永続化ファイルのパス。例: |
|
| 単一リクエストのタイムアウト(ミリ秒) |
|
| 各エンジンの1分あたりの最大リクエスト数( |
|
| リクエスト間のランダム遅延範囲(ミリ秒)。 |
|
|
|
|
|
|
|
|
|
|
|
|
| — |
|
| — |
|
| — | プロキシのアドレス。例: |
| 内蔵 | カスタム User-Agent |
エンジン比較
エンジン | 無料 | API Key | 時間フィルタ | 説明 |
| ✅ | ❌ | ❌ | 海外専用(中国国内不可用)。インデックス品質は世界最高、アンチスクレイピングが厳しく、海外 IP + Cookie セッションなどが必要 |
| ✅ | ❌ | ✅( | 全世界利用可能。中国リージョンでのデフォルトで、中英文カバレッジが良い、国内からプロキシ不要で直結可能 |
| ✅ | ❌ | ✅( | 全世界対応のフォールバック。中国本土からの直結はタイムアウトすることがある |
| ✅ | ❌ | ❌(none) | 海外専用。ロシア語/CIS コンテンツに強く、一部ネットワークからは到達性が良い、スクレイピング耐性は中 |
| ✅ | ❌ | ❌(none) | 360 検索。データセンター・国内 IP からでも直接接続可能、アンチスクレイピングは比較的寛容、中国語ネイティブなエンジン |
| ✅ | ❌ | ❌(none) | 国内専用。中国語のインデックスは強いが、アンチスクレイピングが厳しい(データセンター IP では Cookie を付与しても画像認証を要求される) |
| ✅ | ❌ | ❌(none) | 国内専用。WeChat コンテンツに強い。ただし JS 生成の SNUID セッションが無いと 302 でリダイレクトされる |
| ❌ | ✅ | ✅( | 公式 API。品質高く、無料クォータあり |
| ❌ | ✅ | ✅( | LLM/RAG 検索専用に設計 |
ネットワーク注意事項
中国本土はプロキシ不要: デフォルトの
SEARCH_ENGINE=auto+SEARCH_REGION=cn-zh→bing → so360 → baidu → sogouはすべて直結で使用でき、追加設定は一切不要。特に 360 検索(so360)はデータセンター・ホスティング IP に対してもっとも寛容で、国内で最も信頼性のある中国語ネイティブエンジンです。海外展开設:デフォルトで
SEARCH_REGIONを設定しない(またはcn以外)→ デフォルトチェーンはgoogle → bing → duckduckgo → yandex。Google は品質が最高、Bing は最も安定しており、いずれかが失敗すると自動で切り替えます。Google/Yandex が中国国内から到達不可または認証コードにブロックされました。無料エンジンはレート制限あり。429 は構造化エラー(
RATE_LIMITED、suggestedEngineとretryAfterを維持)として返します。エンジンチェーンは 429 やタイムアウト時に自動フェイルオーバーします。一部サイト(百度百科、中国国内ポータルなど)はスクリプト取得を拒否(HTTP 403):
fetch_pageは構造化エラーを返し、researchは該当ページを失敗として記録して続行します。DuckDuckGo / Brave / Tavily にアクセスするにはプロキシが必要ですか:
SEARCH_ENGINE=duckduckgo SEARCH_HTTP_PROXY=http://127.0.0.1:7890 ai-search-mcp丁寧なクローラー方針:ツールはエンジンごとにレート制限(デフォルト 8回/分)とランダム間隔を組み込みます。百度/搜狗 では、トップページからセッションCookie(
BAIDUID/SUID)を担保することで成功率を上げますが、キャプチャー回避、UA 偽装のローテーション、プロキシプールのローテーションなどのアンチスクリプティングには対応していません(コンプライアンス上の境界)。ローテーションは、403/認証に遭遇した場合はアクセス頻度の低減やエンジン切替で検知してください。百度/搜狗の可用性(実測):これらのエンジンはネットワーク環境に非常に敏感です。データセンター / 海外 IP では、百度は Cookie を設定してもグラフィカル認証(
wappass)が強制されますし、搜狗は JSで生成される SNUID がないと 302 でぶり戻されます(antispider)。そのためデフォルト環境では自動的に Bing/360 へ移します。中国大陸の**住宅用 IP(宽带)**から百度/搜狗が使える場合は、SEARCH_LANG_ROUTING=1を設定することで、中文の検索クエリで百度/搜狗/360(中国語ネイティブ、分かちに優れる)を優先利用できます。私たちは対象サイトの
robots.txtと利用規約を尊重します。本ツールは検索のスニペットとリンクのみを返し、全文を再配布しません。
開発(Development)
npm test # 126 个单元测试(Node 内置 test runner)
node scripts/smoke-test.js # 端到端冒烟:search + freshness + research(需要网络)ログ例(stderr、SEARCH_LOG_LEVEL=debug)
[ai-search-mcp] [info] ready (version 0.3.2, engine=auto, region=cn-zh, logLevel=debug)
[ai-search-mcp] [info] rewrite q="2026年 大模型 最新进展" -> q="大模型 最新进展" +freshness=year
[ai-search-mcp] [info] search q="大模型 最新进展" engine=bing cached=false took=972ms total=3 deduped=1
[ai-search-mcp] [info] fetch url=https://example.com/ len=130 mode=summary took=1189ms
[ai-search-mcp] [debug] engine-fail engine=baidu err=RATE_LIMITED took=1203ms
[ai-search-mcp] [warn] fetch-fail url=https://baike.baidu.com/... err=ENGINE_ERROR took=512msライセンス(License)
Disclaimer:このプロジェクトは独立したオープンソースプロジェクトであり、DuckDuckGo 、Bing/Microsoft、Brave、Tavily、百度、搜狗 との間に関連・推薦・運営・スポンサー関係は一切ありません。百度/搜狗は公開HTMLを解析するものであり、これらのサイトのページ構造が変更された場合、解析が機能しなくなる可能性があります。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Tools
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides comprehensive search capabilities including web search, content extraction, news search, academic search, and AI-powered multi-source research. Enables natural language access to web content and research through a production-ready MCP server.
- AlicenseAqualityBmaintenanceEnables AI agents to perform multi-engine web search, fetch web pages, and extract clean Markdown content via MCP, with no API keys required.35MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to perform web searches with full content retrieval and multi-engine provenance, including trust scoring and local corpus persistence, via MCP integration.42Apache 2.0
- AlicenseAqualityAmaintenanceA multi-engine web search MCP server that integrates with coding agents, offering parallel search, page fetching, X/Twitter search, deep research, and configurable free/API layers.65MIT
Related MCP Connectors
Stealth web browser for agents: search, fetch, click and type through persistent sessions over MCP.
Web research for agents: quality-scored Google search, webpage extraction, and deep research.
Multi-engine search for AI agents. Trust scoring, local corpus, MCP-native. Self-hostable, BYOK.
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/zhulingyu666/ai-search-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server