Brave Search

Um servidor para o Brave Search, permitindo capacidades de pesquisa na web por meio de sua API.

Documentação

Servidor MCP Brave Search

smithery badge

Este projeto implementa um servidor Model Context Protocol (MCP) para o Brave Search, permitindo integração com assistentes de IA como o Claude.

Pré-requisitos

  • Python 3.11+
  • uv - Um instalador e resolvedor de pacotes Python rápido

Instalação

Instalação via Smithery

Para instalar o servidor MCP Brave Search para o Claude Desktop automaticamente via Smithery:

npx -y @smithery/cli install @thomasvan/mcp-brave-search --client claude

Instalação Manual

  1. Clone o repositório:

    git clone https://github.com/thomasvan/mcp-brave-search.git
    cd mcp-brave-search
    
  2. Crie um ambiente virtual e instale as dependências usando uv:

    uv venv
    source .venv/bin/activate  # On Windows, use: .venv\Scripts\activate
    uv pip install -r requirements.txt
    
  3. Configure sua chave de API do Brave Search:

    export BRAVE_API_KEY=your_api_key_here
    

    No Windows, use: set BRAVE_API_KEY=your_api_key_here

Uso

  1. Configure seu arquivo de configurações MCP (ex.: claude_desktop_config.json) para incluir o servidor MCP Brave Search:

    {
      "mcpServers": {
        "brave-search": {
          "command": "uv",
          "args": [
            "--directory",
            "path-to\\mcp-python\\mcp-brave-search\\src",
            "run",
            "server.py"
          ],
          "env": {
            "BRAVE_API_KEY": "YOUR_BRAVE_API_KEY_HERE"
          }
        }
      }
    }
    

    Substitua YOUR_BRAVE_API_KEY_HERE pela sua chave real da API Brave.

  2. Inicie o servidor MCP Brave Search executando seu assistente de IA compatível com MCP com a configuração atualizada.

  3. O servidor agora estará em execução e pronto para aceitar solicitações de clientes MCP.

  4. Agora você pode usar a funcionalidade do Brave Search no seu assistente de IA compatível com MCP (como o Claude) invocando as ferramentas disponíveis.

Ferramentas Disponíveis

O servidor fornece duas ferramentas principais:

  1. brave_web_search: Realiza uma pesquisa na web usando a API do Brave Search.
  2. brave_local_search: Pesquisa por empresas e lugares locais.

Consulte os docstrings das ferramentas em src/server.py para obter informações detalhadas de uso.

Desenvolvimento

Para fazer alterações no projeto:

  1. Modifique o código no diretório src conforme necessário.
  2. Atualize o arquivo requirements.txt se você adicionar ou remover dependências:
    uv pip freeze > requirements.txt
    
  3. Reinicie o servidor para aplicar as alterações.

Testes

O projeto inclui testes unitários e testes de integração:

Instalando Dependências de Teste

uv pip install pytest pytest-asyncio pytest-cov

Executando Testes Unitários

Os testes unitários podem ser executados sem uma chave de API e usam mocks para simular respostas da API:

# Run all unit tests
python -m pytest tests/unit/

# Run with verbose output
python -m pytest tests/unit/ -v

Executando Testes de Integração

Os testes de integração exigem uma chave válida da API Brave e fazem chamadas reais à API:

# Run integration tests with your API key
BRAVE_API_KEY_INTEGRATION="your_api_key_here" python -m pytest tests/integration/ -v

Cobertura de Testes

Para verificar a cobertura de testes:

python -m pytest --cov=src/mcp_brave_search

Solução de Problemas

Se você encontrar algum problema:

  1. Certifique-se de que sua chave da API Brave esteja configurada corretamente.
  2. Verifique se todas as dependências estão instaladas.
  3. Confirme que você está usando uma versão compatível do Python.
  4. Se você fizer alterações no código, certifique-se de reiniciar o servidor.

Licença

Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.