Brave Search With Proxy
Brave Search MCP-Server
Ein MCP-Server, der die Brave Search API für die Web- und lokale Suche nutzt, mit optionaler HTTP-Proxy-Konfiguration.
Dieses Repository verzweigt sich von den Model Context Protocol-Servern und ersetzt die native fetch Implementierung durch die Bibliothek node-fetch-native .
Der Server verwendet standardmäßig die Umgebungsvariablen http_proxy und https_proxy , um Anfragen über den Proxyserver weiterzuleiten, sofern diese festgelegt sind. Sie können auch die Umgebungsvariable BRAVE_SEARCH_PROXY festlegen, um einen anderen Proxyserver zu verwenden.
Merkmale
Websuche : Allgemeine Abfragen, Nachrichten, Artikel, mit Paginierungs- und Aktualitätskontrollen
Lokale Suche : Finden Sie Geschäfte, Restaurants und Dienstleistungen mit detaillierten Informationen
Flexible Filterung : Kontrollieren Sie Ergebnistypen, Sicherheitsstufen und Inhaltsaktualität
Intelligente Fallbacks : Die lokale Suche greift automatisch auf das Web zurück, wenn keine Ergebnisse gefunden werden
Related MCP server: MCP2Brave
Werkzeuge
brave_web_search
Führen Sie Websuchen mit Paginierung und Filterung durch
Eingänge:
query(Zeichenfolge): Suchbegriffecount(Anzahl, optional): Ergebnisse pro Seite (max. 20)offset(Zahl, optional): Paginierungsoffset (max. 9)
mutige_lokale_Suche
Suchen Sie nach lokalen Unternehmen und Dienstleistungen
Eingänge:
query(Zeichenfolge): Lokale Suchbegriffecount(Zahl, optional): Anzahl der Ergebnisse (max. 20)
Fällt automatisch auf die Websuche zurück, wenn keine lokalen Ergebnisse gefunden werden
Konfiguration
Einen API-Schlüssel erhalten
Registrieren Sie sich für ein Brave Search API-Konto
Wählen Sie einen Plan (Kostenlose Stufe verfügbar mit 2.000 Abfragen/Monat)
Generieren Sie Ihren API-Schlüssel über das Entwickler-Dashboard
Verwendung mit Claude Desktop
Fügen Sie dies zu Ihrer claude_desktop_config.json hinzu:
Docker
{
"mcpServers": {
"brave-search": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BRAVE_API_KEY",
"mcp/brave-search"
],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE",
"BRAVE_SEARCH_PROXY": "https://example.com:10890" // Optional, remove if not needed
}
}
}
}NPX
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": [
"-y",
"@kwp-lab/mcp-brave-search"
],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE",
"BRAVE_SEARCH_PROXY": "https://example.com:10890" // Optional, remove if not needed
}
}
}
}Verwendung mit VS Code
Verwenden Sie für eine schnelle Installation die unten stehenden Ein-Klick-Installationsschaltflächen ...
Für die manuelle Installation fügen Sie den folgenden JSON-Block zu Ihrer Benutzereinstellungsdatei (JSON) in VS Code hinzu. Drücken Sie dazu Ctrl + Shift + P und geben Sie Preferences: Open User Settings (JSON) ein.
Optional können Sie es einer Datei namens .vscode/mcp.json in Ihrem Arbeitsbereich hinzufügen. Dadurch können Sie die Konfiguration mit anderen teilen.
Beachten Sie, dass der
mcpSchlüssel in der Datei.vscode/mcp.jsonnicht benötigt wird.
Docker
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "brave_api_key",
"description": "Brave Search API Key",
"password": true
}
],
"servers": {
"brave-search": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BRAVE_API_KEY",
"mcp/brave-search"
],
"env": {
"BRAVE_API_KEY": "${input:brave_api_key}",
"BRAVE_SEARCH_PROXY": "https://example.com:10890" // Optional, remove if not needed
}
}
}
}
}NPX
{
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "brave_api_key",
"description": "Brave Search API Key",
"password": true
}
],
"servers": {
"brave-search": {
"command": "npx",
"args": ["-y", "@kwp-lab/mcp-brave-search"],
"env": {
"BRAVE_API_KEY": "${input:brave_api_key}",
"BRAVE_SEARCH_PROXY": "https://example.com:10890" // Optional, remove if not needed
}
}
}
}
}Bauen
Docker-Build:
docker build -t mcp/brave-search:latest -f ./Dockerfile .Lizenz
Dieser MCP-Server ist unter der MIT-Lizenz lizenziert. Das bedeutet, dass Sie die Software unter den Bedingungen der MIT-Lizenz frei verwenden, ändern und verbreiten dürfen. Weitere Informationen finden Sie in der LICENSE-Datei im Projekt-Repository.
Available Tools
2 toolsbrave_local_searchA
Searches for local businesses and places using Brave's Local Search API. Best for queries related to physical locations, businesses, restaurants, services, etc. Returns detailed information including:
Business names and addresses
Ratings and review counts
Phone numbers and opening hours Use this when the query implies 'near me' or mentions specific locations. Automatically falls back to web search if no local results are found.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Local search query (e.g. 'pizza near Central Park') | |
| count | No | Number of results (1-20, default 5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It discloses automatic fallback to web search and lists returned information (names, ratings, hours). It lacks details on rate limits or authorization, but the key behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a concise paragraph with bullet points. It front-loads the purpose, then gives usage context, return info, and a fallback note. No unnecessary words, well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but description explains return details (business names, addresses, ratings, etc.) and fallback behavior. It misses error handling or pagination, but for a local search tool with two simple params, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (both params described), baseline 3. The description adds meaning by specifying query examples ('pizza near Central Park') and default count behavior, plus clarifies what the return values include. This goes beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches for local businesses and places using Brave's Local Search API. It distinguishes from siblings like brave_web_search by specifying physical locations and business entities, and notes a fallback to web search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Best for queries related to physical locations' and 'Use this when the query implies "near me" or mentions specific locations,' providing clear when-to-use guidance. It does not explicitly state when not to use, but the context is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brave_web_searchA
Performs a web search using the Brave Search API, ideal for general queries, news, articles, and online content. Use this for broad information gathering, recent events, or when you need diverse web sources. Supports pagination, content filtering, and freshness controls. Maximum 20 results per request, with offset for pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query (max 400 chars, 50 words) | |
| count | No | Number of results (1-20, default 10) | |
| offset | No | Pagination offset (max 9, default 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Mentions pagination, content filtering, freshness controls, and maximum results (20). However, does not explicitly state it is a read-only operation or discuss rate limits/auth. Adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences: first states purpose, second provides usage scenarios, third mentions capabilities. No fluff, well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool has 3 params and no output schema. Description covers purpose, usage, and constraints but lacks explanation of return value format or structure. Could be more complete for agent usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; baseline 3. Description adds slight value by reiterating max 20 results and offset usage, but no new parameter details beyond schema. Content filtering and freshness controls are mentioned but are not parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Performs a web search using the Brave Search API' with specific verb+resource. Distinguishes from siblings like brave_answers and brave_local_search by stating 'ideal for general queries, news, articles, and online content.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage context: 'ideal for general queries, news, articles, and online content. Use this for broad information gathering, recent events, or when you need diverse web sources.' Lacks explicit when-not-to-use or alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
brave_local_search - First observed
brave_web_search
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: brave_local_search targets local businesses and physical locations with 'near me' queries, while brave_web_search handles general web searches for information, news, and online content. There is no overlap in functionality, as each tool is specialized for different query types and data sources, making it easy for an agent to choose the correct one based on the user's intent.
Both tool names follow a consistent pattern: 'brave_' prefix followed by a descriptive term ('local_search' and 'web_search') using snake_case. This naming convention clearly indicates the server domain (Brave Search) and the specific search type, making the tools predictable and easy to understand without any deviations or mixed styles.
With only 2 tools, the server feels thin for a search domain, as it might benefit from additional tools like image search, news search, or advanced filtering options. However, the tools cover the core local and web search functionalities adequately, so it's borderline but not severely lacking. A typical search server would have more tools to handle diverse query types and result formats.
The server covers the essential search operations for local and web queries, with each tool providing detailed capabilities like pagination, filtering, and fallback mechanisms. Minor gaps exist, such as no dedicated tools for image or video searches, but agents can work around this using the web search tool. The surface is reasonably complete for basic search needs without significant dead ends.
Maintenance
Related MCP Connectors
Official SerpApi MCP server for Google, Bing, and other search engines.
The official MCP Server for the Mux API
MCP server for Google search results via SERP API
Related MCP Servers
- -licenseNot gradedqualityAmaintenanceAn MCP server implementation that integrates the Brave Search API, providing both web and local search capabilities.13,25090,196MIT
- AlicenseCqualityDmaintenanceA server based on the MCP protocol that uses the Brave API for web search functionality.63MIT
- AlicenseNot gradedqualityFmaintenanceAn MCP server that integrates the Brave Search API to provide both web and local search capabilities, with features like pagination, filtering, and smart fallbacks.15MIT
- AlicenseAqualityDmaintenanceAn MCP Server implementation that integrates the Brave Search API, providing, Web Search, Local Points of Interest Search, Image Search, Video Search, News Search and LLM Context Search capabilities5196125GPL 3.0