Skip to content
appsgit

Rubber Duck

Rubber Duck is an MCP server that adds developer tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Bridge to multiple LLMs and CLI agents: councils, debates, voting, and more. It has 178 GitHub stars, is released under the MIT license and runs locally with npx -y mcp-rubber-duck.

github.com/nesquikm/mcp-rubber-duck (opens in a new tab)

Install Rubber Duck

Generated from the server's MCP registry entry. Replace your-value with your own values.

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "rubber-duck": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-rubber-duck"
      ],
      "env": {
        "OPENAI_API_KEY": "your-value",
        "GEMINI_API_KEY": "your-value",
        "GROQ_API_KEY": "your-value"
      }
    }
  }
}

Settings > Developer > Edit Config. macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\. Restart Claude Desktop afterwards.

Claude Code

claude mcp add --env OPENAI_API_KEY=your-value --env GEMINI_API_KEY=your-value --env GROQ_API_KEY=your-value --transport stdio rubber-duck -- npx -y mcp-rubber-duck

Cursor

.cursor/mcp.json
{
  "mcpServers": {
    "rubber-duck": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-rubber-duck"
      ],
      "env": {
        "OPENAI_API_KEY": "your-value",
        "GEMINI_API_KEY": "your-value",
        "GROQ_API_KEY": "your-value"
      }
    }
  }
}

Project file; use ~/.cursor/mcp.json to enable it in every project.

VS Code

.vscode/mcp.json
{
  "inputs": [
    {
      "type": "promptString",
      "id": "openai_api_key",
      "description": "OPENAI_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "gemini_api_key",
      "description": "GEMINI_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "groq_api_key",
      "description": "GROQ_API_KEY",
      "password": true
    }
  ],
  "servers": {
    "rubber-duck": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "mcp-rubber-duck"
      ],
      "env": {
        "OPENAI_API_KEY": "${input:openai_api_key}",
        "GEMINI_API_KEY": "${input:gemini_api_key}",
        "GROQ_API_KEY": "${input:groq_api_key}"
      }
    }
  }
}

Config formats checked against the official docs on Oct 7, 2026: modelcontextprotocol.io (opens in a new tab), code.claude.com (opens in a new tab), cursor.com (opens in a new tab), code.visualstudio.com (opens in a new tab).

Environment variables

Variables the server reads at startup.

NameRequiredDescription
OPENAI_API_KEYsecretNoOpenAI API key (starts with sk-)
GEMINI_API_KEYsecretNoGoogle Gemini API key
GROQ_API_KEYsecretNoGroq API key (starts with gsk_)
DEFAULT_PROVIDERNoDefault LLM provider to use

Tools (15)

Parsed from the Tools section of the README; check the repository for the current list.

  • ask_duck

    Ask a single question to a specific LLM provider

  • chat_with_duck

    Conversation with context maintained across messages

  • clear_conversations

    Clear all conversation history

  • list_ducks

    List configured providers and health status

  • list_models

    List available models for providers

  • compare_ducks

    Ask the same question to multiple providers simultaneously

  • duck_council

    Get responses from all configured ducks

  • get_usage_stats

    Usage statistics and estimated costs

  • duck_vote

    Multi-duck voting with reasoning and confidence

  • duck_judge

    Have one duck evaluate and rank others' responses

  • duck_iterate

    Iteratively refine a response between two ducks

  • duck_debate

    Structured multi-round debate between ducks

  • mcp_status

    MCP Bridge status and connected servers

  • get_pending_approvals

    Pending MCP tool approval requests

  • approve_mcp_request

    Approve or deny a duck's MCP tool request

About Rubber Duck

An MCP (Model Context Protocol) server that acts as a bridge to query multiple LLMs -- both OpenAI-compatible HTTP APIs and CLI coding agents. Just like rubber duck debugging, explain your problems to various AI "ducks" and get different perspectives!

FAQ

Rubber Duck FAQ

Still curious? Email info@appsgit.com.

What is Rubber Duck?

Rubber Duck is an MCP server that adds developer tools to AI assistants such as Claude Desktop, Claude Code and Cursor. Bridge to multiple LLMs and CLI agents: councils, debates, voting, and more. It has 178 GitHub stars, is released under the MIT license and runs locally with npx -y mcp-rubber-duck. The source code is at github.com/nesquikm/mcp-rubber-duck.

How do I install the Rubber Duck MCP server?

Add the command npx -y mcp-rubber-duck to your MCP client: put it in claude_desktop_config.json for Claude Desktop, run claude mcp add for Claude Code, or add it to .cursor/mcp.json (Cursor) or .vscode/mcp.json (VS Code). The snippets on this page are ready to paste.

Is Rubber Duck free?

The server is open source under the MIT license, so running it is free. It needs credentials (OPENAI_API_KEY, GEMINI_API_KEY and GROQ_API_KEY) for the service it connects to, which may require a paid account.

Is Rubber Duck actively maintained?

The most recent commit was on Oct 5, 2026. The latest release is v1.20.9, published Oct 5, 2026. appsgit only lists MCP servers with a commit in the last six months and re-checks every server daily.