Rubber Duck MCP

Una herramienta que aplica técnicas de depuración del pato de goma a entornos de desarrollo de IA.

Documentación

Rubber Duck MCP

Descripción

Rubber Duck MCP es una herramienta del Model Context Protocol (MCP) que lleva el poder de la depuración con pato de goma a tu entorno de desarrollo de IA. La depuración con pato de goma es una técnica probada en ingeniería de software, donde articular un problema en lenguaje natural—a menudo a un objeto inanimado como un pato de goma—puede iluminar soluciones y aclarar procesos de pensamiento. Este método, popularizado por primera vez en The Pragmatic Programmer (Hunt y Thomas, 1999), es ampliamente reconocido por su eficacia en:

  • Revelar suposiciones ocultas y errores lógicos
  • Fomentar el razonamiento paso a paso
  • Facilitar una comprensión más profunda mediante la explicación
  • Reducir la carga cognitiva al externalizar el pensamiento

"Al describir lo que se supone que hace el código y observar lo que realmente hace, cualquier incongruencia entre ambos se hace evidente." — Wikipedia: Depuración con pato de goma

Al integrar este método en un IDE impulsado por LLM, Rubber Duck MCP permite a los desarrolladores y agentes de IA:

  • Depurar de manera más efectiva explicando problemas a un oyente sin prejuicios y siempre disponible
  • Mejorar el razonamiento del LLM al incitar al modelo a articular y reflexionar sobre su propia lógica
  • Acelerar la resolución de problemas al sacar a la luz soluciones mediante la autoexplicación estructurada

Para más información:

Instalación

Requisitos previos

  • Python 3.8+
  • fastmcp (instalar con pip)

Pasos

  1. Clona el repositorio:
    git clone https://github.com/Omer-Sadeh/RubberDuckMCP.git
    cd RubberDuckMCP
    
  2. Crea y activa un entorno virtual (recomendado):
    python3 -m venv .venv
    source .venv/bin/activate
    
  3. Instala las dependencias:
    pip install -r requirements.txt
    
  4. Añade Rubber Duck MCP a Cursor (u otro IDE de IA compatible con MCP):
    • Abre tu archivo .cursor/mcp.json (o la configuración equivalente para tu IDE).
    • Añade una entrada para Rubber Duck MCP, especificando el ejecutable de Python del venv y la ruta a RubberMCP.py. Por ejemplo:
      {
        "mcpServers": {
          "rubber-duck": {
            "command": "/absolute/path/to/RubberDuckMCP/.venv/bin/python",
            "args": [
              "/absolute/path/to/RubberDuckMCP/RubberMCP.py"
            ]
          }
        }
      }
      
    • Ajusta los campos command y args para que coincidan con el ejecutable de Python de tu entorno virtual y la ruta a RubberMCP.py en tu sistema.
    • Guarda el archivo y reinicia Cursor (o tu IDE) para cargar el nuevo servidor MCP.

Uso

Una vez configurado, usa la herramienta explain_to_duck para expresar tu problema o incidencia de código. El Rubber Duck MCP escuchará y responderá, ayudándote a aclarar tu pensamiento y descubrir soluciones.

Licencia

Este proyecto está licenciado bajo la Licencia MIT. Todos son bienvenidos a contribuir, hacer fork y copiar este repositorio. ¡La colaboración y las contribuciones de código abierto son muy bienvenidas!