athapong
MCP Serverathapongpublic

argus

A Model Context Protocol (MCP) server for analyzing GitLab repositories and performing security assessments.

Repository Info

1
Stars
2
Forks
1
Watchers
1
Issues
Python
Language
MIT License
License

About This Server

A Model Context Protocol (MCP) server for analyzing GitLab repositories and performing security assessments.

Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.

Documentation

Argus - Repository Analysis and Security Assessment Tool

A powerful Model Context Protocol (MCP) tool for analyzing code repositories, performing security scans, and assessing code quality across multiple programming languages.

Features

  • Multi-Language Support

    • Go: gocyclo, golangci-lint analysis
    • Java: PMD static analysis
    • Python: Pylint, Bandit security checks
    • JavaScript/TypeScript: ESLint analysis
    • Automatic language detection
  • Security Scanning

    • Integrated Trivy vulnerability scanner
    • Comprehensive security reports
    • Support for multiple branches
  • Git Operations

    • Branch enumeration and management
    • Commit history analysis
    • Diff comparisons
    • Repository structure visualization

Installation

Prerequisites

  • Python 3.8+
  • Git
  • libmagic (system dependency)

System Dependencies

macOS

brew install libmagic

Linux (Ubuntu/Debian)

sudo apt-get update
sudo apt-get install -y libmagic1

Installation via uv

uvx argus

Usage

Basic MCP Commands

# Analyze repository structure
analyze_repository_structure(
    repo_url="https://gitlab.com/user/repo",
    gitlab_credentials={"api_key": "your-token"},  # Optional
    branch="main"  # Optional
)

# Perform code quality analysis
analyze_code_quality(
    repo_url="https://gitlab.com/user/repo",
    language="python"  # Optional, will auto-detect if not specified
)

# Security scan
security_scan_repository(
    repo_url="https://gitlab.com/user/repo",
    scan_type="trivy"
)

# Compare changes
compare_git_changes(
    repo_url="https://gitlab.com/user/repo",
    source="feature-branch",
    target="main"
)

# Security scan repository
security_scan_repository(
    repo_url="https://gitlab.com/user/repo",
    scan_type="trivy"
)

### MCP Configuration

```json
{
    "command": "uvx",
    "args": [
        "--from",
        "git+https://github.com/athapong/argus",
        "argus"
    ],
    "alwaysAllow": [
        "get_commit_history",
        "enumerate_branches",
        "compare_git_changes",
        "analyze_code_quality",
        "security_scan_repository"  
    ],
    "timeout": 300
}

Supported Analysis Tools

LanguageToolsInstallation
Gogocyclo, golangci-lintgo install github.com/fzipp/gocyclo/cmd/gocyclo@latest
JavaPMDmacOS: brew install pmd, Linux: Auto-installed
PythonPylint, BanditAuto-installed via dependencies
JavaScriptESLintnpm install -g eslint

Environment Variables

  • SKIP_SYSTEM_CHECK: Set to any value to skip system dependency checks
  • PATH: Automatically updated for tool installations

Error Handling

The tool provides detailed error messages and graceful fallbacks:

  • Dependency installation failures show warnings instead of errors
  • Language detection falls back to specified language if auto-detection fails
  • Tool execution errors are captured in the response structure

License

MIT License

Contributing

  1. Fork the repository
  2. Create your feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a new Pull Request

Quick Start

1

Clone the repository

git clone https://github.com/athapong/argus
2

Install dependencies

cd argus
npm install
3

Follow the documentation

Check the repository's README.md file for specific installation and usage instructions.

Repository Details

Ownerathapong
Repoargus
LanguagePython
LicenseMIT License
Last fetched8/10/2025

Recommended MCP Servers

💬

Discord MCP

Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.

integrationsdiscordchat
🔗

Knit MCP

Connect AI agents to 200+ SaaS applications and automate workflows.

integrationsautomationsaas
🕷️

Apify MCP Server

Deploy and interact with Apify actors for web scraping and data extraction.

apifycrawlerdata
🌐

BrowserStack MCP

BrowserStack MCP Server for automated testing across multiple browsers.

testingqabrowsers

Zapier MCP

A Zapier server that provides automation capabilities for various apps.

zapierautomation