MCP server for npm package management — 32 tools for publish, install, audit, search, security & more
**English** | 한국어 | 中文 | 日本語
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
npm-mcp
MCP server that lets AI assistants manage npm packages. Publish, version, search, audit, install, and more -- all through Claude Code or any MCP client.
When to Use
| Task | Tool |
|------|------|
| "Publish this package to npm" | publish |
| "Check for outdated dependencies" | outdated |
| "Run a security audit on my packages" | audit |
| "Search npm for authentication libraries" | search |
| "Bump the version and publish" | version then publish |
| "Check who owns this npm package" | owner |
| "View download stats for my package" | view |
> **For AI agents:** See llms.txt for a machine-readable summary. Copy templates/CLAUDE.md or templates/AGENTS.md into your project to teach your agent about this MCP.
Why
You're in Claude Code building a library. You finish the code, and now you need to publish it. Instead of switching to a terminal:
That's it. No context switching.
Setup
1. Install
2. Get npm token
Go to npmjs.com > Account > Access Tokens and create a
**granular access token** with access to the packages you need. Classic and
Automation tokens are no longer supported. A stage-only token uses the stage
workflow below. Existing npm login credentials also work.
3. Add to Claude Code
Edit ~/.claude/settings.json:
Or if you've already run npm login locally, skip NPM_TOKEN -- it uses your ~/.npmrc automatically.
Tools
Publishing & Versioning
| Tool | Description |
|------|-------------|
| publish | Publish a package to npm registry |
| stage | Stage, list, inspect, download, approve, or reject a pending package version |
| version | Bump package version (patch/minor/major/pre*) |
| unpublish | Remove a package version |
| deprecate | Deprecate a version (or undeprecate with empty message) |
| pack | Preview what would be published |
Package Info
| Tool | Description |
|------|-------------|
| view | View package info from registry |
| search | Search npm registry |
| bugs | Get bug tracker URL for a package |
| repo | Get repository URL for a package |
| docs | Get documentation URL for a package |
| diff | Show diff between package versions |
Dependency Management
| Tool | Description |
|------|-------------|
| install | Install packages |
| uninstall | Remove packages |
| update | Update packages to latest semver-compatible version |
| outdated | Check for outdated packages |
| ls | List installed packages |
| explain | Explain why a package is installed |
| dedupe | Reduce duplication in dependency tree |
| prune | Remove extraneous packages |
| fund | Show funding info for dependencies |
| query | Query packages using CSS-like selectors |
Security & Diagnostics
| Tool | Description |
|------|-------------|
| audit | Run security audit (with optional auto-fix) |
| sbom | Generate Software Bill of Materials (CycloneDX/SPDX) |
| doctor | Check npm environment health |
| ping | Check registry connectivity |
Configuration & Auth
| Tool | Description |
|------|-------------|
| whoami | Check current authenticated user |
| token | Manage access tokens (list/revoke) |
| access | Set or view access level on packages |
| owner | Manage package owners (ls/add/rm) |