Summary
While setting up hevy-mcp@1.25.3 from a fresh local install, npm audit --omit=dev reports production-scope vulnerabilities. This does not necessarily mean the stdio MCP server is directly exploitable in normal local use, but it does make the published runtime dependency surface look broader than expected for a stdio-only MCP server.
The main concern is that generator/tooling-oriented packages appear in the production dependency tree, which pulls in transitive packages currently flagged by npm audit.
Environment
hevy-mcp: 1.25.3
- Node.js:
v26.3.0
- npm:
11.16.0
- Command run:
npm audit --omit=dev --json
Audit result
npm audit --omit=dev reports:
10 total production-scope vulnerabilities
9 moderate
1 high
0 critical
Notable dependency paths:
hevy-mcp
└─ @kubb/plugin-client@4.38.0
├─ @kubb/react-fabric@0.14.0
│ ├─ ws@8.18.0
│ └─ react-devtools-core@6.1.5
│ └─ ws@7.5.10
└─ @kubb/core / @kubb/oas / @kubb/plugin-* packages
hevy-mcp
└─ @modelcontextprotocol/sdk@1.29.0
└─ express-rate-limit@8.3.2
└─ ip-address@10.1.0
The high-severity audit item comes through ws:
ws 7.0.0 - 7.5.10 || 8.0.0 - 8.20.1
Severity: high
ws: Memory exhaustion DoS from tiny fragments and data chunks
The moderate item through the MCP SDK path is:
ip-address <=10.1.0
Severity: moderate
ip-address has XSS in Address6 HTML-emitting methods
Why this may be worth reviewing
hevy-mcp is stdio-only as of recent releases, so the practical exposure of websocket/http-related transitive dependencies may be limited for normal local MCP usage. Still, consumers installing the package see these as production-scope dependencies.
The runtime dependency list currently includes:
{
"@kubb/plugin-client": "^4.38.0",
"@modelcontextprotocol/sdk": "^1.29.0",
"@sentry/node": "^10.58.0",
"axios": "^1.18.0",
"zod": "^4.4.3"
}
The part that stands out is @kubb/plugin-client in dependencies. It appears to bring in Kubb generation/plugin infrastructure and React/devtools-adjacent transitive dependencies even though the published package only needs to run the MCP server.
Suggested direction
Would it be possible to review whether:
@kubb/plugin-client needs to remain in production dependencies, or whether the generated axios client can be shipped without the broader Kubb plugin tree.
- Kubb codegen/plugin packages can move to
devDependencies if they are only needed for generation/build.
- The MCP SDK/transitive dependency path can be refreshed once patched versions are available.
I did not run npm audit fix --force. npm reports that the forced Kubb fix would install older/breaking Kubb versions, so this probably needs an intentional dependency review rather than an automatic audit fix.
Summary
While setting up
hevy-mcp@1.25.3from a fresh local install,npm audit --omit=devreports production-scope vulnerabilities. This does not necessarily mean the stdio MCP server is directly exploitable in normal local use, but it does make the published runtime dependency surface look broader than expected for a stdio-only MCP server.The main concern is that generator/tooling-oriented packages appear in the production dependency tree, which pulls in transitive packages currently flagged by npm audit.
Environment
hevy-mcp:1.25.3v26.3.011.16.0npm audit --omit=dev --jsonAudit result
npm audit --omit=devreports:10total production-scope vulnerabilities9moderate1high0criticalNotable dependency paths:
The high-severity audit item comes through
ws:The moderate item through the MCP SDK path is:
Why this may be worth reviewing
hevy-mcpis stdio-only as of recent releases, so the practical exposure of websocket/http-related transitive dependencies may be limited for normal local MCP usage. Still, consumers installing the package see these as production-scope dependencies.The runtime dependency list currently includes:
{ "@kubb/plugin-client": "^4.38.0", "@modelcontextprotocol/sdk": "^1.29.0", "@sentry/node": "^10.58.0", "axios": "^1.18.0", "zod": "^4.4.3" }The part that stands out is
@kubb/plugin-clientindependencies. It appears to bring in Kubb generation/plugin infrastructure and React/devtools-adjacent transitive dependencies even though the published package only needs to run the MCP server.Suggested direction
Would it be possible to review whether:
@kubb/plugin-clientneeds to remain in productiondependencies, or whether the generated axios client can be shipped without the broader Kubb plugin tree.devDependenciesif they are only needed for generation/build.I did not run
npm audit fix --force. npm reports that the forced Kubb fix would install older/breaking Kubb versions, so this probably needs an intentional dependency review rather than an automatic audit fix.