Argus - Repository Analysis and Security Assessment Tool について
Argus は、複数のプログラミング言語で GitLab リポジトリ、コード品質、セキュリティを分析する MCP サーバーです。Git のブランチや履歴分析に、言語別チェックと Trivy スキャンを組み合わせます。
主な機能
- 01プログラミング言語の自動検出
- 02複数言語のコード品質チェック
- 03Trivy による脆弱性スキャン
- 04ブランチとコミット履歴の分析
- 05Git 差分の比較
- 06リポジトリ構造の分析
活用シーン
- 01GitLab リポジトリのコード品質確認
- 02リポジトリの脆弱性スキャン
- 03ブランチ間の変更比較
- 04リポジトリの履歴と構造の確認
MCP 対応
Argus は、リポジトリ分析、コード品質チェック、Git 操作、セキュリティスキャン機能を MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ツール一覧はまだ取得されていません
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Argus - リポジトリ分析およびセキュリティ評価ツール
複数のプログラミング言語を対象に、コードリポジトリの分析、セキュリティスキャンの実行、コード品質の評価を行う強力な Model Context Protocol(MCP)ツールです。
機能
-
多言語サポート
- Go:gocyclo、golangci-lint による分析
- Java:PMD 静的分析
- Python:Pylint、Bandit によるセキュリティチェック
- JavaScript/TypeScript:ESLint による分析
- 言語の自動検出
-
セキュリティスキャン
- Trivy 脆弱性スキャナーを統合
- 包括的なセキュリティレポート
- 複数のブランチをサポート
-
Git 操作
- ブランチの列挙と管理
- コミット履歴の分析
- 差分の比較
- リポジトリ構造の可視化
インストール
前提条件
- Python 3.8+
- Git
- libmagic(システム依存関係)
システム依存関係
macOS
brew install libmagic
Linux (Ubuntu/Debian)
sudo apt-get update
sudo apt-get install -y libmagic1
uv を使用したインストール
uvx argus
使用方法
基本的な MCP コマンド
# 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
}
サポートされている分析ツール
| 言語 | ツール | インストール |
|---|---|---|
| Go | gocyclo, golangci-lint | go install github.com/fzipp/gocyclo/cmd/gocyclo@latest |
| Java | PMD | macOS:brew install pmd、Linux:自動インストール |
| Python | Pylint, Bandit | 依存関係を通じて自動インストール |
| JavaScript | ESLint | npm install -g eslint |
環境変数
SKIP_SYSTEM_CHECK:任意の値を設定すると、システム依存関係のチェックをスキップしますPATH:ツールのインストール時に自動更新されます
エラー処理
このツールは詳細なエラーメッセージを提供し、適切なフォールバック処理を行います。
- 依存関係のインストールに失敗した場合、エラーではなく警告が表示されます
- 自動検出に失敗した場合、指定された言語にフォールバックします
- ツールの実行エラーはレスポンス構造に記録されます
ライセンス
MIT License
貢献
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更をコミットします
- ブランチにプッシュします
- 新しい Pull Request を作成します
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。