MCP Rubber Duck logo

MCP Rubber Duck

by nesquikm

Queries multiple OpenAI-compatible APIs and CLI agents for debugging perspectives, comparisons, debates, and consensus.

Install MCP Rubber Duck

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "nesquikm-mcp-rubber-duck": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-rubber-duck"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

nesquikm/mcp-rubber-duck MCP server connects MCP clients to multiple OpenAI-compatible LLM APIs and local CLI coding agents. It exposes tools for individual questions, contextual chats, comparisons, voting, judging, iterative refinement, and structured debates. Use it when you want several model perspectives on a debugging or design problem, with optional usage tracking, health checks, failover, and MCP server access. It requires Node.js 20 or newer and either a configured provider API key or an installed supported CLI agent.

Use cases

  • Compare model answers during code debugging
  • Review architecture from multiple perspectives
  • Run structured debates over implementation options
  • Track provider usage and estimated costs

Key features

  • OpenAI-compatible HTTP provider support
  • Local CLI coding-agent support
  • Multi-provider comparison and consensus tools
  • Contextual conversation management
  • Usage tracking and health monitoring
  • MCP bridge with approval controls

Tools15

What MCP Rubber Duck lets your agent do. Expand a tool for its parameters.

Self-reported~209 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 73d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 9d ago via OSV.dev · mcp-rubber-duck (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars180Stargazers on the source repository.
npm downloads3.3kPackage downloads in the last 30 days.
Last commit6d agoMost recent push to the default branch.
Tools exposed15Callable tools this server registers over MCP.
Directory activity5 viewsConfig copies, upvotes, and views on AllMCPs.

How MCP Rubber Duck works

What nesquikm/mcp-rubber-duck MCP server does

The nesquikm/mcp-rubber-duck MCP server gives an MCP client access to multiple AI providers through one server. It can send prompts to OpenAI-compatible HTTP endpoints or invoke supported command-line coding agents as local processes. Supported HTTP provider examples include OpenAI, Gemini, Anthropic-compatible endpoints, Groq, Together AI, Perplexity, Azure OpenAI, Ollama, LM Studio, and custom endpoints. CLI options include Claude Code, Codex, Gemini CLI, Grok CLI, Aider, and custom agents.

The main use case is getting additional perspectives while debugging, reviewing a design, or comparing possible answers. A single request can target one provider, while comparison and council tools can query several configured providers. Voting, judging, iteration, and debate tools support more structured multi-model workflows.

How it works

The server communicates directly with configured provider APIs rather than relying on MCP sampling. Conversations can retain context across messages, and conversation history can be cleared through a dedicated tool. Provider listings expose configured ducks and health status, while model listing reports available models. Automatic failover can use another provider when the primary provider fails.

Usage tracking records requests and tokens and provides estimated costs. The server also includes MCP Bridge functionality, allowing ducks to access connected MCP servers when that feature is enabled. Bridge access has per-server approval controls, with tools for viewing pending requests and approving or denying them.

Four tools can expose MCP Apps interfaces in clients that support them: comparisons, voting, debates, and usage statistics. Clients without MCP Apps support receive plain text results instead. The project also documents vision input for models that support images, reusable MCP prompt templates, and configurable guardrails such as rate limiting, token limits, pattern blocking, and PII redaction.

Setup and configuration

Install Node.js 20 or later, then install the package globally with npm install -g mcp-rubber-duck, or run it through npx. Source installation uses the repository, npm install, npm run build, and npm start.

The nesquikm/mcp-rubber-duck MCP server can read settings from a .env file or config/config.json. HTTP providers can be configured with variables such as OPENAI_API_KEY, GEMINI_API_KEY, and GROQ_API_KEY. DEFAULT_PROVIDER and DEFAULT_TEMPERATURE set default request behavior, while LOG_LEVEL controls logging. Set MCP_SERVER=true for MCP server mode and MCP_BRIDGE_ENABLED to enable bridge access. Custom providers and CLI agents use the documented CUSTOM_{NAME}_* and CLI_{AGENT}_ENABLED configuration patterns.

At least one HTTP provider API key or one locally installed CLI coding agent is needed. CLI providers must also be configured according to their individual setup requirements.

Tools and capabilities

  • Ask one provider a question or maintain a contextual conversation.
  • Compare providers, query all configured ducks, or list available providers and models.
  • Collect multi-duck votes with reasoning and confidence.
  • Ask one duck to rank other responses.
  • Refine an answer between two ducks or run a structured multi-round debate.
  • Inspect usage statistics, estimated costs, health status, and bridge status.
  • Review and approve or deny pending MCP tool requests.

Limitations and notes

The server does not provide a single universal model backend; results depend on the configured HTTP endpoints or installed CLI agents. HTTP use generally requires the user's provider credentials, and provider usage may incur separate costs. Local CLI agents must already be installed and available to the process. Interactive HTML panels depend on MCP Apps support in the client, although equivalent plain text output remains available.

It also does not identify a minimum provider configuration beyond requiring either an API key or a local CLI agent.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about MCP Rubber Duck

Install Node.js 20 or later, then run `npm install -g mcp-rubber-duck`.

Yes. The README includes a Claude Desktop configuration guide and shows the server being run with `npx mcp-rubber-duck`.

It can use provider-specific keys such as `OPENAI_API_KEY`, `GEMINI_API_KEY`, or `GROQ_API_KEY`. At least one HTTP provider key is needed unless a supported local CLI coding agent is used instead.

Yes. Its `compare_ducks`, `duck_council`, `duck_vote`, `duck_judge`, `duck_iterate`, and `duck_debate` tools support multi-provider workflows.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMCP Rubber Duck AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/nesquikm-mcp-rubber-duck?style=directory)](https://allmcps.com/mcp/nesquikm-mcp-rubber-duck)
HTML Embed
<a href="https://allmcps.com/mcp/nesquikm-mcp-rubber-duck"><img src="https://allmcps.com/api/badge/nesquikm-mcp-rubber-duck?style=directory" alt="MCP Rubber Duck on AllMCPs" /></a>