{"passport":{"unfragile":{"@version":"1.0","version":"2026-05","artifact":{"id":"npm_npm-bravebrave-search-mcp-server","slug":"npm-bravebrave-search-mcp-server","name":"@brave/brave-search-mcp-server","type":"mcp","url":"https://www.npmjs.com/package/@brave/brave-search-mcp-server","page_url":"https://unfragile.ai/npm-bravebrave-search-mcp-server","categories":["mcp-servers"],"tags":["api","brave","mcp","search"],"pricing":{"model":"open_source","free":true,"starting_price":null},"status":"active","verified":false},"capabilities":[{"id":"npm_npm-bravebrave-search-mcp-server__cap_0","uri":"capability://search.retrieval.web.results.retrieval.via.mcp","name":"web-results-retrieval-via-mcp","description":"Exposes Brave Search's web results API through the Model Context Protocol (MCP), allowing LLM agents and tools to query the web and receive structured search results (title, URL, description, snippet) without direct HTTP calls. Implements MCP resource/tool handlers that translate search queries into Brave API requests and serialize responses back to the LLM context.","intents":["I need my AI agent to search the web and get current information without making direct API calls","I want to integrate web search into my Claude or other MCP-compatible LLM without writing custom API wrappers","I need to provide my LLM with real-time web results as part of a multi-step reasoning task"],"best_for":["LLM application developers building agents with Claude, Anthropic, or other MCP-compatible models","Teams building AI-powered research tools that need current web data","Developers migrating from REST API calls to standardized MCP tool interfaces"],"limitations":["Requires Brave Search API key — free tier has rate limits (typically 2000 queries/month)","MCP protocol overhead adds latency compared to direct REST calls","Search results are limited to Brave's index — cannot search proprietary or paywalled content","No built-in result caching — each query hits the API, consuming quota"],"requires":["Node.js 16+ (MCP server runtime)","Brave Search API key (free or paid tier)","MCP-compatible client (Claude Desktop, Cline, or custom MCP host)","@brave/brave-search-mcp-server npm package"],"input_types":["text (search query string)","optional parameters (count, offset, freshness filters)"],"output_types":["structured JSON (array of result objects with title, url, description, snippet)","raw text (serialized for LLM context)"],"categories":["search-retrieval","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_1","uri":"capability://search.retrieval.image.search.results.retrieval","name":"image-search-results-retrieval","description":"Retrieves image search results from Brave Search API through MCP, returning structured metadata (image URL, source URL, title, thumbnail) for each image match. Implements separate MCP tool handler for image queries distinct from web results, allowing agents to search for visual content and receive URLs suitable for downstream image processing or display.","intents":["I need my AI agent to find images related to a topic and return URLs for further processing","I want to search for images programmatically without building custom image search infrastructure","I need to provide image results to an LLM that can reason about visual content"],"best_for":["Developers building visual research tools or image-heavy AI applications","Teams creating content discovery agents that need both text and image results","LLM applications that need to reference or analyze images found on the web"],"limitations":["Returns URLs only — does not download or cache images; client must handle image fetching","Image metadata is limited to what Brave's crawler extracts (title, source, thumbnail URL)","No built-in image filtering by license, size, or content type","Subject to Brave Search rate limits and API quota"],"requires":["Node.js 16+","Brave Search API key with image search enabled","MCP-compatible client","@brave/brave-search-mcp-server npm package"],"input_types":["text (image search query)","optional parameters (count, offset)"],"output_types":["structured JSON (array of image result objects with url, source, title, thumbnail)","serialized text for LLM context"],"categories":["search-retrieval","image-visual"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_2","uri":"capability://search.retrieval.video.search.results.retrieval","name":"video-search-results-retrieval","description":"Exposes Brave Search's video search capability through MCP, returning structured video metadata (title, URL, source, duration, thumbnail) for video content matching a query. Implements dedicated MCP tool handler for video queries, enabling agents to discover and reference video content without parsing video platform APIs directly.","intents":["I need my agent to find videos related to a topic and return URLs and metadata","I want to search for video content programmatically as part of a research workflow","I need to provide video results to an LLM that can reason about available video resources"],"best_for":["Developers building video discovery or media research tools","Teams creating comprehensive research agents that need multi-media results (text, images, video)","LLM applications that need to reference or summarize video content"],"limitations":["Returns metadata and URLs only — does not download, transcode, or analyze video content","Video metadata limited to what Brave's crawler extracts (title, source, duration estimate)","No built-in filtering by video length, quality, or platform","Subject to Brave Search API rate limits"],"requires":["Node.js 16+","Brave Search API key with video search enabled","MCP-compatible client","@brave/brave-search-mcp-server npm package"],"input_types":["text (video search query)","optional parameters (count, offset)"],"output_types":["structured JSON (array of video result objects with title, url, source, duration, thumbnail)","serialized text for LLM context"],"categories":["search-retrieval","image-visual"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_3","uri":"capability://search.retrieval.rich.results.extraction.with.structured.data","name":"rich-results-extraction-with-structured-data","description":"Extracts and returns rich result types (news, recipes, products, knowledge panels, etc.) from Brave Search API through MCP, providing structured data beyond standard web snippets. Implements MCP tool handler that parses Brave's rich result objects and exposes them as typed, structured outputs suitable for LLM reasoning or downstream processing.","intents":["I need my agent to get structured data (news articles, product info, recipes) not just web snippets","I want to search for specific result types (e.g., news, products) and get parsed, structured data","I need rich metadata (ratings, prices, publication dates) from search results for analysis"],"best_for":["Developers building specialized search applications (news aggregators, product finders, recipe discovery)","Teams creating LLM agents that need to reason about structured data from search results","Applications requiring rich metadata (prices, ratings, dates) for filtering or ranking"],"limitations":["Rich result availability depends on Brave's crawler and indexing — not all queries return rich results","Rich result structure varies by type (news vs. products vs. recipes) — requires flexible parsing","No guarantee of completeness — some fields may be missing for certain result types","Rich results are limited to what Brave's API exposes — cannot request custom data structures"],"requires":["Node.js 16+","Brave Search API key","MCP-compatible client","@brave/brave-search-mcp-server npm package"],"input_types":["text (search query)","optional parameters (result type filters, count)"],"output_types":["structured JSON (typed objects with rich result fields: news articles with dates/sources, products with prices/ratings, recipes with ingredients/instructions)","serialized text for LLM context"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_4","uri":"capability://search.retrieval.ai.powered.search.summarization","name":"ai-powered-search-summarization","description":"Leverages Brave Search's built-in AI summarization to generate concise summaries of search results through MCP, returning both raw results and AI-generated summaries. Implements MCP tool handler that calls Brave's summarization endpoint and returns structured output combining search results with summary text, enabling agents to get instant insights without post-processing.","intents":["I need my agent to search the web and get an instant AI summary of the top results","I want to provide my LLM with both raw search results and a synthesized summary for faster reasoning","I need to reduce token usage by getting pre-summarized search results instead of processing raw snippets"],"best_for":["Developers building research assistants that need fast, summarized information","Teams optimizing LLM token usage by pre-summarizing search results","Applications requiring quick insights from web search without multi-step processing"],"limitations":["Summarization quality depends on Brave's AI model — may miss nuance or context","Summaries are generated from top results only — may not reflect full search result diversity","Summarization adds latency compared to raw search results (typically 1-3 seconds additional)","Summarization feature may require premium Brave Search tier or have separate rate limits"],"requires":["Node.js 16+","Brave Search API key with summarization enabled (may require paid tier)","MCP-compatible client","@brave/brave-search-mcp-server npm package"],"input_types":["text (search query)","optional parameters (summary length, result count)"],"output_types":["structured JSON (search results array + summary text field)","serialized text combining results and summary for LLM context"],"categories":["search-retrieval","text-generation-language"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_5","uri":"capability://tool.use.integration.mcp.protocol.server.hosting.and.lifecycle","name":"mcp-protocol-server-hosting-and-lifecycle","description":"Implements a complete MCP server that hosts Brave Search tools and manages the MCP protocol lifecycle (connection, tool registration, request/response handling, error handling). Uses Node.js MCP SDK to expose search capabilities as standardized MCP tools, handling protocol negotiation, message serialization, and connection state management.","intents":["I need to run a local or remote MCP server that exposes Brave Search to my LLM client","I want to integrate Brave Search into Claude Desktop or another MCP-compatible tool","I need to manage the lifecycle of an MCP server (startup, shutdown, error recovery)"],"best_for":["Developers deploying MCP servers for LLM integration","Teams running Claude Desktop with custom MCP tools","Organizations building internal MCP infrastructure"],"limitations":["MCP server adds process overhead — requires dedicated Node.js runtime","No built-in clustering or load balancing — single-process server limits concurrency","Error handling relies on MCP client to retry — no built-in request queuing or backoff","Server state is not persisted — restarts lose any in-flight requests"],"requires":["Node.js 16+","npm or yarn package manager","@brave/brave-search-mcp-server npm package","Brave Search API key (set as environment variable)","MCP-compatible client (Claude Desktop, Cline, custom host)"],"input_types":["MCP protocol messages (JSON-RPC over stdio or HTTP)","environment variables (API key configuration)"],"output_types":["MCP protocol responses (tool results, errors, capabilities)","server logs (stdout/stderr)"],"categories":["tool-use-integration","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_6","uri":"capability://safety.moderation.api.key.configuration.and.authentication","name":"api-key-configuration-and-authentication","description":"Manages Brave Search API key authentication through environment variables, implementing secure credential handling for the MCP server. Validates API key presence at startup and passes credentials to Brave API requests, supporting both development (local env files) and production (system environment) configurations.","intents":["I need to securely configure my Brave Search API key for the MCP server","I want to run the server in different environments (dev, staging, prod) with different API keys","I need to validate that my API key is correct before the server starts"],"best_for":["Developers deploying MCP servers in multiple environments","Teams managing API credentials securely","Organizations with strict credential management policies"],"limitations":["API key is passed as environment variable — requires secure environment setup","No built-in key rotation — requires manual updates and server restart","No per-user API key isolation — single key shared across all MCP clients","No audit logging of API key usage — cannot track which client made which request"],"requires":["Brave Search API key (free or paid tier)","Environment variable setup (BRAVE_SEARCH_API_KEY or similar)","Node.js 16+"],"input_types":["environment variables (API key string)"],"output_types":["validation status (success/failure at startup)","authenticated API requests to Brave Search"],"categories":["safety-moderation","tool-use-integration"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_7","uri":"capability://search.retrieval.search.result.filtering.and.parameters","name":"search-result-filtering-and-parameters","description":"Supports optional search parameters (count, offset, freshness, language, region) through MCP tool arguments, allowing clients to customize search behavior without making multiple requests. Implements parameter validation and translation to Brave API query parameters, enabling fine-grained control over result quantity, recency, and locale.","intents":["I need to limit search results to a specific count or page through the MCP tool","I want to search for recent results only (news, updates) without old content","I need to search in a specific language or region to get localized results"],"best_for":["Developers building search UIs that need pagination and filtering","Teams creating region-specific or language-specific search applications","Applications requiring fresh results (news, stock prices, weather)"],"limitations":["Parameter support depends on Brave API capabilities — not all filters may be available","Freshness filters are approximate — Brave's crawler may not have indexed the latest content","Language/region filtering applies to result ranking, not strict filtering — may still return mixed results","Offset-based pagination is inefficient for large result sets — no cursor-based pagination"],"requires":["Node.js 16+","@brave/brave-search-mcp-server npm package","MCP-compatible client that supports tool arguments"],"input_types":["text (search query)","optional parameters: count (integer), offset (integer), freshness (string: 'day'/'week'/'month'), language (string), region (string)"],"output_types":["filtered search results (respecting count, offset, freshness parameters)","structured JSON with result metadata"],"categories":["search-retrieval","data-processing-analysis"],"confidence":0.5,"matches":0,"success_rate":0},{"id":"npm_npm-bravebrave-search-mcp-server__cap_8","uri":"capability://safety.moderation.error.handling.and.api.failure.recovery","name":"error-handling-and-api-failure-recovery","description":"Implements error handling for Brave API failures (rate limits, invalid queries, network errors) through MCP error responses, translating HTTP errors into structured MCP error objects. Provides meaningful error messages and status codes to clients, enabling graceful degradation and client-side retry logic.","intents":["I need my agent to handle search failures gracefully (rate limits, network errors)","I want to know why a search failed so I can retry or adjust my query","I need to implement retry logic in my LLM agent based on error types"],"best_for":["Developers building resilient LLM agents that handle API failures","Teams implementing retry strategies and circuit breakers","Applications requiring detailed error diagnostics"],"limitations":["Error handling is reactive — server cannot prevent rate limit errors, only report them","No built-in retry logic — clients must implement their own backoff strategy","Error messages depend on Brave API — may be opaque or unhelpful for some failures","No request queuing — rate-limited requests are immediately rejected"],"requires":["Node.js 16+","@brave/brave-search-mcp-server npm package","MCP-compatible client that handles error responses"],"input_types":["search requests that may fail (invalid query, rate limit, network error)"],"output_types":["structured MCP error responses (error code, message, details)","HTTP status codes (429 for rate limit, 400 for invalid query, 500 for server error)"],"categories":["safety-moderation","automation-workflow"],"confidence":0.5,"matches":0,"success_rate":0}],"trust":{"score":28,"verified":false,"data_access_risk":"high","permissions":["Node.js 16+ (MCP server runtime)","Brave Search API key (free or paid tier)","MCP-compatible client (Claude Desktop, Cline, or custom MCP host)","@brave/brave-search-mcp-server npm package","Node.js 16+","Brave Search API key with image search enabled","MCP-compatible client","Brave Search API key with video search enabled","Brave Search API key","Brave Search API key with summarization enabled (may require paid tier)"],"failure_modes":["Requires Brave Search API key — free tier has rate limits (typically 2000 queries/month)","MCP protocol overhead adds latency compared to direct REST calls","Search results are limited to Brave's index — cannot search proprietary or paywalled content","No built-in result caching — each query hits the API, consuming quota","Returns URLs only — does not download or cache images; client must handle image fetching","Image metadata is limited to what Brave's crawler extracts (title, source, thumbnail URL)","No built-in image filtering by license, size, or content type","Subject to Brave Search rate limits and API quota","Returns metadata and URLs only — does not download, transcode, or analyze video content","Video metadata limited to what Brave's crawler extracts (title, source, duration estimate)","builder identity is not verified yet","no observed match outcomes yet"],"rank_breakdown":{"adoption":0.05,"quality":0.28,"ecosystem":0.42,"match_graph":0.25,"freshness":0.6,"weights":{"adoption":0.25,"quality":0.25,"ecosystem":0.15,"match_graph":0.23,"freshness":0.12}},"observed_outcomes":{"matches":0,"success_rate":0,"avg_confidence":0,"top_intents":[],"last_matched_at":null},"maintenance":{"status":"active","updated_at":"2026-05-24T12:16:23.903Z","last_scraped_at":"2026-05-03T14:23:36.451Z","last_commit":null},"community":{"stars":null,"forks":null,"weekly_downloads":null,"model_downloads":null,"model_likes":null}},"distribution":{"claim_url":"https://unfragile.ai/submit?claim=npm-bravebrave-search-mcp-server","compare_url":"https://unfragile.ai/compare?artifact=npm-bravebrave-search-mcp-server"}},"signature":"UDoQB2dKH/f+ozUe56urZ/M9dHVnZF5JhIMMCGoJWxANYKlvJZj5CWGsV5oxU4CGnC/masucYEFjg3dHRX8eBw==","signedAt":"2026-06-20T02:12:03.469Z","signedBy":"unfragile.ai","version":1},"_links":{"self":"https://unfragile.ai/api/v1/passport/npm-bravebrave-search-mcp-server","artifact":"https://unfragile.ai/npm-bravebrave-search-mcp-server","verify":"https://unfragile.ai/api/v1/verify?slug=npm-bravebrave-search-mcp-server","publicKey":"https://unfragile.ai/api/v1/trust-passport-public-key","spec":"https://unfragile.ai/trust","schema":"https://unfragile.ai/schema.json","docs":"https://unfragile.ai/docs"}}