
SCANOSS MCP Server

2025.04.24
0
Python代码扫描许可证合规性开发效率
SCANOSS MCP Server 是一个基于模型上下文协议(MCP)的服务,主要用于扫描代码以检测开源许可证合规性。它集成了SCANOSS的开源扫描技术,帮助语言模型实时检测代码中的开源组件,检查许可证合规性,并提供可操作的合规建议。
View on GitHub
Overview
基本能力
产品定位
SCANOSS MCP Server 是一个用于代码开源许可证合规性检测的服务,帮助开发者和AI助手确保代码中的开源组件符合相关许可证要求。
核心功能
- 代码扫描:检测代码片段中的开源组件,包括完整组件、文件和片段。
- 许可证合规性:分析许可证组合的兼容性和合规性要求。
- 格式化结果:提供格式化的、可操作的扫描结果。
- 可选API密钥:支持免费(osskb.org)和企业级SCANOSS实例。
适用场景
- AI助手生成或修改代码时的实时合规性检查。
- 开发者在代码提交前的开源许可证合规性验证。
- 企业级代码库的开源组件管理。
工具列表
- scan_code_snippet:扫描代码片段中的开源组件。
- 参数:
code
:要扫描的代码片段(必需)file_name
:文件名(必需)
常见问题解答
- 无API密钥时,服务将使用免费的osskb.org服务。
- 支持Docker和本地安装两种方式。
使用教程
使用依赖
- Python 3.12+
- uv for Python package management
- SCANOSS Python SDK
- MCP Python SDK
安装教程
本地安装
-
克隆仓库:
git clone https://github.com/matiasdaloia/scanoss-mcp-server.git cd scanoss-mcp-server
-
使用
uv
安装依赖:uv venv uv pip install -e .
-
(可选)在根目录创建
.env
文件,添加SCANOSS API密钥:SCANOSS_API_KEY=your_api_key_here SCANOSS_API_URL=https://your-scanoss-instance.com/api/scan/direct
Docker安装
-
拉取预构建的Docker镜像:
docker pull mcp/scanoss-mcp-server
或自行构建:docker build -t mcp/scanoss-mcp-server .
-
运行Docker容器:
docker run -i --rm -e SCANOSS_API_KEY=your_key_here -e SCANOSS_API_URL=https://your-scanoss-instance.com/api/scan/direct mcp/scanoss-mcp-server
调试方式
本地运行
uv run scanoss_mcp_server.py
Docker运行
docker run -i --rm -e SCANOSS_API_KEY=your_key_here mcp/scanoss-mcp-server