关于 license-compliance
license-compliance 是用于检查 npm 依赖许可证是否符合预设或自定义 SPDX 政策的 MCP 服务。它会追踪问题包的依赖链,并生成按严重程度分组的报告。
主要功能
- 01按许可证政策检查 npm 依赖
- 02使用预设政策或自定义 SPDX 表达式
- 03追踪违规包的依赖链
- 04生成按严重程度分组的 Markdown 报告
- 05说明 SPDX 许可证条款与风险
适用场景
- 01检查 npm 项目是否违反许可证政策
- 02追踪问题许可证如何进入项目
- 03了解 SPDX 许可证的权限与限制
MCP 相关
向 MCP 客户端提供 `check-licenses` 和 `explain-license` 工具。前者扫描项目路径并报告政策符合情况,后者解释 SPDX 许可证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| path | string | 是 | 项目根目录的绝对路径(必须包含 package.json 和 node_modules) |
| policy | string | 否 | 策略预设("permissive"、"weak-copyleft"、"copyleft")或自定义 SPDX 表达式,例如 "(MIT OR Apache-2.0)" |
详细介绍
license-compliance-mcp
扫描 npm 项目依赖项并检查许可证合规问题的 MCP 服务。在代码发布前发现 GPL 许可证污染。
工具
check-licenses
根据许可证政策扫描项目的 npm 依赖项,并获取详细的合规报告。
参数:
path(必填)— 项目根目录的绝对路径policy(可选,默认值:"permissive")— 政策预设或自定义 SPDX 表达式"permissive"— 仅允许 MIT、ISC、BSD、Apache-2.0 等许可证。"weak-copyleft"— 增加 LGPL、MPL-2.0、EPL-2.0"copyleft"— 增加 GPL、AGPL- 自定义:
"(MIT OR Apache-2.0)"— 任何有效的 SPDX 表达式
explain-license
以通俗易懂的语言说明任何 SPDX 许可证,包括权限、条件、限制、兼容性及注意事项。
参数:
license(必填)— SPDX 标识符(例如,"MIT"、"GPL-3.0-only"、"Apache-2.0")
安装
Claude Code
claude mcp add license-compliance -- npx -y license-compliance-mcp
Claude Desktop / Cursor
添加到你的配置文件(claude_desktop_config.json 或 .cursor/mcp.json):
{
"mcpServers": {
"license-compliance": {
"command": "npx",
"args": ["-y", "license-compliance-mcp"]
}
}
}
工作原理
- 使用
license-checker-rseidelsohn扫描node_modules - 使用
spdx-correct将许可证字符串规范化为有效的 SPDX 格式 - 使用
spdx-satisfies根据政策评估每个软件包 - 追踪依赖链,展示问题软件包是如何进入项目的
- 生成按严重程度分组的 Markdown 报告(严重 > 警告 > 信息)
要求
- Node.js >= 18
- 项目必须已安装
node_modules(npm install)
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。