brave avatar

Brave Search Mcp Server

brave/brave-search-mcp-serverOfficial

Connects Claude to Brave's Search API with eight distinct tools covering web, local business, image, video, news, and place search, plus AI summarization and LLM context retrieval. You get proper filtering controls for freshness, safe search, language, and result types. The image search returns URLs rather than base64 blobs as of version 2.x, keeping context windows clean. The summarizer tool is a two step process: run a web search with the summary flag enabled, then pass the returned key to generate an AI summary with optional inline citations. Local and place search require Pro API plans for full functionality. Defaults to stdio transport now, but supports HTTP if you set the environment variable.

install copies · 90 days. Times the install command was copied on this site in the last 90 days, bots filtered.
5
GitHub stars
1.6K
tools
8
auth
Secret needed
transport
STDIO
env var
1
last updated
Aug 20, 2026

Install

From registry metadata
$ npx add-mcp @brave/brave-search-mcp-server --name brave-search --env 'BRAVE_API_KEY=${BRAVE_API_KEY}'

Run in your terminal. add-mcp asks which agents to add it to, then asks for each value it needs. Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add brave-search --env BRAVE_API_KEY=YOUR_BRAVE_API_KEY -- npx -y @brave/brave-search-mcp-server

Run in your terminal. Replace YOUR_* placeholders with real values; add --scope user to install for every project.

Tools

Verified live · 8 tools

Verified live against the running server on Jun 10, 2026.

brave_web_searchPerforms web searches using the Brave Search API and returns comprehensive search results with rich metadata. When to use: - General web searches for information, facts, or current topics - Location-based queries (restaurants, businesses, points of interest) - News searches fo...15 params

Performs web searches using the Brave Search API and returns comprehensive search results with rich metadata. When to use: - General web searches for information, facts, or current topics - Location-based queries (restaurants, businesses, points of interest) - News searches fo...

Parameters* required
countinteger
Number of results (1-20, default 10). Applies only to web search results (i.e., has no effect on locations, news, videos, etc.)default: 10
countrystring
Search query country, where the results come from. The country string is limited to 2 character country codes of supported countries.one of ALL · AR · AU · AT · BE · BRdefault: US
extra_snippetsboolean
A snippet is an excerpt from a page you get as a result of the query, and extra_snippets allow you to get up to 5 additional, alternative excerpts. Only available under Free AI, Base AI, Pro AI, Ba...
freshnessvalue
Filters search results by when they were discovered. The following values are supported: 'pd' - Discovered within the last 24 hours. 'pw' - Discovered within the last 7 days. 'pm' - Discovered with...
gogglesvalue
Goggles act as a custom re-ranking on top of Brave's search index. The parameter supports both a url where the Goggle is hosted or the definition of the Goggle. Multiple goggle URLs and/or definiti...
offsetinteger
Pagination offset (max 9, default 0)default: 0
query*string
Search query (max 400 chars, 50 words)
result_filterarray
Result filter (default ['web', 'query'])
safesearchstring
Filters search results for adult content. The following values are supported: 'off' - No filtering. 'moderate' - Filters explicit content (e.g., images and videos), but allows adult domains in sear...one of off · moderate · strictdefault: moderate
search_langstring
Search language preference. The 2 or more character language code for which the search results are provided.one of ar · eu · bn · bg · ca · zh-hansdefault: en
spellcheckboolean
Whether to spellcheck the provided query.default: true
summaryboolean
This parameter enables summary key generation in web search results. This is required for summarizer to be enabled.
text_decorationsboolean
Whether display strings (e.g. result snippets) should include decoration markers (e.g. highlighting characters).default: true
ui_langstring
The language of the UI. The 2 or more character language code for which the search results are provided.one of es-AR · en-AU · de-AT · nl-BE · fr-BE · pt-BRdefault: en-US
unitsvalue
The measurement units. If not provided, units are derived from search country.
brave_local_searchBrave Local Search API provides enrichments for location search results. Access to this API is available only through the Brave Search API Pro plans; confirm the user's plan before using this tool (if the user does not have a Pro plan, use the brave_web_search tool). Searches...15 params

