Skip to main content
Glama

mcp-web-search

インターネット検索のためのMCP(Model Context Protocol)サーバー。Vercel にステートレスなHTTP APIとして公開されています。Antigravity などのAIエージェントは、ウェブ検索、ページの読み取り、REST APIの利用、リンクの抽出をアンチボットブロックの問題なしに行えます。


利用可能なツール

ツール

説明

web_search

Tavily API経由でインターネットを検索し、各結果のタイトル、URL、スニペットを返します

read_webpage

Tavily Extractを使用してアンチボットブロックを回避しながらページをダウンロードし、Markdown、プレーンテキスト、またはHTMLでコンテンツを返します

fetch_json

Axios経由で任意のURLにGETリクエストを行い、レスポンスのJSONを返します(公開REST APIに最適)

extract_links

Tavily Extractを使用してページを読み取り、ドメインによるフィルタリングに対応したすべてのリンクを抽出します


Related MCP server: Spider MCP Server

技術スタック

  • Next.js 16(App Router)— サーバーフレームワーク

  • mcp-handler — MCPプロトコル用のHTTPアダプター

  • @modelcontextprotocol/server — MCP v2 SDK

  • Tavily API — 公式の検索・ページ抽出メカニズム(アンチボットブロックに耐性あり)

  • axios + cheerio + turndown — REST APIの利用とHTMLコンテンツのパース

  • Zod v4 — ツールのスキーマ検証

  • Vercel Hobby — 無料ホスティング(リクエストごとに60秒のタイムアウト)


Tavily APIの設定

Vercelなどのデータセンターは、ウェブコンテンツをスクレイピングしようとするとファイアウォールによってブロックされることが多いため、このプロジェクトでは、ページの読み取りとインターネット検索を100%信頼して実行できるAI特化型APIであるTavilyを使用しています。

完全に機能させるには:

  1. tavily.com で無料アカウントを作成します(月1,000リクエストが無料で利用できます)。

  2. ホスティングのダッシュボード(例:Vercel)に移動し、次の環境変数を追加します:

    • TAVILY_API_KEY: sua_chave_aqui


Vercelへのデプロイ

前提条件

  • Node.js 20+

  • pnpm

1. リポジトリのクローン

git clone https://github.com/suportebono/mcp-web-search.git
cd mcp-web-search
pnpm install

2. ローカルでのテスト

pnpm dev

MCPエンドポイントは http://localhost:3000/api/mcp で利用できます。

ツールを視覚的に確認するには:

npx @modelcontextprotocol/inspector http://localhost:3000/api/mcp

3. Vercelで公開

npx vercel

デプロイ後、https://mcp-web-search-xxx.vercel.app 形式のURLが発行されます。TAVILY_API_KEY の設定を忘れないでください!


Antigravityでの設定

~/.gemini/config/mcp_config.json ファイルを編集します(存在しない場合は作成):

{
  "mcpServers": {
    "web-search": {
      "serverUrl": "https://seu-projeto.vercel.app/api/mcp"
    }
  }
}

Antigravityを再起動し、... > MCP Servers で確認します — 4つのツールがリスト表示されるはずです。


他のMCPクライアントでの設定

Claude Desktop / Cursor / Windsurf

クライアントの設定ファイルに追加します:

{
  "mcpServers": {
    "web-search": {
      "url": "https://seu-projeto.vercel.app/api/mcp"
    }
  }
}

stdioのみをサポートするクライアント

mcp-remote パッケージをプロキシとして使用します:

{
  "mcpServers": {
    "web-search": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://seu-projeto.vercel.app/api/mcp"]
    }
  }
}

ツールリファレンス

Tavily APIを使用してインターネットを検索します。

パラメーター:

名前

必須

説明

query

string

検索語句

num_results

number

結果数(デフォルト:5)

戻り値の例:

[
  {
    "title": "Next.js 15 — Blog",
    "url": "https://nextjs.org/blog/next-15",
    "snippet": "Next.js 15 introduces...",
    "source": "nextjs.org"
  }
]

read_webpage

Tavily Extractを使用してペイウォールやアンチボットを回避しながら、URLのコンテンツを読み取って抽出します。

パラメーター:

名前

必須

説明

url

string

ページのURL

mode

"markdown" | "text" | "raw_html"

出力形式(デフォルト:markdown

コンテンツを返す前に、スクリプト、スタイル、広告、ナビゲーション、フッターを自動的に削除します。


fetch_json

Axios経由でGETリクエストを行い、生のJSONを返します。

パラメーター:

名前

必須

説明

url

string

APIのURL

headers

Record<string, string>

オプションのHTTPヘッダー


Tavily Extractを使用してページの実際のHTML(動的サイトも含む)を読み取り、すべてのリンクを抽出します。

パラメーター:

名前

必須

説明

url

string

ページのURL

filter

string

この部分文字列を含むリンクをフィルタリングします(例:"github.com"

戻り値の例:

[
  {
    "text": "Documentação",
    "href": "/docs",
    "absolute_url": "https://exemplo.com/docs"
  }
]

プロジェクト構成

mcp-web-search/
├── app/
│   └── api/
│       └── mcp/
│           └── route.ts        ← Endpoint MCP (GET + POST)
├── lib/
│   ├── mcp-server.ts           ← Registro de todas as ferramentas
│   └── tools/
│       ├── web-search.ts       ← Busca via Tavily API
│       ├── read-webpage.ts     ← Leitura e parsing de páginas (Tavily Extract)
│       ├── fetch-json.ts       ← Fetch de APIs REST genéricas
│       └── extract-links.ts    ← Extração de links via Tavily Extract HTML
├── next.config.ts
└── package.json

サポートされているMCPプロトコル

このサーバーはMCP 2026-07-28仕様をStreamable HTTP statelessトランスポートで実装しており、最新のクライアントと互換性があります。また、2025年世代のStreamable HTTP仕様を使用するクライアント向けの自動フォールバックも提供します。


ライセンス

MIT

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to access real-time web data through search, markdown scraping, and browser automation while bypassing anti-bot protections. It provides tools for web research, e-commerce monitoring, and data extraction from across the globe.
    4
    6,103
    6
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to perform web searches, extract webpage content, and conduct end-to-end search-and-extract operations using multiple search providers and content extraction methods.
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to fetch and extract clean, readable content from web pages, and search within pages for specific queries, without needing a full browser.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Reliable web access for AI agents: smart HTTP, rotating proxies, and full-browser rendering.

  • AI-powered browser automation — navigate, click, fill forms, and extract data from any website.

  • Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.

View all MCP Connectors

Latest Blog Posts

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/DaviDaminelli/mcp-web-search'

If you have feedback or need assistance with the MCP directory API, please join our Discord server