Brave Search MCP server
Last verified: 2026-09
Web search via the Brave Search API.
Official reference Browser & search Needs a secret Claude Desktop, Cursor, Windsurf, Claude Code, VS Code
What it does
Live web search through Brave's Search API. The model can look things up instead of guessing from training data. You pay Brave per query after the free tier.
It sits in Browser & search: Three different jobs get mixed up here.
Good for
- Ask 'what shipped in Next.js 15' and get current URLs, not training data.
- Find official docs before the model invents an old API.
- Local search (Brave's local results) for a place or business.
- One search API in the host — not Brave plus Exa plus Tavily.
Tools
- brave_web_search — General web search.
- brave_local_search — Local / maps-ish results where Brave has them.
Config (Claude Desktop / Cursor / Windsurf)
Paste the JSON below. Same mcpServers shape. Replace placeholder paths and secrets.
Windows paths look like C:\\Users\\you\\project, not /path/to.
Host-side steps →
Claude Desktop
| OS | Config file |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json
(usually C:\Users\<you>\AppData\Roaming\Claude\) |
| Linux | ~/.config/Claude/claude_desktop_config.json |
Cursor
| Scope | macOS / Linux | Windows |
|---|---|---|
| This project | .cursor/mcp.json in the repo root | |
| This user | ~/.cursor/mcp.json |
%USERPROFILE%\.cursor\mcp.json |
Windsurf
| OS | Config file |
|---|---|
| macOS / Linux | ~/.codeium/windsurf/mcp_config.json |
| Windows | %USERPROFILE%\.codeium\windsurf\mcp_config.json |
{
"mcpServers": {
"brave_search": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-brave-search"
],
"env": {
"BRAVE_API_KEY": "BSA..."
}
}
}
}
Windsurf remote MCP: use serverUrl instead of url if the block below is HTTP.
One-liner: npx -y @modelcontextprotocol/server-brave-search
Secrets it wants: BRAVE_API_KEY
How to get started
- Get a Brave Search API key.
- Put BRAVE_API_KEY in the env block and restart the host.
- Ask a question that needs a current source, then check the cited links.
Access risk
Queries leave your machine. The key is billed. Do not put a production key in a shared config file.
When to skip it
Skip it if you already pay for Exa or Tavily — one search provider is enough. Skip it if you only need to read a URL you already have (Fetch).
Vs alternatives
| Server | Official? | Needs a secret? | Best for |
|---|---|---|---|
| Brave Search | Yes | Yes | Web search via the Brave Search API. |
| Exa | No | Yes | Neural web search aimed at agents. |
| Tavily | No | Yes | Search API built for LLM retrieval. |
| Fetch | Yes | Yes | Fetch a URL and turn the page into readable text. |
More in Browser & search
FAQ
Where do I get a key?
Brave Search API. Put it in BRAVE_API_KEY. Every call bills or counts against the free tier.
Is this the Brave browser?
No. It is the Search API. It does not drive Brave or see your bookmarks.
Brave or Fetch?
Brave finds URLs. Fetch (or Playwright) reads one. Install both if you want 'search then open'.
Why not three search servers?
They return overlapping links and triple the bill. Pick one.