Brave Local Search API provides enrichments for location search results. Access to this API is available only through the Brave Search API Pro plans; confirm the user's plan before using this tool (if the user does not have a Pro plan, use the brave_web_search tool). Searches...

Parameters* required
countinteger
Number of results (1-20, default 10). Applies only to web search results (i.e., has no effect on locations, news, videos, etc.)default: 10
countrystring
Search query country, where the results come from. The country string is limited to 2 character country codes of supported countries.one of ALL · AR · AU · AT · BE · BRdefault: US
extra_snippetsboolean
A snippet is an excerpt from a page you get as a result of the query, and extra_snippets allow you to get up to 5 additional, alternative excerpts. Only available under Free AI, Base AI, Pro AI, Ba...
freshnessvalue
Filters search results by when they were discovered. The following values are supported: 'pd' - Discovered within the last 24 hours. 'pw' - Discovered within the last 7 days. 'pm' - Discovered with...
gogglesvalue
Goggles act as a custom re-ranking on top of Brave's search index. The parameter supports both a url where the Goggle is hosted or the definition of the Goggle. Multiple goggle URLs and/or definiti...
offsetinteger
Pagination offset (max 9, default 0)default: 0
query*string
Search query (max 400 chars, 50 words)
result_filterarray
Result filter (default ['web', 'query'])
safesearchstring
Filters search results for adult content. The following values are supported: 'off' - No filtering. 'moderate' - Filters explicit content (e.g., images and videos), but allows adult domains in sear...one of off · moderate · strictdefault: moderate
search_langstring
Search language preference. The 2 or more character language code for which the search results are provided.one of ar · eu · bn · bg · ca · zh-hansdefault: en
spellcheckboolean
Whether to spellcheck the provided query.default: true
summaryboolean
This parameter enables summary key generation in web search results. This is required for summarizer to be enabled.
text_decorationsboolean
Whether display strings (e.g. result snippets) should include decoration markers (e.g. highlighting characters).default: true
ui_langstring
The language of the UI. The 2 or more character language code for which the search results are provided.one of es-AR · en-AU · de-AT · nl-BE · fr-BE · pt-BRdefault: en-US
unitsvalue
The measurement units. If not provided, units are derived from search country.
brave_video_searchSearches for videos using Brave's Video Search API and returns structured video results with metadata. When to use: - When you need to find videos related to a specific topic, keyword, or query. - Useful for discovering video content, getting video metadata, or finding videos...9 params

Searches for videos using Brave's Video Search API and returns structured video results with metadata. When to use: - When you need to find videos related to a specific topic, keyword, or query. - Useful for discovering video content, getting video metadata, or finding videos...

