mcpField
S
Security Copilot and Sentinel MCP Server

Security Copilot and Sentinel MCP Server

ローカル
github.com/jguimera開発ツール2381 週間前に更新

Security Copilot and Sentinel MCP Server について

Security Copilot and Sentinel MCP Server は、FastMCP を用いた Python 製の MCP サーバーです。Azure Identity 認証により Microsoft Sentinel と Microsoft Security Copilot を接続します。Security Copilot のスキルやプラグイン、特に KQL スキルの開発者を主な対象としています。

主な機能

  1. 01Sentinel ワークスペースへの KQL クエリ実行
  2. 02Security Copilot スキルセットの一覧表示
  3. 03スキルセットとプラグインのアップロードと更新
  4. 04Security Copilot でのプロンプトとスキルの実行

活用シーン

  1. 01Security Copilot KQL スキルの開発、テスト、デプロイ
  2. 02MCP クライアントからの Sentinel クエリ実行
  3. 03開発環境から Security Copilot へのプラグインのアップロード

MCP 対応

本プロジェクトは SSE トランスポートを用いる MCP サーバーとして動作し、run_sentinel_query、get_skillsets、upload_plugin、run_prompt の 4 つのツールを MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Security Copilot and Sentinel MCP サーバー

Azure Identity Authentication を使用して Microsoft Security Copilot と Microsoft Sentinel を連携する、FastMCP ライブラリベースの Python 製 MCP サーバーです。 図

概要

このプロジェクトは、次の機能を提供する MCP サーバーを実装します。

  • Microsoft Sentinel に対する KQL クエリの実行
  • Microsoft Security Copilot のスキルセット/プラグインのアップロード/更新
  • Microsoft Security Copilot でのプロンプトとスキルの実行

このサーバーは、開発環境と Microsoft Security Copilot をつなぐブリッジとして機能し、スキルとプラグインのテスト、デプロイ、実行を可能にします。MCP サーバーのトランスポート層には SSE を使用します。 現在の連携には多くのユースケースがあります。特に興味深いのは、Security Copilot KQL スキルの開発、テスト、デプロイをサポートすることです。

エージェントフロー1 エージェントフロー2

機能

  • Sentinel との連携:Sentinel ワークスペースに対して KQL クエリを実行します
  • Security Copilot の管理:
    • 既存のスキルセット/プラグインを一覧表示します
    • 新しいスキルセット/プラグインをアップロード、または既存のものを更新します
    • Security Copilot でプロンプトやスキルを実行します
  • 認証のサポート:対話型ブラウザー、クライアントシークレット、マネージド ID など、複数の認証方法に対応しています

ロードマップ

今後、次の機能を追加する予定です。

  • Promptbook のテストと更新
  • Defender XDR での高度なハンティングクエリの実行

前提条件

  • Python 3.8+
  • Microsoft Sentinel ワークスペース
  • Microsoft Security Copilot へのアクセス
  • Sentinel と Security Copilot に対する適切な Azure 権限

インストール

  1. リポジトリをクローンします。

    git clone https://github.com/jguimera/SecurityCopilotMCPServer.git
    cd SecurityCopilotMCPServer
    
  2. 依存関係をインストールします。

    pip install -r requirements.txt
    
  3. 次の設定を含む .env ファイルを作成します。

    #Add App Reg to use ClientID and Secret authentication
    #AZURE_TENANT_ID=your_tenant_id
    #AZURE_CLIENT_ID=your_client_id
    #AZURE_CLIENT_SECRET=your_client_secret
    SENTINEL_SUBSCRIPTION_ID=your_subscription_id
    SENTINEL_RESOURCE_GROUP=your_resource_group
    SENTINEL_WORKSPACE_NAME=your_workspace_name
    SENTINEL_WORKSPACE_ID=your_workspace_id
    #Authentication Options: interactive, client_secret
    AUTHENTICATION_TYPE=interactive
    

使用方法

サーバーの起動

MCP サーバーを実行します。

python server.py

サーバーを起動する前にテストを実行するには、次のコマンドを実行します。

python server.py --run-tests
使用可能なツール

MCP サーバーでは、次のツールを使用できます。

  1. run_sentinel_query:Sentinel で KQL クエリを実行します
  2. get_skillsets:Security Copilot のスキルセットを一覧表示します
  3. upload_plugin:スキルセット/プラグインをアップロードまたは更新します
  4. run_prompt:Security Copilot でプロンプトまたはスキルを実行します
Cursor 用 MCP クライアント設定

任意のクライアントからこの MCP サーバーを使用できます。このリポジトリには Cursor 用の手順と設定ファイルがあります。

MCP ツールを有効にするには、クライアントプロジェクト内に .cursor フォルダーを追加します。 このフォルダーには、次の 2 つのファイルが含まれています。

  1. Cursor プロジェクトルール(securitycopilotdev.mdc):エージェントによるプロセスの定義やユーザープロンプトの理解を支援するカスタム Cursor ルールが含まれています。
  2. MCP クライアント設定(mcp.json):Cursor を MCP サーバーに接続するファイルです。

/tool_name parameter1="ツールパラメーターの値" を使用して、ツールを直接呼び出せます。 例:/run_prompt content="最も最近のリスクの高いユーザーを一覧表示"

詳細:https://docs.cursor.com/context/model-context-protocol#configuring-mcp-servers

貢献

貢献を歓迎します。お気軽にプルリクエストを送信してください。

  1. リポジトリをフォークします
  2. 機能ブランチを作成します(git checkout -b feature/amazing-feature)
  3. 変更をコミットします(git commit -m 'Add some amazing feature')
  4. ブランチにプッシュします(git push origin feature/amazing-feature)
  5. プルリクエストを作成します

ライセンス

このプロジェクトは MIT License の下でライセンスされています。詳細については LICENSE ファイルを参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。