# How to Use MCP with Brave Search: Complete Integration Guide

> Integrate Brave Search with any MCP client using the brave-search-mcp-server. This guide shows how to connect and authenticate with your BRAVE_API_KEY for seamless integration.

- Repository: [Frank Fiegel/awesome-mcp-servers](https://github.com/punkpeye/awesome-mcp-servers)
- Tags: how-to-guide
- Published: 2026-09-04

---

**You can integrate Brave Search with any MCP-compatible client by connecting to the brave-search-mcp-server, which wraps Brave's Search API into a standardized Model Context Protocol interface requiring only a `BRAVE_API_KEY` environment variable for authentication.**

The punkpeye/awesome-mcp-servers repository catalogs the official Brave Search MCP implementation at lines 30–31 of its README.md, providing the entry point for developers looking to add web search capabilities to AI assistants. This integration abstracts Brave's REST API into a discoverable tool definition that handles query formatting, authentication, and response normalization automatically.

## Understanding the Brave Search MCP Server

The brave-search-mcp-server repository implements the MCP specification to expose Brave's Search API as a callable tool. According to the awesome-mcp-servers source at `README.md#L30-L31`, this server supports web search, image search, news search, video search, and local point-of-interest queries through a unified interface.

The server operates by translating MCP `CALL` requests into HTTPS requests to `https://api.search.brave.com/res/v1/web/search`. When an AI client invokes the `search_brave` tool, the server forwards the query parameters to Brave's API, normalizes the JSON response, and returns structured data containing titles, snippets, and URLs.

## Authentication and Environment Setup

Brave offers a **free tier** that allows limited queries without an API key, making initial testing straightforward. For production usage or higher quota limits, you must provide authentication via the `BRAVE_API_KEY` environment variable.

Set the variable before starting the MCP server:

```bash
export BRAVE_API_KEY="your_api_key_here"

```

The server reads this key at startup to authenticate requests against Brave's API endpoints.

## Configuring Clients for MCP Brave Search

### Claude Desktop Integration

To enable Brave Search in Claude Desktop, add the tool definition to your MCP tools configuration file (typically located at `~/.config/claude/mcp/tools.json`):

```json
{
  "name": "search_brave",
  "description": "Web search using Brave's Search API",
  "parameters": {
    "type": "object",
    "properties": {
      "query": { "type": "string", "description": "Search query" },
      "region": { "type": "string", "description": "Optional region code" },
      "language": { "type": "string", "description": "Optional language code" }
    },
    "required": ["query"]
  },
  "endpoint": "https://mcp.brave-search.ai"
}

```

After restarting Claude Desktop, the assistant can invoke `search_brave` directly during conversations.

### Command Line Usage

You can invoke the Brave Search MCP server directly from the terminal using standard MCP I/O:

```bash

# Install the Brave Search MCP wrapper

npx -y brave-search-mcp-server

# Execute a search via stdin/stdout

echo '{"tool":"search_brave","args":{"query":"latest AI research papers"}}' | \
  mcp call https://mcp.brave-search.ai

```

The server returns normalized JSON containing search results with titles, URLs, and snippets.

### Python Client Implementation

For programmatic access, use the `mcp-client` library to connect to the hosted Brave MCP server:

```python
from mcp_client import MCPClient

# Connect to the Brave Search MCP endpoint

client = MCPClient(base_url="https://mcp.brave-search.ai")

# Perform a web search

resp = client.call(
    tool="search_brave",
    args={"query": "climate change policy 2024"}
)

for result in resp["results"]:
    print(f"- {result['title']} ({result['url']})")

```

This approach integrates seamlessly into data pipelines or autonomous agent workflows.

## Available Search Parameters

The `search_brave` tool accepts the following parameters as defined in the MCP tool schema:

- **query** (required): The search string to submit to Brave
- **region** (optional): Geographic region code for localized results
- **language** (optional): Language code to filter results

The server handles different search types (web, image, news, video) through separate internal endpoints, all accessible via the unified `search_brave` interface.

## Alternative Implementations in the Ecosystem

The awesome-mcp-servers repository lists additional integrations that leverage Brave Search:

- At `README.md#L436`, the catalog references browser automation tools that combine Brave Search with Chromium-based browsing capabilities
- Line 2999 documents `idapixl-web-research-mcp`, a higher-level research wrapper that bundles Brave Search with additional data processing features
- Line 3004 provides the direct repository link to brave/brave-search-mcp-server for source code access

## Summary

- The **brave-search-mcp-server** wraps Brave's Search API into a standardized MCP tool discoverable by any compatible client
- Authentication requires only the `BRAVE_API_KEY` environment variable, with a free tier available for limited usage
- The server supports multiple search types including web, image, news, video, and local POI queries through the `search_brave` tool
- Integration requires no code changes on the AI model side—clients automatically discover tool definitions and handle invocation via JSON-RPC
- Configuration examples for Claude Desktop, CLI, and Python clients are documented in the punkpeye/awesome-mcp-servers repository at lines 30–31 and 3004 of README.md

## Frequently Asked Questions

### Do I need an API key to use Brave Search with MCP?

No, Brave offers a **free tier** that functions without an API key for limited query volumes, allowing immediate testing of the MCP integration. For higher quotas or production deployments, set the `BRAVE_API_KEY` environment variable before starting the server.

### What search types does the Brave MCP server support?

The server supports five distinct search categories: **web search**, **image search**, **news search**, **video search**, and **local point-of-interest queries**. All types are accessible through the unified `search_brave` tool interface, with the server routing requests to the appropriate Brave API endpoint internally.

### How do I configure Brave Search in Claude Desktop?

Add the JSON tool definition to your Claude Desktop MCP configuration file (located at `~/.config/claude/mcp/tools.json` or through the GUI), specifying the `search_brave` tool name, required query parameter, and server endpoint. Restart Claude Desktop to load the tool definition, after which the assistant can invoke searches automatically during conversations.

### Where can I find the official Brave Search MCP server repository?

The authoritative source code resides in the **brave/brave-search-mcp-server** repository, cataloged in punkpeye/awesome-mcp-servers at [`README.md`](https://github.com/punkpeye/awesome-mcp-servers/blob/main/README.md) lines 30–31 and 3004. The awesome-mcp-servers repository serves as the central index for discovering MCP implementations, including alternative wrappers like `idapixl-web-research-mcp` listed at line 2999.