When to pick Brave Search MCP Server
- You want results from Brave's own crawler. Its search tools use the Brave Search API, making it a concrete choice when the source of the search index matters to your application.
- Your agent needs different result formats for different tasks. Use
brave_news_searchfor news with freshness controls,brave_image_searchfor image URLs and dimensions, orbrave_video_searchfor video metadata and thumbnails. - You are building location-based research.
brave_place_searchaccepts coordinates, a location name and a radius, and returns structured place details such as addresses and opening hours. Fullbrave_local_searchcapabilities require a Pro plan; otherwise, that tool falls back to web search. - You need search-derived material for an LLM.
brave_llm_contextreturns pre-extracted content with token and snippet limits. For a generated summary, call web search withsummary: true, then pass its summary key tobrave_summarizer.
When to pick Tavily MCP
- Your research continues after finding a link. Use
tavily-searchto find pages andtavily-extractto pull clean text from a chosen page. This fits tasks where the agent needs page content after the initial search. - You need to explore a website beyond individual search results.
tavily-crawlfollows site links, whiletavily-maplists the domain's URL structure. Choose the operation according to whether you need to explore pages or identify their addresses. - You want a hosted MCP connection. Tavily offers a remote endpoint, and its web operations execute on Tavily's side without starting a local browser. The npm option also supports a local stdio connection.
- You want reusable search settings. Set
DEFAULT_PARAMETERSin the local environment fortavily-search, or send aDEFAULT_PARAMETERSheader with the remote connection. Documented settings include search depth, image inclusion and maximum results.
Main differences
- Tool organization differs: Brave separates search by result type and adds place search, LLM context and summarization. Tavily organizes work around search, page extraction, crawling and URL mapping. Its documented workflow extends from discovery into collecting website content.
- Deployment differs: Brave runs as a process you launch, using stdio by default or streamable HTTP. Tavily offers both an npm stdio process and a provider-hosted remote endpoint, so you can choose whether to run the MCP process locally.
- Authentication has different layers: Brave needs a Search API key, but its HTTP endpoint is unauthenticated and binds to loopback by default. Tavily's remote connection accepts an API key in the URL, a bearer header where supported, or OAuth with compatible clients.
- Both send requests to external services. Brave queries go to the Brave Search API; Tavily processes searches and target-page operations on its infrastructure. Running an npm process locally does not make those web operations local.
- Configuration targets different needs: Brave can enable or disable named tools through environment variables. Tavily documents reusable request defaults and an optional
TAVILY_HUMAN_IDvalue forwarded on API calls for per-user analytics.
Setup
For Brave, configure your client to launch npx -y @brave/brave-search-mcp-server and set BRAVE_API_KEY. Alternatively, set BRAVE_API_KEY_FILE to a file containing the key; it takes precedence. Stdio is the default. Add --transport http when you need HTTP.
For Tavily locally, launch npx -y tavily-mcp@latest with TAVILY_API_KEY in the client environment. For a hosted Claude Code connection, run claude mcp add --transport http tavily https://mcp.tavily.com/mcp, then start Claude Code, open /mcp, select Tavily and complete authentication.
· github.com/brave/brave-search-mcp-server, github.com/tavily-ai/tavily-mcp
