
Rubber Duck
io.github.nesquikm由 GitHub 帳號 nesquikm 發布v1.18.0更新於 Oct 24, 2026
Bridge to multiple LLMs and CLI agents: councils, debates, voting, and more
概覽
一個本機 MCP 伺服器,把助理連接到多個 LLM 與命令列程式開發代理,可向它們提問、比較、投票、評判和辯論。
- 可以做什麼
- 向選定的 LLM 供應商或命令列程式開發代理提問,並進行多輪對話,也可清除對話歷史。列出已設定的供應商、健康狀態和可用模型。把同一個問題同時送給多個供應商,或向所有已設定的 duck 組成議會統一徵詢。進行多 duck 投票並附上理由和信心分數,讓一個 duck 評判並排序其他回答,在兩個 duck 之間反覆精進回答,或進行結構化的多輪辯論。查看用量統計(請求數、token 數和預估費用),並檢查 MCP Bridge 狀態與待處理的工具核准請求。
- 適用情境
- 適合需要就問題、計畫或設計聽取第二、第三種意見,或希望多個模型互相比較、投票、辯論和交叉核對的情境。也適合同時使用雲端 LLM API 與本機命令列程式開發代理的設定。
- 執行需求
- 以 npm 套件 mcp-rubber-duck 透過 stdio 在本機執行,需要 Node.js 20 或更高版本以及 npm 或 yarn。至少需要一個 HTTP 供應商的 API 金鑰(OPENAI_API_KEY、GEMINI_API_KEY 或 GROQ_API_KEY),或本機已安裝的命令列程式開發代理。需要能連線到所選供應商;Ollama、LM Studio 等本機供應商需保持執行。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Rubber Duck,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
MCP 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!
[npm version] [Docker Image] [MCP Registry]
[MCP Rubber Duck - AI ducks helping debug code]
Why direct provider integration? MCP's
samplingprimitive -- a server borrowing the host's model -- was deprecated in the 2026-07-28 spec RC in favor of servers integrating directly with LLM provider APIs. Rubber Duck has always worked this way (it brings its own ducks), so it's aligned with where the protocol is heading -- no migration required.
Features
- Universal OpenAI Compatibility -- Works with any OpenAI-compatible API endpoint
- CLI Agent Support -- Use CLI coding agents (Claude Code, Codex, Gemini CLI, Grok, Aider) as ducks
- Multiple Ducks -- Configure and query multiple LLM providers simultaneously
- Conversation Management -- Maintain context across multiple messages
- Duck Council -- Get responses from all your configured LLMs at once
- Consensus Voting -- Multi-duck voting with reasoning and confidence scores
- LLM-as-Judge -- Have ducks evaluate and rank each other's responses
- Iterative Refinement -- Two ducks collaboratively improve responses
- Structured Debates -- Oxford, Socratic, and adversarial debate formats
- MCP Prompts -- 8 reusable prompt templates for multi-LLM workflows
- Vision Input -- Send images alongside prompts to vision-capable models (docs)
- Automatic Failover -- Falls back to other providers if primary fails
- Health Monitoring -- Real-time health checks for all providers
- Usage Tracking -- Track requests, tokens, and estimated costs per provider
- MCP Bridge -- Connect ducks to other MCP servers for extended functionality (docs)
- Guardrails -- Pluggable safety layer with rate limiting, token limits, pattern blocking, and PII redaction (docs)
- Granular Security -- Per-server approval controls with session-based approvals
- Interactive UIs -- Rich HTML panels for compare, vote, debate, and usage tools (via MCP Apps)
- Tool Annotations -- MCP-compliant hints for tool behavior (read-only, destructive, etc.)
- Structured Output --
outputSchemaon tools returning structured JSON for client-side validation (Cursor, VS Code/Copilot) - Spec-Aligned by Design -- connects directly to provider APIs, the path the MCP
2026-07-28spec recommends now that server-sidesamplingis deprecated (SEP-2577)
Supported Providers
HTTP Providers (OpenAI-compatible API)
Any provider with an OpenAI-compatible API endpoint, including:
- OpenAI
- Google Gemini
- Anthropic (via OpenAI-compatible endpoints)
- Groq (fast inference for open-weight models)
- Together AI (broad open-weight model catalog)
- Perplexity (online models with web search)
- Azure OpenAI, Ollama, LM Studio, Custom
CLI Providers (Coding Agents)
Command-line coding agents that run as local processes:
- Claude Code (
claude) -- Codex (codex) -- Gemini CLI (gemini) -- Grok CLI (grok) -- Aider (aider) -- Custom
See CLI Providers for full setup and configuration.
Quick Start
Using Claude Desktop? Jump to Claude Desktop Configuration. Using Cursor, VS Code, Windsurf, or another tool? See the Setup Guide.
Installation
Prerequisites
- Node.js 20 or higher
- npm or yarn
- At least one API key for an HTTP provider, or a CLI coding agent installed locally
Install from NPM
Install from Source
Configuration
Create a .env file or config/config.json. Key environment variables:
Full reference: Configuration docs
Interactive UIs (MCP Apps)
Four tools -- compare_ducks, duck_vote, duck_debate, and get_usage_stats -- can render rich interactive HTML panels inside supported MCP clients via MCP Apps. Once this MCP server is configured in a supporting client, the UIs appear automatically -- no additional setup is required. Clients without MCP Apps support still receive the same plain text output (no functionality is lost). See the MCP Apps repo for an up-to-date list of supported clients.
Compare Ducks
Compare multiple model responses side-by-side, with latency indicators, token counts, model badges, and error states.
[Compare Ducks interactive UI]
Duck Vote
Have multiple ducks vote on options, displayed as a visual vote tally with bar charts, consensus badge, winner card, confidence bars, and collapsible reasoning.
Duck Debate
Structured multi-round debate between ducks, shown as a round-by-round view with format badge, participant list, collapsible rounds, and synthesis section.
Usage Stats
Usage analytics with summary cards, provider breakdown with expandable rows, token distribution bars, and estimated costs.
Available Tools
Full reference with input schemas: Tools docs
Available Prompts
Full reference with examples: Prompts docs
Development
Documentation
Troubleshooting
Provider Not Working
- Check API key is correctly set
- Verify endpoint URL is correct
- Run health check:
list_ducks({ check_health: true }) - Check logs for detailed error messages
OpenAI gpt-5.6 / gpt-6 Models Fail With the MCP Bridge
OpenAI's Chat Completions API rejects function tools for the gpt-5.6 and gpt-6 families (400 Function tools with reasoning_effort are not supported ... use /v1/responses). They work for plain calls, but with MCP_BRIDGE_ENABLED=true the ducks attach tools and those requests fail. Use gpt-5.4 (the default) or gpt-5.4-mini until Responses API support lands (#166).
Connection Issues
- For local providers (Ollama, LM Studio), ensure they're running
- Check firewall settings for local endpoints
- Verify network connectivity to cloud providers
Rate Limiting
- Configure failover to alternate providers
- Adjust
max_retriesandtimeoutsettings - See Guardrails for rate limiting configuration
Contributing
We love contributions! Whether you're fixing bugs, adding features, or teaching our ducks new tricks, we'd love to have you join the flock.
Check out our Contributing Guide to get started.
Quick start for contributors:
- Fork the repository
- Create a feature branch
- Follow our conventional commit guidelines
- Add tests for new functionality
- Submit a pull request
License
MIT License - see LICENSE file for details
Acknowledgments
- Inspired by the rubber duck debugging method
- Built on the Model Context Protocol (MCP)
- Uses OpenAI SDK for HTTP provider compatibility
- Supports CLI coding agents (Claude Code, Codex, Gemini CLI, Grok, Aider)
Changelog
See CHANGELOG.md for a detailed history of changes and releases.
Registry & Directory
- NPM Package: npmjs.com/package/mcp-rubber-duck
- Docker Images: ghcr.io/nesquikm/mcp-rubber-duck
- MCP Registry: Official MCP server
io.github.nesquikm/rubber-duck - Glama Directory: glama.ai/mcp/servers/@nesquikm/mcp-rubber-duck
- Awesome MCP Servers: Listed in the community directory
Support
- Report issues: https://github.com/nesquikm/mcp-rubber-duck/issues
- Documentation: https://github.com/nesquikm/mcp-rubber-duck/wiki
- Discussions: https://github.com/nesquikm/mcp-rubber-duck/discussions
Happy Debugging with your AI Duck Panel!
來源:README.md,提交 ade02a8
工具
0版本歷史
1- v1.18.0最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分