Skip to main content
Glama

SOAR MCP Server

SOAR MCP Server

OctoMation SOAR プラットフォーム ベースの Model Context Protocol (MCP) サーバーです。Claude Desktop、Cherry Studio、Cursor、Trae などの AI クライアントに、セキュリティオーケストレーション、自動化、および対応能力を提供します。

License: MIT Python 3.9+ MCP

機能特性クイックスタート更新履歴旧バージョンからのアップグレード管理ツール設定説明セキュリティ機能トラブルシューティング

概要

SOAR MCP Server は、OctoMation SOAR プラットフォーム 専用に設計された革新的なセキュリティオーケストレーションプラットフォーム統合ソリューションです。Model Context Protocol を通じて、SOAR (Security Orchestration, Automation and Response) 機能を Claude Desktop、Cherry Studio、Cursor、Trae などのさまざまな AI クライアントに直接統合します。完全なセキュリティイベント管理、プレイブック実行、脅威インテリジェンス照会などの機能を提供し、AI アシスタントに専門的なサイバーセキュリティ対応能力を持たせます。

🆕 v1.6.0 更新概要

  • 主要結果の抽出: プレイブックアクションノード名のキーワード機能を追加。プレイブック実行結果から主要ノードとアセット結果を抽出可能に

  • 結果のセマンティック分割: query_playbook_execution_overview_by_activity_id および query_playbook_execution_key_results_by_activity_id を追加

  • アップグレード管理: 手動移行スクリプト migrate_db.py を追加。README にアップグレードのリスクと手順を補足

  • バージョンの可視性: 管理画面のヘッダー、統計ページ、フッターに現在のバージョンを表示し、ユーザーがアップグレードを確認しやすく改善

変更の詳細は CHANGELOG.md を参照してください。

🏗️ システムアーキテクチャ

SOAR MCP Server System Architecture

SOAR MCP Server は、MCP サーバー、Web 管理サーバー、ビジネスロジック層、データストレージ層、および外部システム統合層を含むデュアルサーバーアーキテクチャを採用しており、完全なセキュリティオーケストレーション自動化ソリューションを提供します。

技術アーキテクチャのポイント

モジュール

技術選定

説明

MCP サービス

FastMCP 2.x + Streamable-HTTP

非同期ツール関数、httpx コネクションプールを共有

管理画面

Flask

JWT 認証、RESTful API

データベース

SQLAlchemy ORM + SQLite

コンテキストマネージャー session、BigInteger ID

MCP 認証

Bearer Token + URL パラメータ

デュアルモード認証、Bearer を推奨

パスワードセキュリティ

bcrypt

ソルト付きハッシュ、レインボーテーブル攻撃対策

リクエストコンテキスト

contextvars

非同期コルーチンの分離をネイティブサポート

ログ

RotatingFileHandler

自動ローテーション、1ファイル 10MB、5世代保持

🎯 OctoMation SOAR プラットフォーム

本プロジェクトは OctoMation SOAR プラットフォーム 専用に設計されています。OctoMation は、強力なセキュリティオーケストレーション、自動化、および対応プラットフォームであり、以下を提供します:

  • 🛡️ 完全なセキュリティツールチェーン: 主要なセキュリティ製品とプラットフォームをサポート

  • 📚 豊富なセキュリティプレイブック: 実用的なセキュリティ対応プレイブックを多数プリセット

  • 🔄 柔軟なワークフロー: 可視化されたプレイブックのオーケストレーションと自動実行

  • 🌐 オープンアーキテクチャ: カスタム統合と拡張をサポート

コアの利点

  • 🔒 セキュリティオーケストレーション: OctoMation SOAR プラットフォームとシームレスに連携

  • 🤖 AI 駆動: 多様な AI クライアントを通じてインテリジェントなセキュリティ対応を実現

  • 非同期アーキテクチャ: MCP ツール関数はすべて非同期、httpx コネクションプールを再利用

  • 🌐 Web 管理: 直感的な可視化管理インターフェース

  • 🔧 柔軟な設定: 多様なデプロイと設定方法をサポート

  • 🛡️ セキュリティ強化: bcrypt パスワードハッシュ、JWT キーの永続化、ログの機密情報マスキング

