mcp-npm-tools
# mcp-npm-tools
MCP server providing npm and Node.js package management tools for AI agents.
## Tools
### npm_search
Search the npm registry for packages by keyword. Returns name, description, version, weekly downloads, and last publish date.
### npm_package_info
Get detailed information about a specific npm package: all published versions, dependencies, maintainers, repository URL, license, unpacked size, npm quality/popularity/maintenance scores, and weekly download count.
### npm_dependency_audit
Analyze a `package.json` file to find outdated dependencies (compares pinned/range version against latest), deprecated packages, and known security vulnerabilities via the npm bulk advisory API.
### npm_bundle_size
Estimate the bundle size of an npm package using the Bundlephobia API. Returns minified size, gzipped size, dependency count, and tree-shaking support indicators.
### npm_compare_packages
Compare two or more packages side by side across multiple dimensions: weekly downloads, bundle size, number of runtime dependencies, last publish date, GitHub stars, and license.
## Setup
```bash
npm install
npm run build
```
## Usage with Claude Desktop
Add to your `claude_desktop_config.json`:
```json
{
"mcpServers": {
"npm-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-npm-tools/dist/index.js"]
}
}
}
```
## Development
```bash
npm run build # compile TypeScript
npm start # run the server
```
## License
MIT
TDQS
Scored across 5 tools
Each tool targets a distinct aspect of npm packages: searching, detailed info, dependency audit, bundle size, and comparison. No two tools overlap in purpose, and the descriptions make their boundaries clear.
All tool names share the npm_ prefix and use lowercase with underscores, but the pattern mixes verb-first names (npm_search, npm_compare_packages) with noun-phrase names (npm_package_info, npm_dependency_audit). This is generally predictable but not perfectly uniform.
With exactly 5 tools, the server is well-scoped for an npm utility toolkit. Each tool covers a meaningful function without bloat, and the count feels appropriate for the domain.
The set covers the core needs for npm package exploration: search, detailed inspection, dependency auditing, bundle size estimation, and side-by-side comparison. No obvious missing operations within the apparent purpose.