{ "name": "mcp-rubber-duck", "version": "1.20.8", "description": "An MCP server that bridges to multiple OpenAI-compatible LLMs - your AI rubber duck debugging panel", "main": "dist/index.js", "type": "module", "bin": { "mcp-rubber-duck": "./dist/index.js" }, "scripts": { "build": "tsc && npm run build:ui", "build:ui": "VITE_UI_ENTRY=compare-ducks vite build && VITE_UI_ENTRY=duck-vote vite build && VITE_UI_ENTRY=duck-debate vite build && VITE_UI_ENTRY=usage-stats vite build", "dev": "tsx watch src/index.ts", "start": "node dist/index.js", "test": "NODE_OPTIONS='--experimental-vm-modules' jest", "test:watch": "NODE_OPTIONS='--experimental-vm-modules' jest --watch", "lint": "eslint src", "format": "prettier --write \"src/**/*.ts\"", "typecheck": "tsc --noEmit", "release": "semantic-release" }, "keywords": [ "mcp", "model-context-protocol", "llm", "openai", "ai", "rubber-duck" ], "mcpName": "io.github.nesquikm/rubber-duck", "author": "nesquikm", "license": "MIT", "repository": { "type": "git", "url": "git+https://github.com/nesquikm/mcp-rubber-duck.git" }, "homepage": "https://github.com/nesquikm/mcp-rubber-duck#readme", "bugs": { "url": "https://github.com/nesquikm/mcp-rubber-duck/issues" }, "publishConfig": { "provenance": true, "access": "public" }, "dependencies": { "@modelcontextprotocol/ext-apps": "^1.0.1", "@modelcontextprotocol/sdk": "^1.29.0", "ajv": "^8.17.1", "dotenv": "^16.4.0", "openai": "^4.0.0", "winston": "^3.11.0", "zod": "^3.23.0" }, "devDependencies": { "@eslint/js": "^9.0.0", "@semantic-release/changelog": "^6.0.3", "@semantic-release/git": "^10.0.1", "@semantic-release/github": "^11.0.6", "@semantic-release/npm": "^13.1.3", "@types/jest": "^29.0.0", "@types/node": "^22.0.0", "eslint": "^9.0.0", "jest": "^29.0.0", "prettier": "^3.0.0", "semantic-release": "^25.0.2", "ts-jest": "^29.0.0", "tsx": "^4.0.0", "typescript": "^5.0.0", "typescript-eslint": "^8.0.0", "vite": "^8.0.16", "vite-plugin-singlefile": "^2.3.0" }, "$overrides-rationale": { "@hono/node-server": "Major-version override (2.x) against the MCP SDK's declared ^1.19.9 — GHSA-frvp-7c67-39w9 is patched only in 2.0.5 and the 1.x line has no fix. Safe here: the SDK pulls @hono/node-server in for its server-side streamableHttp transport, which this project never imports (we use StreamableHTTPClientTransport, the client side, in src/services/mcp-client-manager.ts). v2 keeps the same serve/getRequestListener API. Revisit if this project ever serves MCP over HTTP, or drop the override once the SDK moves to ^2." }, "overrides": { "js-yaml": "^4.3.1", "lodash": "^4.17.23", "lodash-es": "^4.17.23", "hono": "^4.13.1", "@hono/node-server": "^2.0.5", "fast-uri": "^3.1.5", "postcss": "^8.5.18", "ip-address": "^10.3.1", "express-rate-limit": "^8.6.2", "qs": "^6.15.2", "npm": "^11.19.1", "nanoid@3.x": "^3.3.17", "undici@6.x": "^6.28.0", "undici@7.x": "^7.29.0", "brace-expansion@1.x": "^1.1.18", "brace-expansion@2.x": "^2.1.4" } }