MCP ExplorerExplorer

Nemesis

@li-clementon a year ago
2 Apache-2.0
FreeCommunity
AI Systems
Nemesis is a tool for automatically generating Third - Party and Open Source Software Notices, natively supporting MCP protocol calls.

Overview

What is Nemesis

Nemesis is a Go-based tool designed to automatically generate Third-Party and Open Source Software Notices by scanning text files in a directory and analyzing copyright information using Model Context Protocol (MCP).

Use cases

Use cases include scanning project directories for copyright notices, generating compliance reports, analyzing open-source dependencies, and ensuring adherence to licensing requirements.

How to use

To use Nemesis, install it via cloning the repository or using ‘go get’. Run the copyright scanner with ‘copyright-scanner ’ to scan for copyright information. For MCP analysis, configure MCP settings and use the provided methods to analyze files.

Key features

Key features include smart text file detection, intelligent copyright recognition, full text scanning, automatic deduplication, MCP integration for advanced analysis, support for single files and ZIP archives, and clear formatted output.

Where to use

Nemesis can be used in software development, compliance auditing, and any domain where copyright management and open-source licensing are crucial.

Content

Nemesis

A Go-based tool designed to scan all text files in a directory, extract copyright information, and analyze it using Model Context Protocol (MCP).

We also provide documents generated and hosted by DeepWiki, see here

Features

  • Smart text file detection (automatically skips binary files)
  • Intelligent copyright information recognition (supports “copyright”, “©”, “©”, and “©” identifiers)
  • Full text scanning to ensure no copyright information is missed
  • Automatic deduplication to avoid duplicate copyright information
  • MCP integration for advanced copyright analysis
    • Summarization of copyright holders
    • Analysis of copyright years and durations
    • Detection of potential conflicts
    • Compliance recommendations
  • Support for both single files and ZIP archives
  • Clear formatted output to file

Installation

You can install Nemesis in one of the following ways:

Option 1: Clone the repository

git clone https://github.com/li-clement/Nemesis.git
cd Nemesis
go build ./cmd/scanner

Option 2: Using go get (requires the package to be published)

go get github.com/li-clement/Nemesis

Usage

Basic Copyright Scanning

copyright-scanner <scan directory> <output file>

Example:

copyright-scanner . copyright_results.txt

MCP Analysis

To use the MCP analysis features, you’ll need to set up your MCP configuration:

config := MCPConfig{
    Model:    "your-model",
    Endpoint: "your-mcp-endpoint",
    APIKey:   "your-api-key",
}

scanner := scanner.NewScanner()
mcpService, err := scanner.NewMCPService(scanner, config)

Then you can use the following methods:

  1. Analyze a ZIP file:
result, err := mcpService.AnalyzeCopyright("path/to/your.zip")
  1. Analyze with detailed report:
ctx := context.Background()
result, err := mcpService.AnalyzeZipFile(ctx, "path/to/your.zip")

Project Structure

.
├── cmd/
│   └── scanner/          # Copyright scanner CLI tool
├── internal/
│   └── scanner/          # Core implementation of copyright scanner
├── go.mod               # Go module definition
├── LICENSE             # Apache 2.0 License
└── README.md           # Project documentation

Output Format

Basic Scanning Output

Each line in the output file represents a unique copyright notice, for example:

Copyright (c) 2024 Example Corp.
Copyright © 2023 Another Company Inc.
Copyright (C) 2022 Open Source Project

MCP Analysis Output

The MCP analysis provides a structured report including:

Copyright Analysis Report
------------------------

1. Copyright Holders Summary:
   - Example Corp.
   - Another Company Inc.
   - Open Source Project

2. Copyright Years:
   - Range: 2022-2024
   - Active copyrights: 3

3. Potential Conflicts:
   - No conflicts detected

4. Compliance Recommendations:
   - Ensure all derivative works maintain copyright notices
   - Include license text in distribution

Dependencies

Roadmap

The following features are planned for future releases:

Near-term Goals

  • [x] MCP (Model Context Protocol) Integration
    • Implementation of Model Context Protocol for enhanced context management
    • Support for dynamic context switching and handling
    • Improved model interaction and response generation
    • Context-aware processing capabilities
    • Integration with various LLM providers
  • [ ] Advanced context manipulation features
  • [ ] Performance optimization for large-scale processing

Future Enhancements

  • [ ] Integration with CI/CD pipelines
  • [ ] Web interface for easier interaction
  • [ ] Support for multiple model providers
  • [ ] Custom context definition and management
  • [ ] Batch processing capabilities
  • [ ] Advanced conflict detection algorithms

License

This project is licensed under the Apache License 2.0.

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers