返回 MCP 目录
public公开dns本地运行

scanoss-mcp-server

SCANOSS MCP服务器是一个集成SCANOSS开源扫描技术的服务,通过Model Context Protocol为语言模型提供代码片段扫描、开源许可证合规性检查及组件分析功能。

article

README

🚀 SCANOSS MCP 服务器

SCANOSS MCP 服务器基于 Model Context Protocol (MCP),整合了 SCANOSS 技术,可对代码进行扫描,确保开源许可合规性,帮助开发者降低法律风险。

🚀 快速开始

SCANOSS MCP 服务器将 SCANOSS 的开源扫描功能与 Model Context Protocol 相结合,让语言模型具备强大的代码扫描与合规性检查能力。通过该服务器,AI 助手能实时反馈代码的开源许可情况,保障代码符合开源许可要求。

✨ 主要特性

  • 代码扫描:可检测代码片段中的开源组件,涵盖完整组件、文件和代码段。
  • 许可证合规性:分析许可证组合,识别兼容性和合规性问题。
  • 格式化结果:输出结构良好且可操作的扫描结果。
  • 可选 API 密钥:支持免费(osskb.org)和企业版 SCANOSS 实例。

📦 安装指南

先决条件

  • Python 3.12+
  • uv 用于 Python 包管理
  • SCANOSS Python SDK
  • MCP Python SDK

本地安装

  1. 克隆此仓库:

    git clone https://github.com/matiasdaloia/scanoss-mcp-server.git
    cd scanoss-mcp-server
    
  2. 使用 uv 安装依赖项:

    uv venv
    uv pip install -e .
    
  3. (可选)在根目录下创建一个 .env 文件并添加 SCANOSS API 密钥:

    SCANOSS_API_KEY=your_api_key_here
    SCANOSS_API_URL=https://your-scanoss-instance.com/api/scan/direct
    

    如果未提供 API 密钥,服务器将使用免费的 osskb.org 服务。

Docker 安装

  1. 拉取预构建的 Docker 镜像:

    docker pull mcp/scanoss-mcp-server
    

    或自行构建:

    docker build -t mcp/scanoss-mcp-server .
    
  2. 使用 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

运行 MCP 服务器:

uv run scanoss_mcp_server.py

使用 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

配置客户端

针对 Claude Desktop 的配置示例如下:

{
  "mcp_server": {
    "host": "localhost",
    "port": 8000,
    "api_key": "your_api_key_here"
  }
}

🤝 贡献

欢迎贡献!请参考项目文档了解如何参与。

📄 许可证

本项目采用 MIT License,具体条款见 LICENSE 文件。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端