NPM Helper
Manages npm packages by searching the registry, checking for outdated dependencies, and safely upgrading Node.js project dependencies with conflict resolution.
Provides specialized tools for searching npm packages, fetching documentation, checking outdated dependencies, and safely upgrading Node.js packages with version constraint management
What it does
- Search npm packages and get detailed information
- Check package.json for outdated dependencies
- Upgrade dependencies with version constraint management
- Resolve dependency conflicts automatically
- Run iterative upgrades with testing
- Filter updates for specific packages
Best for
About NPM Helper
NPM Helper is a community-built MCP server published by pinkpixel-dev that provides AI assistants with tools and capabilities via the Model Context Protocol. Easily search npm packages, manage Node.js dependencies, and safely upgrade with NPM Helper, the smart node package mana It is categorized under productivity, developer tools. This server exposes 10 tools that AI clients can invoke during conversations and coding sessions.
How to install
You can install NPM Helper in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
License
NPM Helper is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Tools (10)
Search for npm packages
Fetch detailed content from an npm package page URL
Get available versions for an npm package
Get detailed information about an npm package
Scan package.json for outdated dependencies
π¦ NPM Helper - A tool to help your ai assistant with npm package management.π€ 
A Model Context Protocol server for NPM dependency management. This server provides tools for NPM package search and tools for updating npm packages, ensuring your project's dependencies are up to date and updated to their latest compatible versions, without any conflicts or headaches.
As a baseline, for a safe upgrade of any project's package.json, your assistant can call the upgradePackagets tool with the 'peer' parameter set to true. This will likely not update all of your dependencies to the latest versions, but it will safely upgrade them to the latest compatible versions, without any errors.
If you are looking for a full upgrade of all dependencies, your assistant has many tools and parameters to safely explore. Parameter options and examples are provider below, in the "Available Tools" section. You can also find more information in the 'docs' directory.
There are also tools available to search and retrieve information from npmjs, if you are exploring options for new packages to add to your project, or if you are looking for information on a specific package.
β¨ Features
npm-check-updates Tools
- π checkUpdates: Scan package.json for outdated dependencies
- π upgradePackages: Upgrade dependencies to latest versions
- π filterUpdates: Check updates for specific packages
- π resolveConflicts: Handle dependency conflicts
- βοΈ setVersionConstraints: Configure version upgrade rules
- π©Ί runDoctor: Iteratively run upgrades and tests to detect breaking changes
NPM Search Tools
- π searchPackages: Search npmjs.org registry for packages
- π fetchPackageContent: Scrape and extract content from npm package pages
- π getPackageVersions: Retrieve version history of packages
- π getPackageDetails: Fetch detailed package metadata
π npm-helper-mcp Installation Guide
This guide will help you set up and run the npm-helper-mcp server.
π Prerequisites
Before you begin, ensure you have the following installed:
- Node.js (version 18.x or later)
- npm (version 8.x or later)
π§ Configuration
The npm-helper-mcp server implements the Model Context Protocol, which enables it to communicate with LLM applications that support the protocol.
Configuration varies depending on the application. Generally, most mcp client applications will have a .json configuration file, or a place to enter the command to run the server. One of these 2 options should work in most cases.
Option 1: Run with npx
The easiest way to use the server is to run it with npx, which requires no local installation. Depending on your mcp client, use one of the following 2 methods:
- Copy and paste the json configuration into your application's mcp configuration file.
{
"mcpServers": {
"npm-helper": {
"command": "npx",
"args": [
"-y",
"@pinkpixel/npm-helper-mcp"
]
}
}
}
- Enter the command to run the server in your application's mcp configuration settings.
npx -y @pinkpixel/npm-helper-mcp
Option 2: Local installation
If you prefer to install the server locally, you can do so with the following command:
# Install the package globally
npm install -g npm-helper-mcp
Configuration:
- Copy and paste the json configuration into your application's mcp configuration file.
{
"mcpServers": {
"npm-helper": {
"command": "npx",
"args": [
"-y",
"@pinkpixel/npm-helper-mcp"
]
}
}
}
- Enter the command to run the server in your application's mcp configuration settings.
npm-helper-mcp
Option 3: Install from source
# Clone the repository
git clone https://github.com/pinkpixel-dev/npm-helper-mcp.git
cd npm-helper-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Optionally run/test the server
npm start
Configuration:
- Copy and paste the json configuration into your application's mcp configuration file.
{
"mcpServers": {
"npm-helper": {
"command": "node",
"args": [
"/path/to/npm-helper-mcp/dist/index.js"
]
}
}
}
- Enter the command to run the server in your application's mcp configuration settings.
node /path/to/npm-helper-mcp/dist/index.js
Using with LLMs
This server follows the Model Context Protocol, which allows it to be used by LLMs like Claude. The LLM can use the server's tools to perform various npm operations.
Available Tools
Tool: check_updates
Scans package.json for outdated dependencies.
Parameters:
packagePath(optional): Path to package.json file (default: ./package.json)filter(optional): List of package names to checkreject(optional): List of package names to excludetarget(optional): Target version to upgrade to (latest, newest, greatest, minor, patch, semver)interactive(optional): Enable interactive mode for choosing updatespeer(optional): Check peer dependencies of installed packagesminimal(optional): Do not upgrade newer versions that are already satisfied by the version rangepackageManager(optional): Package manager to use (npm, yarn, pnpm, deno, bun, staticRegistry)
Example:
{
"name": "check_updates",
"arguments": {
"packagePath": "./package.json",
"filter": ["react", "lodash"],
"peer": true,
"minimal": true,
"packageManager": "npm"
}
}
Tool: upgrade_packages
Upgrades dependencies to their latest versions.
Parameters:
packagePath(optional): Path to package.json file (default: ./package.json)upgradeType(optional): Target version to upgrade to (latest, newest, greatest, minor, patch, semver)interactive(optional): Enable interactive mode for choosing updatespeer(optional): Check peer dependencies of installed packagesminimal(optional): Do not upgrade newer versions that are already satisfied by the version rangepackageManager(optional): Package manager to use (npm, yarn, pnpm, deno, bun, staticRegistry)
Example:
{
"name": "upgrade_packages",
"arguments": {
"upgradeType": "minor",
"peer": true,
"minimal": true,
"packageManager": "yarn"
}
}
Tool: filter_updates
Checks updates for specific packages.
Parameters:
packagePath(optional): Path to package.json file (default: ./package.json)filter(required): List of package names to checkupgrade(optional): Whether to upgrade the package.json file or just checkminimal(optional): Do not upgrade newer versions that are already satisfied by the version rangepackageManager(optional): Package manager to use (npm, yarn, pnpm, deno, bun, staticRegistry)
Example:
{
"name": "filter_updates",
"arguments": {
"filter": ["react", "react-dom"],
"upgrade": false,
"minimal": true
}
}
Tool: resolve_conflicts
Handles dependency conflicts using peer dependencies.
Parameters:
packagePath(optional): Path to package.json file (default: ./package.json)upgrade(optional): Whether to upgrade the package.json file or just checkminimal(optional): Do not upgrade newer versions that are already satisfied by the version rangepackageManager(optional): Package manager to use (npm, yarn, pnpm, deno, bun, staticRegistry)
Example:
{
"name": "resolve_conflicts",
"arguments": {
"upgrade": true,
"packageManager": "npm"
}
}
Tool: set_version_constraints
Configures version upgrade rules.
Parameters:
packagePath(optional): Path to package.json file (default: ./package.json)target(required): Target version constraint strategy (latest, newest, greatest, minor, patch, semver)removeRange(optional): Remove version ranges from the final package versionupgrade(optional): Whether to upgrade the package.json file or just checkminimal(optional): Do not upgrade newer versions that are already satisfied by the version rangepackageManager(optional): Package manager to use (npm, yarn, pnpm, deno, bun, staticRegistry)
Example:
{
"name": "set_version_constraints",
"arguments": {
"target": "minor",
"removeRange": false,
"upgrade": true,
"packageManager": "pnpm"
}
}
Tool: run_doctor
Iteratively installs upgrades and runs tests to identify breaking upgrades. It automatically reverts breaking upgrades and keeps working ones.
Parameters:
packagePath(optional): Path to package.json file (default: ./package.json)doctorInstall(optional): Custom install script to use (default: 'npm install' or 'yarn')doctorTest(optional): Custom test script to use (default: 'npm test')packageManager(optional): Package manager to use (npm, yarn, pnpm, deno, bun, staticRegistry)
Example:
{
"name": "run_doctor",
"arguments": {
"packagePath": "./package.json",
"doctorInstall": "npm ci",
"doctorTest": "npm run test:ci",
"packageManager": "npm"
}
}
Tool: search_npm
Searches for npm packages.
Parameters:
query(required): Search query for npm packagesmaxResults(optional): Maximum number of results to return (default: 10)
Example:
{
"name": "search_npm",
"arguments": {
"query": "react state management",
"maxResults": 5
}
}
T
README truncated. View full README on GitHub.
Alternatives
Related Skills
Browse all skillsUI design system toolkit for Senior UI Designer including design token generation, component documentation, responsive design calculations, and developer handoff tools. Use for creating design systems, maintaining visual consistency, and facilitating design-dev collaboration.
Bridge between Claude Code and OpenAI Codex CLI - generates AGENTS.md from CLAUDE.md, provides Codex CLI execution helpers, and enables seamless interoperability between both tools
Answer questions about the AI SDK and help build AI-powered features. Use when developers: (1) Ask about AI SDK functions like generateText, streamText, ToolLoopAgent, embed, or tools, (2) Want to build AI agents, chatbots, RAG systems, or text generation features, (3) Have questions about AI providers (OpenAI, Anthropic, Google, etc.), streaming, tool calling, structured output, or embeddings, (4) Use React hooks like useChat or useCompletion. Triggers on: "AI SDK", "Vercel AI SDK", "generateText", "streamText", "add AI to my app", "build an agent", "tool calling", "structured output", "useChat".
Leveraging AI coding assistants and tools to boost development productivity, while maintaining oversight to ensure quality results.
Master API documentation with OpenAPI 3.1, AI-powered tools, and modern developer experience practices. Create interactive docs, generate SDKs, and build comprehensive developer portals. Use PROACTIVELY for API documentation or developer portal creation.
Creates educational Teams channel posts for internal knowledge sharing about Claude Code features, tools, and best practices. Applies when writing posts, announcements, or documentation to teach colleagues effective Claude Code usage, announce new features, share productivity tips, or document lessons learned. Provides templates, writing guidelines, and structured approaches emphasizing concrete examples, underlying principles, and connections to best practices like context engineering. Activates for content involving Teams posts, channel announcements, feature documentation, or tip sharing.