NPM Sentinel MCP
An AI-powered MCP server for analyzing NPM package security, dependencies, and performance.
NPM Sentinel MCP
A powerful Model Context Protocol (MCP) server that revolutionizes NPM package analysis through AI. Built to integrate with Claude and Anthropic AI, it provides real-time intelligence on package security, dependencies, and performance. This MCP server delivers instant insights and smart analysis to safeguard and optimize your npm ecosystem, making package management decisions faster and safer for modern development workflows.
Features
- Version analysis and tracking
- Dependency analysis and mapping
- Security vulnerability scanning
- Package quality metrics
- Download trends and statistics
- TypeScript support verification
- Package size analysis
- Maintenance metrics
- Real-time package comparisons
- Standardized error handling and MCP response formats
- Efficient caching for improved performance and API rate limit management
- Rigorous schema validation and type safety using Zod
Note: The server provides AI-assisted analysis through MCP integration.
Installation
Migration to HTTP Streamable
This MCP server now supports both STDIO and HTTP streamable transport. Your existing STDIO configuration will continue to work without changes.
New capabilities:
- HTTP streamable transport via Smithery.ai
- Enhanced scalability and performance
- Interactive testing playground
Development commands:
# Development server with playground
npm run dev
# Build for HTTP
npm run build:http
# Start HTTP server
npm run start:http
Install in VS Code
Add this to your VS Code MCP config file. See VS Code MCP docs for more info.
{
"servers": {
"npm-sentinel": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@nekzus/mcp-server@latest"]
}
}
}
Smithery.ai Deployment (HTTP Streamable)
This MCP server now supports HTTP streamable transport through Smithery.ai for enhanced scalability and performance. You can deploy it directly on Smithery.ai: Benefits of HTTP deployment:
- Scalable: Handles multiple concurrent connections
- Streamable: Real-time streaming responses
- Managed: Automatic deployment and monitoring
- Backward Compatible: Still supports STDIO for local development
- Interactive Testing: Built-in playground for testing tools
Configuration for Smithery.ai:
{
"mcpServers": {
"npm-sentinel": {
"type": "http",
"url": "https://smithery.ai/server/@Nekzus/npm-sentinel-mcp"
}
}
}
Docker
Build
# Build the Docker image
docker build -t nekzus/npm-sentinel-mcp .
Usage
You can run the MCP server using Docker with directory mounting to /projects:
{
"mcpServers": {
"npm-sentinel-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-w", "/projects",
"--mount", "type=bind,src=${PWD},dst=/projects",
"nekzus/npm-sentinel-mcp",
"node",
"dist/index.js"
]
}
}
}
For multiple directories:
{
"mcpServers": {
"npm-sentinel-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-w", "/projects",
"--mount", "type=bind,src=/path/to/workspace,dst=/projects/workspace",
"--mount", "type=bind,src=/path/to/other/dir,dst=/projects/other/dir,ro",
"nekzus/npm-sentinel-mcp",
"node",
"dist/index.js"
]
}
}
}
Note: All mounted directories must be under /projects for proper access.
Usage with Claude Desktop
Add this to your claude_desktop_config.json:
{
"mcpServers": {
"npmsentinel": {
"command": "npx",
"args": ["-y", "@nekzus/mcp-server@latest"]
}
}
}
Configuration file locations:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux: (Claude for Desktop does not officially support Linux at this time)
NPX
{
"mcpServers": {
"npm-sentinel-mcp": {
"command": "npx",
"args": [
"-y",
"@nekzus/mcp-server@latest"
]
}
}
}
API
The server exposes its tools via the Model Context Protocol. All tools adhere to a standardized response format:
{
"content": [
{
"type": "text",
"text": "string",
"isError": boolean // Optional
}
// ... more content items if necessary
]
}
Resources
npm://registry: NPM Registry interfacenpm://security: Security analysis interfacenpm://metrics: Package metrics interface
Server Resources
The server also provides the following informational resources accessible via MCP GetResource requests:
doc://server/readme:- Description: Retrieves the main
README.mdfile content for this NPM Sentinel MCP server. - MIME Type:
text/markdown
- Description: Retrieves the main
doc://mcp/specification:- Description: Retrieves the
llms-full.txtcontent, providing the comprehensive Model Context Protocol specification. - MIME Type:
text/plain
- Description: Retrieves the
Tools
npmVersions
- Get all versions of a package
- Input:
packages(string[]) - Returns: Version history with release dates
npmLatest
- Get latest version information
- Input:
packages(string[]) - Returns: Latest version details and changelog
npmDeps
- Analyze package dependencies
- Input:
packages(string[]) - Returns: Complete dependency tree analysis
npmTypes
- Check TypeScript support
- Input:
packages(string[]) - Returns: TypeScript compatibility status
npmSize
- Analyze package size
- Input:
packages(string[]) - Returns: Bundle size and import cost analysis
npmVulnerabilities
- Scan for security vulnerabilities
- Input:
packages(string[]) - Returns: Security advisories and severity ratings
npmTrends
- Get download trends
- Input:
packages(string[])period("last-week" | "last-month" | "last-year")
- Returns: Download statistics over time
npmCompare
- Compare multiple packages
- Input:
packages(string[]) - Returns: Detailed comparison metrics
npmMaintainers
- Get package maintainers
- Input:
packages(string[]) - Returns: Maintainer information and activity
npmScore
- Get package quality score
- Input:
packages(string[]) - Returns: Comprehensive quality metrics
npmPackageReadme
- Get package README
- Input:
packages(string[]) - Returns: Formatted README content
npmSearch
- Search for packages
- Input:
query(string)limit(number, optional)
- Returns: Matching packages with metadata
npmLicenseCompatibility
- Check license compatibility
- Input:
packages(string[]) - Returns: License analysis and compatibility info
npmRepoStats
- Get repository statistics
- Input:
packages(string[]) - Returns: GitHub/repository metrics
npmDeprecated
- Check for deprecation
- Input:
packages(string[]) - Returns: Deprecation status and alternatives
npmChangelogAnalysis
- Analyze package changelogs
- Input:
packages(string[]) - Returns: Changelog summaries and impact analysis
npmAlternatives
- Find package alternatives
- Input:
packages(string[]) - Returns: Similar packages with comparisons
npmQuality
- Assess package quality
- Input:
packages(string[]) - Returns: Quality metrics and scores
npmMaintenance
- Check maintenance status
- Input:
packages(string[]) - Returns: Maintenance activity metrics
Build
# Install dependencies
npm install
# Build for STDIO (traditional)
npm run build:stdio
# Build for HTTP (Smithery)
npm run build:http
# Development server
npm run dev
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
MIT © nekzus
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Text-To-GraphQL
MCP server for text-to-graphql, integrates with Claude Desktop and Cursor.
shadcn/ui
Provides structured data for shadcn/ui components, including descriptions, installation instructions, usage examples, and props.
SMART-E2B
Integrates E2B for secure code execution in cloud sandboxes, designed for Claude AI Desktop.
Fused MCP
A Python-based MCP server for data scientists to run Python code with a Claude client.
PI API MCP Server
An MCP server for interacting with the PI Dashboard API.
Script Generator Server
A simple note storage system with tools for adding notes and generating scripts from them.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers without authentication.
Swiftzilla
The only RAG API built for Apple Development. Give your AI instant access to 100,000+ pages of official docs, recipes, and evolution proposals.
Phabricator
Interacting with Phabricator API
MCP Docs Server
Provides direct access to local documentation files through a context.md file in the project root.