Rubber Duck MCP

Uma ferramenta que aplica técnicas de debugging do pato de borracha em ambientes de desenvolvimento de IA.

Documentação

Rubber Duck MCP

Descrição

Rubber Duck MCP é uma ferramenta do Model Context Protocol (MCP) que traz o poder da depuração com pato de borracha para o seu ambiente de desenvolvimento com IA. A depuração com pato de borracha é uma técnica comprovada na engenharia de software, onde articular um problema em linguagem natural—frequentemente para um objeto inanimado como um pato de borracha—pode iluminar soluções e esclarecer processos de pensamento. Este método, popularizado pela primeira vez em The Pragmatic Programmer (Hunt & Thomas, 1999), é amplamente reconhecido por sua eficácia em:

  • Revelar suposições ocultas e erros lógicos
  • Incentivar o raciocínio passo a passo
  • Facilitar uma compreensão mais profunda por meio da explicação
  • Reduzir a carga cognitiva ao externalizar o pensamento

"Ao descrever o que o código deveria fazer e observar o que ele realmente faz, qualquer incongruência entre os dois se torna aparente." — Wikipedia: Depuração com Pato de Borracha

Ao integrar este método em um IDE com tecnologia LLM, o Rubber Duck MCP permite que desenvolvedores e agentes de IA:

  • Depurem com mais eficácia explicando problemas a um ouvinte sem julgamentos e sempre disponível
  • Aprimorem o raciocínio do LLM incentivando o modelo a articular e refletir sobre sua própria lógica
  • Acelerem a resolução de problemas revelando soluções por meio da autoexplicação estruturada

Para leitura adicional:

Instalação

Pré-requisitos

  • Python 3.8+
  • fastmcp (instale via pip)

Passos

  1. Clone o repositório:
    git clone https://github.com/Omer-Sadeh/RubberDuckMCP.git
    cd RubberDuckMCP
    
  2. Crie e ative um ambiente virtual (recomendado):
    python3 -m venv .venv
    source .venv/bin/activate
    
  3. Instale as dependências:
    pip install -r requirements.txt
    
  4. Adicione o Rubber Duck MCP ao Cursor (ou outro IDE de IA compatível com MCP):
    • Abra seu arquivo .cursor/mcp.json (ou a configuração equivalente do seu IDE).
    • Adicione uma entrada para o Rubber Duck MCP, especificando o executável Python do venv e o caminho para RubberMCP.py. Por exemplo:
      {
        "mcpServers": {
          "rubber-duck": {
            "command": "/absolute/path/to/RubberDuckMCP/.venv/bin/python",
            "args": [
              "/absolute/path/to/RubberDuckMCP/RubberMCP.py"
            ]
          }
        }
      }
      
    • Ajuste os campos command e args para corresponder ao executável Python do seu ambiente virtual e ao caminho para RubberMCP.py no seu sistema.
    • Salve o arquivo e reinicie o Cursor (ou seu IDE) para carregar o novo servidor MCP.

Uso

Após a configuração, use a ferramenta explain_to_duck para articular seu problema ou questão de código. O Rubber Duck MCP ouvirá e responderá, ajudando você a esclarecer seu pensamento e descobrir soluções.

Licença

Este projeto está licenciado sob a Licença MIT. Todos são bem-vindos para contribuir, fazer fork e copiar este repositório. Colaboração e contribuições de código aberto são altamente incentivadas!