Skip to main content

MCP Web Search Tool

Web search and content extraction with support for multiple providers and operation modes.

  • Tech: TypeScript, MCP SDK
  • Tool name: web_search

A unified web search tool with four operation modes and two search providers.

Input Schema

FieldTypeRequiredDescription
querystringYesSearch query or URL (depending on mode)
modestringNosearch (default), extract, crawl, map
providerstringNotavily (default) or brave
maxResultsnumberNoMaximum results to return
searchDepthstringNobasic, advanced, comprehensive
freshnessstringNoTime filter for results
includeDomainsstring[]NoLimit to specific domains
excludeDomainsstring[]NoExclude specific domains
includeAnswerbooleanNoInclude AI-generated summary

Operation Modes

ModeDescriptionProviders
searchStandard web search -- returns titles, snippets, URLsTavily, Brave
extractExtract full content from a specific URLTavily only
crawlCrawl a website to get content from multiple pagesTavily only
mapGet a sitemap / list of all pages on a siteTavily only

Examples

Search:

{
"name": "web_search",
"arguments": {
"query": "kubernetes 1.30 release notes",
"mode": "search",
"maxResults": 5,
"searchDepth": "advanced"
}
}

Extract content from URL:

{
"name": "web_search",
"arguments": {
"query": "https://kubernetes.io/docs/concepts/scheduling/",
"mode": "extract"
}
}

Providers

ProviderModes SupportedFeatures
Tavilysearch, extract, crawl, mapAI summaries, advanced depth, domain filtering, freshness
Bravesearch onlyFast search, good for general queries

Provider API keys configured via environment variables.