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.
- 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.
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"]
}
}
}
# Build the Docker image
docker build -t nekzus/npm-sentinel-mcp .
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.
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)
{
"mcpServers": {
"npm-sentinel-mcp": {
"command": "npx",
"args": [
"-y",
"@nekzus/mcp-server@latest"
]
}
}
}
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
]
}
-
npm://registry
: NPM Registry interface -
npm://security
: Security analysis interface -
npm://metrics
: Package metrics interface
The server also provides the following informational resources accessible via MCP GetResource
requests:
-
doc://server/readme
:-
Description: Retrieves the main
README.md
file content for this NPM Sentinel MCP server. -
MIME Type:
text/markdown
-
Description: Retrieves the main
-
doc://mcp/specification
:-
Description: Retrieves the
llms-full.txt
content, providing the comprehensive Model Context Protocol specification. -
MIME Type:
text/plain
-
Description: Retrieves the
- Get all versions of a package
- Input:
packages
(string[]) - Returns: Version history with release dates
- Get latest version information
- Input:
packages
(string[]) - Returns: Latest version details and changelog
- Analyze package dependencies
- Input:
packages
(string[]) - Returns: Complete dependency tree analysis
- Check TypeScript support
- Input:
packages
(string[]) - Returns: TypeScript compatibility status
- Analyze package size
- Input:
packages
(string[]) - Returns: Bundle size and import cost analysis
- Scan for security vulnerabilities
- Input:
packages
(string[]) - Returns: Security advisories and severity ratings
- Get download trends
- Input:
-
packages
(string[]) -
period
("last-week" | "last-month" | "last-year")
-
- Returns: Download statistics over time
- Compare multiple packages
- Input:
packages
(string[]) - Returns: Detailed comparison metrics
- Get package maintainers
- Input:
packages
(string[]) - Returns: Maintainer information and activity
- Get package quality score
- Input:
packages
(string[]) - Returns: Comprehensive quality metrics
- Get package README
- Input:
packages
(string[]) - Returns: Formatted README content
- Search for packages
- Input:
-
query
(string) -
limit
(number, optional)
-
- Returns: Matching packages with metadata
- Check license compatibility
- Input:
packages
(string[]) - Returns: License analysis and compatibility info
- Get repository statistics
- Input:
packages
(string[]) - Returns: GitHub/repository metrics
- Check for deprecation
- Input:
packages
(string[]) - Returns: Deprecation status and alternatives
- Analyze package changelogs
- Input:
packages
(string[]) - Returns: Changelog summaries and impact analysis
- Find package alternatives
- Input:
packages
(string[]) - Returns: Similar packages with comparisons
- Assess package quality
- Input:
packages
(string[]) - Returns: Quality metrics and scores
- Check maintenance status
- Input:
packages
(string[]) - Returns: Maintenance activity metrics
# Build with npm
npm install
npm run build
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