機能特性

🛠️ MCP ツールセット

SOAR MCP 利用可能ツール SOAR MCP サーバーが提供する完全なツールセット

プレイブックの照会と実行

  • list_playbooks_quick - 簡潔なプレイブックリスト(ID、name、displayName)を取得。AI がプレイブックの選択肢を素早く理解するのに適しています

  • query_playbook_execution_params - プレイブックIDに基づいて実行に必要なパラメータ定義を照会

  • execute_playbook - 指定された SOAR プレイブックを実行。パラメータの受け渡しをサポート(非同期)

  • query_playbook_execution_status_by_activity_id - アクティビティIDに基づいてプレイブックの実行ステータスを照会(非同期)

  • query_playbook_execution_overview_by_activity_id - アクティビティIDに基づいてプレイブックの実行概要結果を照会(非同期)

  • query_playbook_execution_key_results_by_activity_id - アクティビティIDに基づいてプレイブックの実行主要結果を照会(非同期)

重要な注意事項

  • プレイブックID形式: LONG 型(64ビット整数)をサポート。整数または文字列形式を使用可能

  • 実行フロー: パラメータ照会 → プレイブック実行 → ステータス確認 → 概要結果照会 / 主要結果照会

  • 互換性: プレイブックID が JavaScript の安全な整数範囲を超える可能性があるため、文字列形式の使用を推奨

  • 主要結果の抽出: query_playbook_execution_key_results_by_activity_id は追加のキーワードを渡す必要はありません。キーワードは管理画面でのプレイブック設定から取得されます

📊 MCP リソース

  • soar://playbooks - SOAR プレイブックリスト

  • soar://applications - SOAR アプリケーションリスト

  • soar://executions - 実行アクティビティ記録

🌐 Web 管理インターフェース

SOAR MCP サーバー管理インターフェース SOAR MCP サーバー Web 管理インターフェース - プレイブック管理ページ

  • プレイブック管理: 可視化されたプレイブックリスト、ステータス管理、実行監視

  • Token 管理: API アクセス資格情報の作成、管理、監視

  • システム設定: SOAR 接続設定、同期設定、SSL 検証スイッチ

  • パスワード管理: 独立した管理者パスワード変更入口とセキュリティポリシーの説明

  • 統計情報: システムステータス、実行統計、同期時間

主要結果抽出の設定

管理画面のプレイブック詳細において、各プレイブックに対して「プレイブックアクションノード名キーワード」を設定できます:

  • Enter キー、半角カンマ ,、全角カンマ による複数のキーワード入力をサポート

  • 複数のキーワード間は「OR」条件

  • システムはプレイブック実行結果の nodeResultModels.displayName 内で、これらのノード名キーワードが含まれているかをマッチングします

  • ヒットした場合、それらのノードおよび対応する assetResultModels が返されます

ヒント:主要結果の抽出をより安定させるために、SOAR のプレイブックノード表示名に直接これらのキーワードを追加することを推奨します。例:[脅威インテリジェンス] IP 照会[隔離] クラウドホストセキュリティグループ処置

プレイブックアクションノード名キーワード設定 管理画面における「プレイブックアクションノード名キーワード」の表示と設定入口

🚀 クイックスタート

このガイドでは、SOAR MCP Server のデプロイと設定をゼロから説明します。

📋 環境要件

システム要件

  • Python 3.9+

  • 4GB 以上のメモリ

  • ネットワーク接続(SOAR API アクセス用)

サポートプラットフォーム

  • Linux (Ubuntu 18.04+, CentOS 7+)

  • macOS (10.14+)

  • Windows 10/11

🛠️ ステップ 1:プロジェクトデプロイ

