RubberDuckMCP

Omer-Sadeh/RubberDuckMCP

3.1

If you are the rightful owner of RubberDuckMCP and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

Rubber Duck MCP is a Model Context Protocol tool that integrates rubber duck debugging into AI development environments.

Rubber Duck MCP

Description

Rubber Duck MCP is a Model Context Protocol (MCP) tool that brings the power of rubber duck debugging to your AI development environment. Rubber duck debugging is a proven technique in software engineering, where articulating a problem in natural language—often to an inanimate object like a rubber duck—can illuminate solutions and clarify thought processes. This method, first popularized in The Pragmatic Programmer (Hunt & Thomas, 1999), is widely recognized for its effectiveness in:

  • Revealing hidden assumptions and logical errors
  • Encouraging step-by-step reasoning
  • Facilitating deeper understanding through explanation
  • Reducing cognitive load by externalizing thought

"In describing what the code is supposed to do and observing what it actually does, any incongruity between these two becomes apparent." — Wikipedia: Rubber Duck Debugging

By integrating this method into an LLM-powered IDE, Rubber Duck MCP enables developers and AI agents to:

  • Debug more effectively by explaining problems to a non-judgmental, always-available listener
  • Enhance LLM reasoning by prompting the model to articulate and reflect on its own logic
  • Accelerate problem-solving by surfacing solutions through structured self-explanation

For further reading:

Installation

Prerequisites

  • Python 3.8+
  • fastmcp (install via pip)

Steps

  1. Clone the repository:
    git clone https://github.com/Omer-Sadeh/RubberDuckMCP.git
    cd RubberDuckMCP
    
  2. Create and activate a virtual environment (recommended):
    python3 -m venv .venv
    source .venv/bin/activate
    
  3. Install dependencies:
    pip install -r requirements.txt
    
  4. Add Rubber Duck MCP to Cursor (or another AI IDE supporting MCP):
    • Open your .cursor/mcp.json file (or the equivalent configuration for your IDE).
    • Add an entry for Rubber Duck MCP, specifying the venv's Python executable and the path to RubberMCP.py. For example:
      {
        "mcpServers": {
          "rubber-duck": {
            "command": "/absolute/path/to/RubberDuckMCP/.venv/bin/python",
            "args": [
              "/absolute/path/to/RubberDuckMCP/RubberMCP.py"
            ]
          }
        }
      }
      
    • Adjust the command and args fields to match your virtual environment's Python executable and the path to RubberMCP.py on your system.
    • Save the file and restart Cursor (or your IDE) to load the new MCP server.

Usage

Once configured, use the explain_to_duck tool to articulate your problem or code issue. The Rubber Duck MCP will listen and respond, helping you clarify your thinking and uncover solutions.

License

This project is licensed under the . Everyone is welcome to contribute, fork, and copy this repository. Collaboration and open-source contributions are highly encouraged!