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.