mcpField
S
sophos-central-mcp

sophos-central-mcp

ローカル
github.com/rijul170セキュリティ014 週間前に更新

sophos-central-mcp について

sophos-central-mcpは、顧客テナントを管理するMSP・MSSPチーム向けのSophos Centralセキュリティ運用用MCPサーバーです。エンドポイント、メール、ファイアウォール、調査のツールを統合し、テナント別ルーティングと書き込み・破壊的操作の制御に対応します。

主な機能

  1. 0133のAPIドメインにまたがる334ツール
  2. 02複数の顧客テナントの管理
  3. 03エンドポイントの隔離、スキャン、調査
  4. 04Live DiscoverとXDRのSQLクエリ
  5. 05メール、ファイアウォール、DNS保護の管理
  6. 06読み取り専用モードと破壊的操作の制御

活用シーン

  1. 01顧客テナントを横断したアラートのトリアージ
  2. 02Live Discoverによるエンドポイント調査
  3. 03XDR Data Lakeでの過去の脅威ハンティング
  4. 04メール隔離とファイアウォールポリシーの管理

MCP 対応

stdio、SSE、Streamable HTTPを通じてSophos Central APIの操作をMCPクライアントに公開します。OAuth2トークンの更新と、テナントに応じたリージョンへのルーティングをサーバーが処理します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"rijul170-sophos-central": {
"command": "npx",
"args": [
"-y",
"@rijul170/sophos-mcp"
]
}
}
}
起動コマンドnpx -y @rijul170/sophos-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@rijul170/sophos-mcp1.1.0

ツール

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

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

詳細

Sophos Central MCP サーバー

Node.js License MCP Protocol Tools GitHub Stars

Build & Test npm MCP Registry

MSP/MSSP チーム向け: 自然言語で、すべての Sophos テナントにわたるエンドポイントセキュリティ、メールの脅威、ファイアウォールポリシーを管理できます。Claude にアラートの調査、ホストの隔離、Live Discover クエリの実行、XDR データとの相関分析を依頼できます。AI ワークフローから離れる必要はありません。

概要

Sophos Central API 用の Model Context Protocol(MCP)サーバーです。Claude やその他の MCP 対応クライアントを通じて、AI を活用したセキュリティ運用を実現します。Partner Super Admin の認証情報を使用する MSP/MSSP 環境向けに設計されており、単一のサーバーインスタンスからすべての顧客テナントを対象としたマルチテナント管理を提供します。エンドポイント保護、脅威検知、Live Discover フォレンジック、XDR ハンティング、メールセキュリティ、ファイアウォール管理などを網羅しています。

機能

  • 33 の API ドメインにわたる 334 個のツール — Sophos Central API を幅広く網羅
  • マルチテナント MSSP サポート — Partner Super Admin の認証情報を使用して、任意の顧客テナントを列挙して対象に指定
  • エンドポイントの隔離と調査 — エンドポイントの隔離、改ざん防止の確認、スキャンの開始
  • アラートのトリアージ — テナント間で Sophos アラートの一覧表示、フィルタリング、確認、対応
  • Live Discover SQL クエリ — 管理対象エンドポイント上でリアルタイムのフォレンジック SQL クエリを直接実行
  • XDR Data Lake ハンティング — Sophos XDR データレイクに対する SQL を使用した過去の脅威ハンティング
  • 脅威検知 — 振る舞い検知の検索、グループ化、件数の集計
  • ケース管理 — 調査ケースを最初から最後まで作成、管理
  • メールセキュリティ — 隔離管理、メールボックス一覧表示、配信後のメッセージ回収
  • ファイアウォール管理 — CRUD 操作、グループ管理、ファームウェアのアップグレード
  • DNS 保護 — ロケーションポリシー、カスタムドメインの許可/ブロックリスト
  • SOC プレイブック — IR と脅威ハンティングのワークフローをガイドする組み込みの sophos_playbook_* ツール
  • 3 つのトランスポートモード — stdio(Claude Desktop)、SSE、Streamable HTTP(Claude Code)
  • OAuth2 トークンの自動管理 — 手動操作不要のトークン更新
  • リージョンルーティング — リクエストを適切なデータリージョン(US、EU、CA、AU、JP、BR)に自動ルーティング

