npm哨兵
一种模型上下文协议服务器,通过多种工具启用对NPM包的人工智能分析,用于安全漏洞扫描、依赖关系分析、包比较和质量评估。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"npm-sentinel-mcp": {
"args": [
"-y",
"@nekzus/mcp-server"
],
"command": "npx"
},
"npmAnalyzer": {
"args": [
"-y",
"@nekzus/mcp-server"
],
"command": "npx",
"transport": "stdio"
}
}
}
服务介绍
NPM Sentinel MCP
一个强大的模型上下文协议(MCP)服务器,通过AI彻底改变了NPM包的分析。它旨在与Claude和Anthropic AI集成,提供关于包安全、依赖关系和性能的实时智能。此MCP服务器提供了即时见解和智能分析,以保护和优化您的npm生态系统,使现代开发工作流程中的包管理决策更快更安全。
功能
- 版本分析和跟踪
- 依赖分析和映射
- 安全漏洞扫描
- 包质量指标
- 下载趋势和统计数据
- TypeScript支持验证
- 包大小分析
- 维护指标
- 实时包比较
注意:该服务器通过MCP集成提供了AI辅助分析。
API
资源
npm://registry: NPM注册表接口npm://security: 安全分析接口npm://metrics: 包指标接口
工具
npmVersions
- 获取包的所有版本
- 输入:
packages(string[]) - 返回: 带有发布日期的版本历史
npmLatest
- 获取最新版本信息
- 输入:
packages(string[]) - 返回: 最新版本详情和变更日志
npmDeps
- 分析包依赖
- 输入:
packages(string[]) - 返回: 完整的依赖树分析
npmTypes
- 检查TypeScript支持
- 输入:
packages(string[]) - 返回: TypeScript兼容性状态
npmSize
- 分析包大小
- 输入:
packages(string[]) - 返回: 捆绑大小和导入成本分析
npmVulnerabilities
- 扫描安全漏洞
- 输入:
packages(string[]) - 返回: 安全建议和严重性评级
npmTrends
- 获取下载趋势
- 输入:
packages(string[])period("last-week" | "last-month" | "last-year")
- 返回: 随时间变化的下载统计数据
npmCompare
- 比较多个包
- 输入:
packages(string[]) - 返回: 详细的比较指标
npmMaintainers
- 获取包维护者
- 输入:
packages(string[]) - 返回: 维护者信息和活动
npmScore
- 获取包质量评分
- 输入:
packages(string[]) - 返回: 综合质量指标
npmPackageReadme
- 获取包README
- 输入:
packages(string[]) - 返回: 格式化的README内容
npmSearch
- 搜索包
- 输入:
query(string)limit(number, 可选)
- 返回: 匹配的包及其元数据
npmLicenseCompatibility
- 检查许可证兼容性
- 输入:
packages(string[]) - 返回: 许可证分析和兼容性信息
npmRepoStats
- 获取仓库统计信息
- 输入:
packages(string[]) - 返回: GitHub/仓库指标
npmDeprecated
- 检查是否已弃用
- 输入:
packages(string[]) - 返回: 弃用状态及替代方案
npmChangelogAnalysis
- 分析包变更日志
- 输入:
packages(string[]) - 返回: 变更日志摘要及影响分析
npmAlternatives
- 查找包的替代品
- 输入:
packages(string[]) - 返回: 相似包及其比较
npmQuality
- 评估包质量
- 输入:
packages(string[]) - 返回: 质量指标和分数
npmMaintenance
- 检查维护状态
- 输入:
packages(string[]) - 返回: 维护活动指标
Docker
构建
# Build the Docker image
docker build -t nekzus/npm-sentinel-mcp .
使用
您可以使用Docker运行MCP服务器,并将目录挂载到/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"
]
}
}
}
对于多个目录:
{
"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"
]
}
}
}
注意:为了正确访问,所有挂载的目录必须位于/projects下。
与Claude Desktop一起使用
在您的claude_desktop_config.json中添加以下内容:
{
"mcpServers": {
"npmAnalyzer": {
"transport": "stdio",
"command": "npx",
"args": ["-y", "@nekzus/mcp-server"]
}
}
}
配置文件位置:
- Windows:
%APPDATA%/claude-desktop/claude_desktop_config.json - macOS:
~/Library/Application Support/claude-desktop/claude_desktop_config.json - Linux:
~/.config/claude-desktop/claude_desktop_config.json
NPX
{
"mcpServers": {
"npm-sentinel-mcp": {
"command": "npx",
"args": [
"-y",
"@nekzus/mcp-server"
]
}
}
}
构建
# Build with npm
npm install
npm run build
许可证
此MCP服务器根据MIT许可证授权。这意味着您可以在遵守MIT许可证条款和条件的前提下自由使用、修改和分发该软件。更多详情,请参阅项目存储库中的LICENSE文件。
MIT © nekzus