Semgrep Server について
Semgrep Serverは、Semgrepの静的コード分析とルール管理を開発環境に連携するMCPサーバーです。MCPツールでスキャン、結果処理、ルール作成を行えます。
主な機能
- 01指定ディレクトリのスキャン
- 02利用可能なルールの一覧表示
- 03スキャン結果の分析
- 04Semgrepルールの作成
- 05結果のフィルタリングとエクスポート
- 062つのスキャン結果の比較
活用シーン
- 01開発環境からコードディレクトリをスキャン
- 02検出結果の確認と絞り込み
- 03プロジェクト用のカスタムルールを作成
- 04別々のスキャン結果を比較
MCP 対応
ディレクトリスキャン、ルール作成、結果の絞り込みや比較など、Semgrepのスキャン、ルール管理、結果処理ツールをクライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Semgrep Server
Model Context Protocol(MCP)サーバーです。Semgrep を開発環境に統合します。このサーバーを使用すると、MCP プロトコルを通じて静的コード解析を実行し、Semgrep ルールを直接管理できます。
インストール
# Repository klonen
git clone [repository-url]
cd semgrep-server
# Abhängigkeiten installieren
npm install
# Server bauen
npm run build
使用方法
サーバーは次の方法で起動できます。
# Produktionsmodus
npm start
# Entwicklungsmodus
npm run dev
利用可能なツール
サーバーでは次の MCP ツールを利用できます。
scan_directory:ディレクトリ内で Semgrep スキャンを実行しますlist_rules:利用可能な Semgrep ルールを一覧表示しますanalyze_results:スキャン結果を分析しますcreate_rule:新しい Semgrep ルールを作成しますfilter_results:さまざまな条件でスキャン結果を絞り込みますexport_results:スキャン結果をさまざまな形式でエクスポートしますcompare_results:2つのスキャン結果を比較します
開発
このプロジェクトは TypeScript で記述されており、サーバーの実装には MCP SDK を使用しています。
プロジェクト構成
semgrep-server/
├── src/ # Quellcode
├── build/ # Kompilierte JavaScript-Dateien
├── test.js # Testdateien
└── test-rule.yaml # Beispiel Semgrep-Regel
依存関係
- Node.js と npm
- TypeScript
- MCP SDK
- HTTP リクエスト用の Axios
ライセンス
このプロジェクトは ISC ライセンスのもとで公開されています。詳細については、LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。