前提条件

  • Node.js v18 以降(ネイティブの fetch サポートが必要)
  • npm v8 以降
  • Sophos Central Partner Super Admin API 認証情報 — 作成方法については設定を参照してください

インストール

git clone https://github.com/rijul170/sophos-central-mcp.git
cd sophos-central-mcp
npm install
npm run build

設定

1. .env ファイルを作成する
cp .env.example .env

認証情報を指定するため、.env を編集します。

# Required
SOPHOS_CLIENT_ID=your-client-id-here
SOPHOS_CLIENT_SECRET=your-client-secret-here

# Optional — transport mode: stdio | sse | streamable-http (default: stdio)
MCP_TRANSPORT=stdio

# Optional — host for HTTP transports (default: 127.0.0.1)
MCP_HOST=127.0.0.1

# Optional — port for HTTP transports (default: 3001)
MCP_PORT=3001
2. Sophos Central で API 認証情報を作成する
  1. Sophos Central Partner Dashboard にログインします
  2. Settings & Policies → API Credentials Management に移動します
  3. Add Credential をクリックします
  4. ロールを Service Principal Super Admin に設定します
  5. Client ID と Client Secret をコピーします。シークレットは一度だけ表示されます
変数必須説明
SOPHOS_CLIENT_IDはいSophos Central の Partner Super Admin Client ID
SOPHOS_CLIENT_SECRETはい対応するクライアントシークレット
MCP_TRANSPORTいいえトランスポートモード:stdio、sse、または streamable-http(デフォルト:stdio)
MCP_HOSTいいえHTTP トランスポート用のバインドホスト(デフォルト:127.0.0.1)
MCP_PORTいいえHTTP トランスポート用のポート(デフォルト:3001)
SOPHOS_MCP_READONLYいいえtrue に設定すると、読み取りツールのみが登録されます。書き込みツールと破壊的なツールが AI クライアントに公開されることはありません
SOPHOS_MCP_ALLOW_DESTRUCTIVEいいえ破壊的なツール(削除、エンドポイントの隔離、Live Discover の実行、クローバックなど)はデフォルトで無効になっています。true に設定するとすべて有効になり、ツール名をカンマ区切りで指定すると、選択したツールのみ有効になります

Claude Code との連携(HTTP モード)

Claude Code には HTTP モードが推奨されます。同時セッションに対応し、会話ごとにサーバーを再起動する必要がありません。

サーバーを起動します:

MCP_TRANSPORT=streamable-http MCP_PORT=3001 node build/index.js

または、.env に MCP_TRANSPORT=streamable-http を設定して、次を実行します:

node build/index.js

Claude Code の MCP 設定に追加します(.claude/settings.json またはグローバル設定):

{
  "mcpServers": {
    "sophos-mcp": {
      "type": "http",
      "url": "http://localhost:3001/mcp"
    }
  }
}

稼働状態の確認には、http://localhost:3001/health の /health エンドポイントを利用できます。

Claude Desktop との連携(stdio モード)

stdio モードは Claude Desktop の標準トランスポートです。サーバープロセスは Claude Desktop によって直接管理されます。

Claude Desktop の MCP 設定に追加します(claude_desktop_config.json):