Parameters* required
countinteger
Number of results (1-50, default 20). Combine this parameter with `offset` to paginate search results.default: 20
countrystring
Search query country, where the results come from. The country string is limited to 2 character country codes of supported countries.default: US
freshnessvalue
Filters search results by when they were discovered. The following values are supported: 'pd' - Discovered within the last 24 hours. 'pw' - Discovered within the last 7 days. 'pm' - Discovered with...
offsetinteger
Pagination offset (max 9, default 0). Combine this parameter with `count` to paginate search results.default: 0
query*string
The user's search query. Query cannot be empty. Limited to 400 characters and 50 words.
safesearchvalue
Filters search results for adult content. The following values are supported: 'off' - No filtering. 'moderate' - Filter out explicit content. 'strict' - Filter out explicit and suggestive content....default: moderate
search_langstring
Search language preference. The 2 or more character language code for which the search results are provided.default: en
spellcheckboolean
Whether to spellcheck provided query.default: true
ui_langstring
User interface language preferred in response. Usually of the format <language_code>-<country_code>. For more, see RFC 9110.default: en-US
brave_image_searchPerforms an image search using the Brave Search API. Helpful for when you need pictures of people, places, things, graphic design ideas, art inspiration, and more. When relaying results in a markdown environment, it may be helpful to include images in the results (e.g., ![imag...6 params

Performs an image search using the Brave Search API. Helpful for when you need pictures of people, places, things, graphic design ideas, art inspiration, and more. When relaying results in a markdown environment, it may be helpful to include images in the results (e.g., ![imag...

Parameters* required
countinteger
Number of results (1-200, default 50). Combine this parameter with `offset` to paginate search results.default: 50
countrystring
Search query country, where the results come from. The country string is limited to 2 character country codes of supported countries.default: US
query*string
The user's search query. Query cannot be empty. Limited to 400 characters and 50 words.
safesearchvalue
Filters search results for adult content. The following values are supported: 'off' - No filtering. 'strict' - Drops all adult content from search results.default: strict
search_langstring
Search language preference. The 2 or more character language code for which the search results are provided.default: en
spellcheckboolean
Whether to spellcheck provided query.default: true
brave_news_searchThis tool searches for news articles using Brave's News Search API based on the user's query. Use it when you need current news information, breaking news updates, or articles about specific topics, events, or entities. When to use: - Finding recent news articles on specific t...11 params

This tool searches for news articles using Brave's News Search API based on the user's query. Use it when you need current news information, breaking news updates, or articles about specific topics, events, or entities. When to use: - Finding recent news articles on specific t...

Parameters* required
countinteger
Number of results (1-50, default 20)default: 20
countrystring
Search query country, where the results come from. The country string is limited to 2 character country codes of supported countries.default: US
extra_snippetsboolean
A snippet is an excerpt from a page you get as a result of the query, and extra_snippets allow you to get up to 5 additional, alternative excerpts. Only available under Free AI, Base AI, Pro AI, Ba...default: false
freshnessvalue
Filters search results by when they were discovered. The following values are supported: 'pd' - Discovered within the last 24 hours. 'pw' - Discovered within the last 7 Days. 'pm' - Discovered with...
gogglesvalue
Goggles act as a custom re-ranking on top of Brave's search index. The parameter supports both a url where the Goggle is hosted or the definition of the Goggle. Multiple goggle URLs and/or definiti...
offsetinteger
Pagination offset (max 9, default 0)default: 0
query*string
Search query (max 400 chars, 50 words)
safesearchvalue
Filters search results for adult content. The following values are supported: 'off' - No filtering. 'moderate' - Filter out explicit content. 'strict' - Filter out explicit and suggestive content....default: moderate
search_langstring
Search language preference. The 2 or more character language code for which the search results are provided.default: en
spellcheckboolean
Whether to spellcheck provided query.default: true
ui_langstring
User interface language preferred in response. Usually of the format <language_code>-<country_code>. For more, see RFC 9110.default: en-US
brave_summarizerRetrieves AI-generated summaries of web search results using Brave's Summarizer API. This tool processes search results to create concise, coherent summaries of information gathered from multiple sources. When to use: - When you need a concise overview of complex topics from m...3 params

Retrieves AI-generated summaries of web search results using Brave's Summarizer API. This tool processes search results to create concise, coherent summaries of information gathered from multiple sources. When to use: - When you need a concise overview of complex topics from m...

Parameters* required
entity_infoboolean
Returns extra entities info with the summary response.default: false
inline_referencesboolean
Adds inline references to the summary response.default: false
key*string
The key is equal to value of field key as part of the Summarizer response model.
brave_llm_contextRetrieves pre-extracted, relevance-ranked web content using Brave's LLM Context API, optimized for AI agents, LLM grounding, and RAG pipelines. Unlike a traditional web search that returns links and short descriptions, this tool returns the actual substance of matching pages —...26 params

Retrieves pre-extracted, relevance-ranked web content using Brave's LLM Context API, optimized for AI agents, LLM grounding, and RAG pipelines. Unlike a traditional web search that returns links and short descriptions, this tool returns the actual substance of matching pages —...

Parameters* required
acceptstring
The default supported media type is application/json.one of application/json · */*
api-versionstring
The API version to use. This is denoted by the format YYYY-MM-DD. Default is the latest that is available. Read more about API versioning at https://api-dashboard.search.brave.com/documentation/gui...
cache-controlstring
Brave Search will return cached content by default. To prevent caching set the Cache-Control header to no-cache. This is currently done as best effort.
context_threshold_modestring
The mode to use to determine the threshold for including content in context. Default is balanced.one of disabled · strict · lenient · balanced
countinteger
The maximum number of search results considered to select the LLM context data. The default is 20 and the maximum is 50.
countrystring
The search query country, where the results come from. The country string is limited to 2 character country codes of supported countries.one of AR · AU · AT · BE · BR · CA
enable_localboolean
Whether to enable local recall. Not setting this value means auto-detect and uses local recall if any of the localization headers are provided.
enable_source_metadataboolean
Enable source metadata enrichment (site_name, favicon) in the sources attribute of the response.
freshnessvalue
Filters search results by when they were discovered. The following values are supported: 'pd' - Discovered within the last 24 hours. 'pw' - Discovered within the last 7 days. 'pm' - Discovered with...
gogglesvalue
Goggles act as a custom re-ranking on top of Brave's search index. The parameter supports both a url where the Goggle is hosted or the definition of the Goggle. Multiple goggle URLs and/or definiti...
maximum_number_of_snippetsinteger
Maximum number of different snippets (or chunks of text) to include in LLM context. The default is 50 and maximum is 256.
maximum_number_of_snippets_per_urlinteger
Maximum number of snippets to include per URL. The default is 50 and maximum is 100.
maximum_number_of_tokensinteger
Approximate maximum number of tokens to include in context. The default is 8192 and maximum is 32768.
maximum_number_of_tokens_per_urlinteger
Maximum number of tokens to include per URL. The default is 4096 and maximum is 8192.
maximum_number_of_urlsinteger
Maximum number of different URLs to include in LLM context.
query*string
The user's search query term. Query can not be empty. Maximum of 400 characters and 50 words in the query.
search_langstring
The search language preference. The 2 or more character language code for which the search results are provided.one of ar · eu · bn · bg · ca · zh-hans
spellcheckboolean
Whether to enable spellcheck on the query.
user-agentstring
The user agent originating the request. Brave search can utilize the user agent to provide a different experience depending on the device as described by the string. The user agent should follow th...
x-loc-citystring
The generic name of the client city

+6 more parameters. See the server's own documentation for the full schema.

brave_place_searchSearches Brave's Place Search API. A single call may populate any combination of 'results' (POIs), 'cities', 'addresses', 'streets', and 'location' (the resolved search area), depending on the query's shape. When to use: - POIs near coordinates or a named area (e.g. "coffee sh...17 params

Searches Brave's Place Search API. A single call may populate any combination of 'results' (POIs), 'cities', 'addresses', 'streets', and 'location' (the resolved search area), depending on the query's shape. When to use: - POIs near coordinates or a named area (e.g. "coffee sh...

Parameters* required
acceptstring
The default supported media type is application/json.one of application/json · */*
api-versionstring
The API version to use. This is denoted by the format YYYY-MM-DD. Default is the latest that is available. Read more about API versioning at https://api-dashboard.search.brave.com/documentation/gui...
cache-controlstring
Brave Search will return cached content by default. To prevent caching set the Cache-Control header to no-cache. This is currently done as best effort.
countinteger
Number of results to return. Maximum is 50. Default is 20.
countrystring
Two-letter country code (ISO 3166-1 alpha-2) used to scope the search. Defaults to 'US'.one of AR · AU · AT · BE · BR · CA
geolocstring
Optional geolocation token used to refine results.
latitudenumber
Latitude of the geographical coordinates around which to search, in degrees (-90 to 90). Typically paired with `longitude`.
locationstring
Location string to search around, used as an alternative to `latitude` and `longitude`. For US locations prefer the form '<city> <state> <country name>' (e.g. 'san francisco ca united states'); for...
longitudenumber
Longitude of the geographical coordinates around which to search, in degrees (-180 to 180). Typically paired with `latitude`.
querystring
Query string. Shape influences the response: POI-like queries -> `results`; bare/ambiguous city names -> `cities`; address- or street-shaped queries with a geographic anchor -> `addresses` and/or `...
radiusnumber
Bias toward results closer to the supplied coordinates, in meters. NOT a hard cutoff -- the API may still return more distant results. If omitted, the search is performed globally.
safesearchstring
Safe search level for the query results. 'off' - No filtering. 'moderate' - Filter out explicit content. 'strict' - Filter out explicit and suggestive content. Defaults to 'strict'.one of off · moderate · strict
search_langstring
Language for the search results. Defaults to 'en'.one of ar · eu · bn · bg · ca · zh-hans
spellcheckboolean
Whether to apply spellcheck before executing the search. Defaults to true.
ui_langstring
User interface language for the response, usually of the form '<language>-<region>'. Defaults to 'en-US'.one of es-AR · en-AU · de-AT · nl-BE · fr-BE · pt-BR
unitsstring
Units of measurement for distance values. Defaults to 'metric'.one of metric · imperial
user-agentstring
The user agent originating the request. Brave Search can utilize the user agent to provide a different experience depending on the device as described by the string. The user agent should follow th...

Sponsors

Configuration

BRAVE_API_KEY*secret

Your API key for the service

Readme

Brave Search MCP Server

An MCP server implementation that integrates the Brave Search API, providing comprehensive search capabilities including web search, local business search, place search, image search, video search, news search, LLM context, and AI-powered summarization. This project supports both STDIO and HTTP transports, with STDIO as the default mode.

Ask DeepWiki

Migration

1.x to 2.x

Default transport now STDIO

To follow established MCP conventions, the server now defaults to STDIO. If you would like to continue using HTTP, you will need to set the BRAVE_MCP_TRANSPORT environment variable to http, or provide the runtime argument --transport http when launching the server.

Response structure of brave_image_search

View the full README on GitHub

Details

Repository
github.com/brave/brave-search-mcp-server
Category
Search & Web Crawling
Package
@brave/brave-search-mcp-server
Transport
STDIO
Auth
Required
Registry
MCP registry, active
Tools verified
Jun 10, 2026

More from brave

Related Search & Web Crawling MCP servers

View all
1cotlet-connect avatarGoogle Search Console MCP Server and API by Cotletcotlet-connect/google-search-console-mcpGoogle Search Console website search performance monitoring MCP server: request indexing.0stars
2firecrawl avatarFirecrawl MCP Serverfirecrawl/firecrawl-mcp-serverFirecrawl, the context API for AI agents: search, scrape, interact with the web, plus paper search.7.8Kstars
3pollinations avatarExa Searchpollinations/pollinationsSearch the live web and fetch clean content from source pages.5.3Kstars
4devshero avatarShadowCrawldevshero/shadowcrawlStealth scraping & search. Bypasses Cloudflare, DataDome & LinkedIn via Cyborg HITL approach.66stars
5pipeworx-io avatarFirecrawlpipeworx-io/mcp-firecrawlFirecrawl MCP — wraps the Firecrawl API (firecrawl.dev) for web scraping / crawling / search…1stars
6tavily-ai avatarTavily Mcptavily-ai/tavily-mcpMCP server for advanced web search using Tavily2.1Kstars