実際のニーズに応じて、ネイティブデプロイDocker デプロイ、または オフラインパッケージ配布 を選択できます。

プラン 1:Python ネイティブデプロイ (開発環境向け推奨)

1. プロジェクトコードの取得
# 克隆项目
git clone https://github.com/flagify-com/soar-mcp.git
cd soar-mcp

# 或直接下载发布版本
wget https://github.com/flagify-com/soar-mcp/releases/latest/download/soar-mcp.zip
unzip soar-mcp.zip && cd soar-mcp
2. 環境設定
# 创建 Python 虚拟环境
python3 -m venv venv

# 激活虚拟环境
# Linux/macOS:
source venv/bin/activate
# Windows:
# venv\Scripts\activate

# 升级 pip 并安装依赖
pip install --upgrade pip
pip install -r requirements.txt
3. 初回起動
# 直接启动服务器
python3 soar_mcp_server.py

🎉 おめでとうございます!サーバーが起動しました

初回実行時、システムは自動的に以下を行います:

  • ✅ データベースと初期設定の作成

  • ✅ 管理者パスワードの生成(コンソールに一度だけ表示され、ログファイルには書き込まれません

  • ✅ JWT 署名キーの生成と永続化

  • ✅ MCP サーバーと Web 管理インターフェースの起動

  • ⚠️ SOAR プレイブックの同期をスキップ(後続の設定が必要)

重要な出力情報

============================================================
  🔑 管理员初始密码: a$bC9*xYz2M&
  ⚠️  请妥善保管,此密码不会再次显示!
============================================================

📊 MCP服务: http://127.0.0.1:12345/mcp
   认证方式1: Authorization: Bearer <token> (推荐)
   认证方式2: http://127.0.0.1:12345/mcp?token=<token> (兼容)
🎛️  管理后台: http://127.0.0.1:12346/admin

⚠️ セキュリティ上の注意:管理者パスワードは初回起動時にコンソール経由でのみ表示され、ログファイルには記録されません。必ずすぐに保存してください。紛失した場合は ./reset_admin_password.sh を使用してリセットできます。

🔐 本番環境への推奨:管理画面に初回ログイン後、すぐにナビゲーションバーの「パスワード管理」ページに移動して管理者パスワードを変更し、その後 SOAR プラットフォームの初期設定を行ってください。

SOAR MCP サーバーコンソール起動画面 SOAR MCP サーバー起動後のコンソール出力画面

プラン 2:Docker コンテナデプロイ (サーバー環境向け推奨)

プロジェクトには Dockerfiledocker-compose.yml が含まれており、デプロイプロセスを大幅に簡素化しています。

  1. 直接ビルドしてバックグラウンドでサービスを起動

# 为避免卷挂载时 sqlite db 尚未生成而被 Docker 误创建为空目录,请先进行本地文件预占位
mkdir -p logs && touch soar_mcp.db

# 一键构建镜像并启动
docker-compose up -d --build
  1. 実行ログを確認して初期パスワードを取得

# 强烈建议在此步查看日志,获取管理员初始随机密码
docker-compose logs -f soar-mcp-server

プラン 3:オフラインパッケージ化とリモート一括デプロイ

テスト済みのサービスをインターネットにアクセスできないイントラネットサーバーに移行する必要がある場合、プロジェクト付属のコードとイメージエクスポートツールを使用して、イントラネットでの全自動パッケージ移行を実現できます:

  1. イメージをビルドできる開発機または踏み台サーバーで「パッケージ化」を実行

# 此脚本会自动归档最新构建的 Docker 镜像和挂载目录,生成完全离线可用的发布包
./export_release.sh
# 构建完成后当前目录将生成:soar-mcp-release.tar.gz
  1. パッケージ化された soar-mcp-release.tar.gz をターゲットのイントラネットサーバーに転送し、解凍して使用

tar -xzvf soar-mcp-release.tar.gz
cd soar-mcp-release

# 执行自动化一键部署脚本(已自带 docker load 镜像加载逻辑)
./install.sh

⚙️ ステップ 2:SOAR プラットフォーム設定

1. 管理画面へのアクセス

  1. ブラウザを開き、http://127.0.0.1:12346/admin にアクセス

  2. コンソールに表示された管理者パスワードでログイン

  3. SOAR が設定されていない場合、システムは自動的に「システム設定」に入り、初回設定ガイドを表示します

2. SOAR 接続の設定

システム設定ページで以下の情報を入力します:

設定項目

説明

サンプル値

SOAR サーバー API アドレス

SOAR プラットフォームの API ベースアドレス

https://your-soar.com

API Token

SOAR プラットフォームの JWT 認証トークン

eyJhbGciOiJIUzI1NiIs...

タイムアウト時間

API リクエストタイムアウト(秒)

30

SSL 証明書検証

HTTPS 証明書検証スイッチ

有効

同期サイクル

データ同期間隔

12時間

プレイブック取得タグ

同期するプレイブックタグのフィルタリング

MCP

3. テストと保存

  1. 「接続テスト」ボタンをクリックして設定を検証

  2. ✅ "API 接続テスト成功!" と表示されたら、「設定を保存」をクリック

  3. システムは自動的に SOAR プレイブックデータの同期を開始します

説明:SOAR 接続パラメータはデータベース設定が優先されます。実行中のサービスは .env から API_URLAPI_TOKENSSL_VERIFY を実行時設定として読み込むことはありません。

🤖 ステップ 3:MCP クライアント設定

Cherry StudioClaude DesktopCursorTrae など、複数の大規模モデルベースの MCP クライアントをサポートしています。

Cherry Studio(推奨)

Cherry Studio MCP 設定 Cherry Studio での SOAR MCP サーバーの設定

  1. Cherry Studio を開く

  2. 設定MCP サーバー に移動

  3. 設定ファイルを編集し、以下の内容を追加:

    方法 1:URL パラメータ(互換性が高い)

    {
      "mcpServers": {
        "soar-mcp": {
          "type": "http",
          "name": "soar-mcp",
          "description": "SOAR 安全编排平台集成",
          "url": "http://127.0.0.1:12345/mcp?token=xxxx"
        }
      }
    }

    方法 2:Bearer Token(推奨、より安全)

    {
      "mcpServers": {
        "soar-mcp": {
          "type": "http",
          "name": "soar-mcp",
          "description": "SOAR 安全编排平台集成",
          "url": "http://127.0.0.1:12345/mcp",
          "headers": {
            "Authorization": "Bearer xxxx"
          }
        }
      }
    }
  4. 保存して Cherry Studio を再起動

Cherry Studio での SOAR MCP 利用 Cherry Studio で SOAR MCP サーバー機能を正常に使用

⚠️ 重要xxxx を管理画面から取得した実際の API Token に置き換えてください。Bearer Token 方式の方が安全であり、Token が URL やログに露出することはありません。

Claude Desktop

Claude Desktop の MCP 設定ファイルを編集します:

場所

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

設定内容(URL パラメータ方式)

{
  "mcpServers": {
    "soar-mcp": {
      "type": "http",
      "name": "soar-mcp",
      "description": "SOAR 安全编排平台集成",
      "url": "http://127.0.0.1:12345/mcp?token=xxxx"
    }
  }
}

設定内容(Bearer Token 方式、推奨)

{
  "mcpServers": {
    "soar-mcp": {
      "type": "http",
      "name": "soar-mcp",
      "description": "SOAR 安全编排平台集成",
      "url": "http://127.0.0.1:12345/mcp",
      "headers": {
        "Authorization": "Bearer xxxx"
      }
    }
  }
}

⚠️ 重要

  • xxxx を管理画面から取得した実際の API Token に置き換えてください

  • Bearer Token 方式の方が安全であり、優先的に使用することを推奨します

  • Claude Desktop は新しい設定を読み込むために再起動が必要です

その他の MCP

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/flagify-com/soar-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server