{
  "mcpServers": {
    "sophos-mcp": {
      "command": "node",
      "args": ["/path/to/sophos-central-mcp/build/index.js"],
      "env": {
        "SOPHOS_CLIENT_ID": "your-client-id",
        "SOPHOS_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

/path/to/sophos-central-mcp を、クローンしたリポジトリの絶対パスに置き換えます。

SSE モード

SSE(Server-Sent Events)モードは、Streamable HTTP に対応していないレガシー MCP クライアント向けに利用できます。

MCP_TRANSPORT=sse MCP_PORT=3001 node build/index.js

SSE エンドポイントは http://localhost:3001/sse で利用できます。

ツールドメイン

ドメインツール説明
アラート5Sophos アラートの一覧表示、取得、確認、および対応
エンドポイント26隔離、改ざん防止、スキャン、移行、一括操作
検知7クエリベースの振る舞い検知の検索、グループ化、件数確認
Live Discover11管理対象エンドポイントに対するリアルタイムのフォレンジック SQL クエリ
XDR10Sophos XDR Data Lake に対する過去データの SQL ハンティング
ケース9調査ケースの作成、読み取り、更新、クローズ、および証拠管理
パートナー23テナントの列挙、管理者、ロール、請求、権限セット
組織2組織タイプのアカウントのテナント一覧表示
ポリシー7すべての Sophos ポリシータイプに対する完全な CRUD
グループ8エンドポイントグループの CRUD とメンバー管理
SIEM2SIEM 統合用のイベントとアラートのエクスポート
ファイアウォール20ファイアウォールの CRUD、グループ管理、ファームウェアのアップグレード
DNS Protection15ロケーション、ポリシー、カスタムドメインの許可/ブロックリスト
メール31検疫管理、メールボックス、配信後のメッセージ取り消し
ディレクトリ15ユーザーとユーザーグループの完全な CRUD
設定16改ざん防止、除外、ウェブコントロール、エンドポイントタグ
許可/ブロック12SHA256 ハッシュ、証明書、パスの許可/ブロックリスト
エクスプロイト対策8アプリケーションレベルのエクスプロイト保護の除外
IPS 除外10ネットワーク IPS と隔離の除外管理
テナント管理者14テナント管理者の CRUD、ロール割り当て、カスタムロール
アカウントの健全性4健全性チェックレポート、スヌーズ、過去の健全性スコア
アカウント管理4アカウントレベルの設定とライセンス管理
監査イベント2コンプライアンスとガバナンスのための監査ログ取得
ビジネスオートメーション3自動化ルールとビジネスロジックの設定
ライセンス2ライセンスの利用資格と使用状況のクエリ
モバイル38モバイルデバイス管理 — 登録、ポリシー、デバイス操作
クラウドセキュリティ6クラウドワークロード保護の状態と検出事項
ソフトウェア9インストーラーのダウンロード、ソフトウェアインベントリ、パッケージ
スイッチ3ネットワークスイッチ管理
WiFi3ワイヤレスネットワーク管理
ユーザーアクティビティ2ユーザーアクティビティのレポートとセッションデータ
プレイブック5SOC のインシデント対応と脅威ハンティングのワークフローガイド
認証2OAuth2 認証と WhoAmI による ID 検出

MSSP マルチテナントサポート

このサーバーは、管理対象のすべての顧客テナントを可視化できる Sophos Partner Super Admin の認証情報を中心に構築されています。

仕組み:

  1. 起動時に、サーバーはパートナーの認証情報を使用して Sophos Central に認証し、組織タイプ(パートナーまたは組織)を検出します。
  2. sophos_list_tenants(組織アカウントの場合は sophos_list_org_tenants)を使用して、管理対象のすべてのテナントとその ID を列挙します。
  3. テナントスコープの任意のツールに tenantId パラメーターを渡すと、特定の顧客環境を対象にできます。
  4. すべての API 呼び出しは、テナントのデータ所在地に基づいて、適切なリージョナルエンドポイント(US、EU、CA、AU、JP、BR)に自動的にルーティングされます。

ワークフローの例:

1. sophos_list_tenants          → get all tenant IDs and names
2. sophos_list_alerts           → pass tenantId for a specific customer
3. sophos_isolate_endpoint      → isolate an endpoint in that tenant
4. sophos_live_discover_run_query → run forensic SQL on the isolated host

SOC プレイブック

このサーバーには、一般的な SOC ワークフローに関する構造化された段階的ガイダンスを提供する、5 つの組み込みプレイブックツールが付属しています。これらは調査の開始時に呼び出し、対応の方向性を定めるために設計されています。

ツール目的
sophos_playbook_incident_responseエンドツーエンドの IR プレイブック:トリアージ → 範囲特定 → 封じ込め → 修復
sophos_playbook_threat_hunt仮説主導型および IOC ベースの脅威ハンティングワークフロー
sophos_mitre_attack_guideMITRE ATT&CK の手法と Sophos ツールの対応付け
sophos_soc_tool_guideSOC のユースケース別に整理された全 334 ツールのリファレンスガイド
sophos_playbook_edr_investigationエンドポイント検知に関する EDR 専用の調査プレイブック

SOC クイックスタート

サーバーを Claude に接続すると、自然言語でセキュリティ運用を実行できます。プロンプトの例:

アラートのトリアージ:

「過去 24 時間にテナント <tenant-id> で発生した、未解決の重大および高深刻度のアラートをすべて種類別に一覧表示してください。」

エンドポイントの調査:

「テナント <tenant-id> のエンドポイント <hostname> を隔離し、Live Discover SQL クエリを実行して、実行中のすべてのプロセスとアクティブなネットワーク接続を一覧表示してください。」

XDR 脅威ハンティング:

「テナント <tenant-id> に対して XDR Data Lake クエリを実行し、過去 7 日間にエンコードされたコマンドを使用して実行された PowerShell がないか調べてください。」

MSSP の概要:

「管理対象のテナントをすべて列挙し、未解決の重大アラートがあるテナントを表示してください。」

メールセキュリティ:

「テナント <tenant-id> の過去 48 時間に隔離されたメッセージをすべて表示し、誤検知としてフラグ付けされたものをリリースしてください。」

開発

# Run with hot-reload (no build step required)
npm run dev

# Build TypeScript to JavaScript
npm run build

# Run the built server
npm start

# Inspect tools interactively with MCP Inspector
npx @modelcontextprotocol/inspector node build/index.js

プロジェクト構成

src/
├── index.ts                          # Entry point — transport setup, registers all 33 modules
├── config.ts                         # Environment variable validation
├── auth/
│   └── auth-manager.ts               # OAuth2 token management with auto-refresh
├── client/
│   ├── sophos-client.ts              # HTTP client (retry, rate limiting, backoff)
│   └── tenant-router.ts             # Tenant → regional API host mapping
├── tools/                            # 33 tool files, 334 tools total
│   ├── auth-tools.ts                 # 2 tools
│   ├── partner-tools.ts              # 23 tools
│   ├── organization-tools.ts         # 2 tools
│   ├── endpoint-tools.ts             # 26 tools
│   ├── group-tools.ts                # 8 tools
│   ├── policy-tools.ts               # 7 tools
│   ├── alert-tools.ts                # 5 tools
│   ├── detections-tools.ts           # 7 tools
│   ├── siem-tools.ts                 # 2 tools
│   ├── xdr-tools.ts                  # 10 tools
│   ├── live-discover-tools.ts        # 11 tools
│   ├── firewall-tools.ts             # 20 tools
│   ├── dns-protection-tools.ts       # 15 tools
│   ├── email-tools.ts                # 31 tools
│   ├── directory-tools.ts            # 15 tools
│   ├── settings-tools.ts             # 16 tools
│   ├── allowed-blocked-tools.ts      # 12 tools
│   ├── exploit-mitigation-tools.ts   # 8 tools
│   ├── ips-exclusion-tools.ts        # 10 tools
│   ├── tenant-admin-tools.ts         # 14 tools
│   ├── account-health-tools.ts       # 4 tools
│   ├── cases-tools.ts                # 9 tools
│   ├── software-tools.ts             # 9 tools
│   ├── audit-events-tools.ts         # 2 tools
│   ├── business-automation-tools.ts  # 3 tools
│   ├── licensing-tools.ts            # 2 tools
│   ├── mobile-tools.ts               # 38 tools
│   ├── switch-tools.ts               # 3 tools
│   ├── wifi-tools.ts                 # 3 tools
│   ├── cloud-security-tools.ts       # 6 tools
│   ├── user-activity-tools.ts        # 2 tools
│   ├── account-management-tools.ts   # 4 tools
│   └── playbook-tools.ts             # 5 tools
└── types/
    └── sophos-types.ts               # TypeScript interfaces for all Sophos API types

セキュリティに関する考慮事項

  • 読み取り専用モード — 起動時に読み取りツールのみを登録するには、SOPHOS_MCP_READONLY=true を設定します。何を要求された場合でも、書き込みツールと破壊的操作を行うツールは AI クライアントに公開されません。XDR Data Lake と検出のクエリは引き続き利用できます(読み取り分析のため)。Live Discover は利用できません(管理対象エンドポイントで osquery を実行するため)。

  • 破壊的操作の制御 — 書き込みが有効な場合でも、破壊的操作を行うツール(エンドポイントの隔離、削除、メールの取り消し、Live Discover の実行、ファームウェアのアップグレードなど)はデフォルトで無効になっています。SOPHOS_MCP_ALLOW_DESTRUCTIVE を使って明示的に有効にしてください。true ではなく、特定のツール名をカンマ区切りで指定する方法を推奨します。

    # Enable only endpoint isolation for IR workflows
    SOPHOS_MCP_ALLOW_DESTRUCTIVE=sophos_isolate_endpoint,sophos_deisolate_endpoint
    
  • ツールのアノテーション — 各ツールには MCP の readOnlyHint/destructiveHint アノテーションが付与されているため、準拠クライアントは独自の確認ポリシーを適用できます。

  • 認証情報の取り扱い — API 認証情報は起動時に環境変数から読み込まれ、Sophos 認証エンドポイント以外に記録または送信されることはありません。.env ファイルをソース管理にコミットしないでください。.env は .gitignore に記載されています。

  • Partner Super Admin の権限範囲 — これらの認証情報には、すべての管理対象テナントに対する読み取り/書き込みアクセス権があります。特権サービスアカウントの認証情報と同様に慎重に取り扱ってください。漏えいした場合は、直ちにローテーションしてください。

  • 可能な限り読み取り専用で操作する — ユースケースで可視化のみが必要な場合(アラートのトリアージ、脅威ハンティング、レポート作成)は、より制限されたロールを持つ別の認証情報の作成を検討してください。Partner Super Admin が必要なのは、書き込み操作(隔離、ポリシーの変更、ユーザー管理)のみです。

  • ネットワークバインド — HTTP トランスポートはデフォルトで 127.0.0.1 を使用します。MCP サーバーのポートをパブリックに公開しないでください。リモートアクセスが必要な場合は、認証済みのリバースプロキシの背後に配置するか、VPN を使用してください。

  • 監査証跡 — このサーバーを通じて行われた Sophos API 呼び出しはすべて Sophos Central の監査イベントに記録され、使用された API 認証情報に紐付けられます。

関連する MCP サーバー

これら 3 つのサーバーは、セキュリティスタックの相互補完的なレイヤー(ネットワーク/ログ(AlertLogic)、エンドポイント保護(Sophos)、EDR/脅威インテリジェンス(CrowdStrike))をカバーします。これらを組み合わせて、フルスタックの AI 活用型 SOC 運用を実現できます。

サーバープラットフォーム主な機能
falcon-mcpCrowdStrike FalconEDR テレメトリ、RTR、脅威インテリジェンス、MSSP Flight Control、1,296 個のツール
sophos-central-mcpSophos Centralエンドポイント隔離、Live Discover SQL、XDR、メール/ファイアウォール/DNS、334 個のツール
alertlogic-mcpAlert Logic MDRインシデント対応、SQL ログ検索、SOAR、脆弱性管理、473 個のツール

ライセンス

MIT

コメント

MCP は初めてですか?

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

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