ECC
The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
npx ecc-install --profile fullThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
npx ecc-install --profile fullFair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
npx n8nAn open-source AI agent that brings the power of Gemini directly into your terminal.
npx @google/gemini-cliShows active maintenance signals
1278 GitHub stars recorded
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"brave-search": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "BRAVE_API_KEY", "docker.io/mcp/brave-search"],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": ["-y", "@brave/brave-search-mcp-server", "--transport", "http"],
"env": {
"BRAVE_API_KEY": "YOUR_API_KEY_HERE"
}
}
}
}
For quick installation, use the one-click installation buttons below:
For manual installation, add the following to your User Settings (JSON) or .vscode/mcp.json:
{
"inputs": [
{
"password": true,
"id": "brave-api-key",
"type": "promptString",
"description": "Brave Search API Key",
}
],
"servers": {
"brave-search": {
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "BRAVE_API_KEY", "mcp/brave-search"],
"env": {
"BRAVE_API_KEY": "${input:brave-api-key}"
}
}
}
}
{
"inputs": [
{
"password": true,
"id": "brave-api-key",
"type": "promptString",
"description": "Brave Search API Key",
}
],
"servers": {
"brave-search-mcp-server": {
"command": "npx",
"args": ["-y", "@brave/brave-search-mcp-server", "--transport", "stdio"],
"env": {
"BRAVE_API_KEY": "${input:brave-api-key}"
}
}
}
}
The server supports the following environment variables:
BRAVE_API_KEY: Your Brave Search API key (required unless BRAVE_API_KEY_FILE is set)BRAVE_API_KEY_FILE: Path to a file containing your Brave Search API key. When set, this takes precedence over BRAVE_API_KEY. Useful for Docker secrets and similar mounted-secret setups.BRAVE_MCP_TRANSPORT: Transport mode ("http" or "stdio", default: "stdio")BRAVE_MCP_PORT: HTTP server port (default: 8080)BRAVE_MCP_HOST: HTTP server host (default: "0.0.0.0")BRAVE_MCP_LOG_LEVEL: Desired logging level("debug", "info", "notice", "warning", "error", "critical", "alert", or "emergency", default: "info")BRAVE_MCP_ENABLED_TOOLS: When used, specifies a space-separated whitelist for supported toolsBRAVE_MCP_DISABLED_TOOLS: When used, specifies a space-separated blacklist for supported toolsBRAVE_MCP_STATELESS: HTTP stateless mode (default: "true"). When running on Amazon Bedrock Agentcore, set to "true".node dist/index.js [options]
Options:
--brave-api-key <string> Brave API key
--brave-api-key-file <string> Path to file containing Brave API key
--transport <stdio|http> Transport type (default: stdio)
--port <number> HTTP server port (default: 8080)
--host <string> HTTP server host (default: 0.0.0.0)
--logging-level <string> Desired logging level (one of _debug_, _info_, _notice_, _warning_, _error_, _critical_, _alert_, or _emergency_)
--enabled-tools Tools whitelist (only the specified tools will be enabled)
--disabled-tools Tools blacklist (included tools will be disabled)
--stateless <boolean> HTTP Stateless flag
brave_local_search)Searches for local businesses and places with detailed information including ratings, hours, and AI-generated descriptions.
Parameters:
brave_web_search with automatic location filteringNote: Requires Pro plan for full local search capabilities. Falls back to web search otherwise.
brave_video_search)Searches for videos with comprehensive metadata and thumbnail information.
Parameters:
query (string, required): Search terms (max 400 chars, 50 words)country (string, optional): Country code (default: "US")search_lang (string, optional): Search language (default: "en")ui_lang (string, optional): UI language (default: "en-US")count (number, optional): Results per page (1-50, default: 20)offset (number, optional): Pagination offset (max 9, default: 0)spellcheck (boolean, optional): Enable spell checking (default: true)safesearch (string, optional): Content filtering ("off", "moderate", "strict", default: "moderate")freshness (string, optional): Time filter ("pd", "pw", "pm", "py", or date range)brave_image_search)Searches for images with metadata including URLs, dimensions, and confidence scores.
Parameters:
query (string, required): Search terms (max 400 chars, 50 words)country (string, optional): Country code (default: "US")search_lang (string, optional): Search language (default: "en")count (number, optional): Results per page (1-200, default: 50)safesearch (string, optional): Content filtering ("off", "strict", default: "strict")spellcheck (boolean, optional): Enable spell checking (default: true)brave_news_search)Searches for current news articles with freshness controls and breaking news indicators.
Parameters:
query (string, required): Search terms (max 400 chars, 50 words)country (string, optional): Country code (default: "US")search_lang (string, optional): Search language (default: "en")ui_lang (string, optional): UI language (default: "en-US")count (number, optional): Results per page (1-50, default: 20)offset (number, optional): Pagination offset (max 9, default: 0)spellcheck (boolean, optional): Enable spell checking (default: true)safesearch (string, optional): Content filtering ("off", "moderate", "strict", default: "moderate")freshness (string, optional): Time filter (default: "pd" for last 24 hours)extra_snippets (boolean, optional): Get additional excerpts (Pro plans only)goggles (array, optional): Custom re-ranking definitionsbrave_summarizer)Generates AI-powered summaries from web search results using Brave's summarization API.
Parameters:
key (string, required): Summary key from web search results (use summary: true in web search)entity_info (boolean, optional): Include entity information (default: false)inline_references (boolean, optional): Add source URL references (default: false)Usage: First perform a web search with summary: true, then use the returned summary key with this tool.
brave_place_search)Searches for points of interest (POIs) in a specified geographic area using Brave's Place Search API. Returns rich, structured place data including name, address, opening hours, contact info, ratings, photos, categories, and timezone.
Parameters:
query (string, optional): Query string used to refine the POI search (max 400 chars, 50 words). When omitted, returns general points of interest in the supplied area.latitude (number, optional): Latitude of the search center (-90 to 90). Typically paired with longitude.longitude (number, optional): Longitude of the search center (-180 to 180). Typically paired with latitude.location (string, optional): Location string used as an alternative to latitude/longitude. For US locations prefer the form <city> <state> <country name> (e.g., san francisco ca united states); for non-US locations use <city> <country name> (e.g., tokyo japan).radius (number, optional): Search radius around the supplied coordinates, in meters. If omitted, the search is performed globally.count (number, optional): Number of results to return (1-50, default 20).country (string, optional): Two-letter country code (default US).search_lang (string, optional): Search language (default en).ui_lang (string, optional): UI language (default en-US).units (string, optional): Distance units (metric or imperial, default metric).safesearch (string, optional): Safe search level (off, moderate, strict, default strict).spellcheck (boolean, optional): Whether to spellcheck the query (default true).geoloc (string, optional): Optional geolocation token used to refine results.Optional request headers:
api-version (string, optional): Brave API version (YYYY-MM-DD)accept (string, optional): Response media type (application/json or */*)cache-control (string, optional): Use no-cache to request fresh contentuser-agent (string, optional): User agent originating the requestbrave_llm_context)Retrieves pre-extracted web content optimized for AI agents, LLM grounding, and RAG pipelines.
Parameters:
query (string, required): Search query (max 400 chars, 50 words)country (string, optional): Search country codesearch_lang (string, optional): Search language codecount (number, optional): Maximum number of search results considered (1-50)spellcheck (boolean, optional): Enable spell checkingmaximum_number_of_urls (number, optional): Maximum number of URLs to include (1-50)maximum_number_of_tokens (number, optional): Approximate maximum number of context tokens (1024-32768)maximum_number_of_snippets (number, optional): Maximum number of snippets to include (1-256)context_threshold_mode (string, optional): Threshold mode ("disabled", "strict", "lenient", "balanced")maximum_number_of_tokens_per_url (number, optional): Maximum tokens per URL (512-8192)maximum_number_of_snippets_per_url (number, optional): Maximum snippets per URL (1-100)goggles (string or array, optional): Goggle URL or definition for custom re-rankingfreshness (string, optional): Time filter ("pd", "pw", "pm", "py", or date range)enable_local (boolean, optional): Enable local recallenable_source_metadata (boolean, optional): Include source metadata enrichmentOptional request headers:
x-loc-lat (number, optional): Client latitude (-90 to 90)x-loc-long (number, optional): Client longitude (-180 to 180)x-loc-city (string, optional): Client city namex-loc-state (string, optional): Client state or region codex-loc-state-name (string, optional): Client state or region namex-loc-country (string, optional): Client country codex-loc-postal-code (string, optional): Client postal codeapi-version (string, optional): Brave API version (YYYY-MM-DD)accept (string, optional): Response media type ("application/json" or "/")cache-control (string, optional): Use no-cache to request fresh contentuser-agent (string, optional): User agent originating the request