Crowdstrike Falcon について
falcon-mcp は、AI エージェントを CrowdStrike Falcon プラットフォームに接続する MCP サーバーで、検知、インシデント、ホスト、脆弱性などのセキュリティデータを分析できます。1.0 前のリリースで、CrowdStrike が保守するオープンソースのプロジェクトです。モジュールやツールのフィルターで操作範囲を制限できます。
主な機能
- 01モジュール単位での Falcon セキュリティデータへのアクセス
- 02動的モードによるツール定義のオンデマンド読み込み
- 03読み取り専用モードとツールの許可・拒否リスト
- 04stdio と HTTP のトランスポート対応
活用シーン
- 01エージェントによる Falcon の検知データの照会と分析
- 02ホストや脆弱性データを用いたセキュリティ運用の支援
- 03テナント設定を変更せずに調査のみを行うセッションの実行
MCP 対応
MCP サーバーとして falcon_ プレフィックスのツールを MCP クライアントに公開し、Falcon プラットフォームの複数のセキュリティモジュールを扱えるようにします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
uvx falcon-mcpFALCON_CLIENT_IDシークレットCrowdStrike API client IDFALCON_CLIENT_SECRETシークレットCrowdStrike API client secretFALCON_BASE_URLCrowdStrike API region URLFALCON_MEMBER_CIDChild CID for Flight Control (MSSP) supportFALCON_MCP_MODULESComma-separated list of modules to enableFALCON_MCP_TRANSPORTTransport protocol to useFALCON_MCP_DEBUGEnable debug loggingFALCON_MCP_HOSTHost to bind to for HTTP transportsFALCON_MCP_PORTPort to listen on for HTTP transportsFALCON_MCP_USER_AGENT_COMMENTAdditional information to include in the User-Agent comment sectionFALCON_MCP_STATELESS_HTTPEnable stateless HTTP mode for scalable deploymentsFALCON_MCP_API_KEYシークレットAPI key for HTTP transport authentication (x-api-key header)ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細

falcon-mcp
falcon-mcp は、AI エージェントを CrowdStrike Falcon プラットフォームに接続する Model Context Protocol(MCP)サーバーです。エージェント型ワークフローでインテリジェントなセキュリティ分析を実現します。検知、脅威インテリジェンス、ホスト管理など、不可欠なセキュリティ機能へのプログラムによるアクセスを提供し、高度なセキュリティ運用と自動化の基盤を構築します。
重要
1.0 以前のリリース:falcon-mcp は 1.0 に向けて現在も積極的に開発されています。ツール名、パラメーター、レスポンスの形式はマイナーリリース間でも変更される可能性があるため、バージョンを固定し、アップグレード前に変更履歴をご確認ください。CrowdStrike が積極的に保守しており、GitHub Issues でサポートを提供しています。CrowdStrike のお客様は、通常のテクニカルサポート窓口から質問することもできます。詳細は SUPPORT.md をご覧ください。
ドキュメント
ドキュメントの全文は developer.crowdstrike.com/falcon-mcp でご覧いただけます。
モジュール
| モジュール | 説明 |
|---|---|
| Core | 基本的な接続とシステム情報 |
| AgentWorks | Charlotte AI エージェントの呼び出し、一覧表示、実行トレースの監視 |
| Case Management | ケースのライフサイクル管理、証拠の添付、タグ付け、テンプレート |
| Cloud Security | Kubernetes コンテナ、イメージの脆弱性、CSPM 資産インベントリ、IOM 検出結果、抑制ルール、クラウドリスク、クラウドインサイト、クラウドグループ |
| Correlation Rules | NG-SIEM の相関ルールの検索、作成、更新、管理 |
| Custom IOA | Custom IOA の振る舞い検知ルールとルールグループの作成と管理 |
| Data Security | Data Security の分類、ポリシー、コンテンツパターン、アプリケーション、ウェブロケーション、機密ラベル、ファイルタイプの検索、作成、更新 |
| Detections | 悪意のあるアクティビティを把握するための検知の検索、集計、分析 |
| Discover | アプリケーションインベントリと管理対象/管理対象外の資産を検索。ドライブ暗号化とシステムインサイトのセキュリティ態勢も含みます |
| Exclusions | IOA、機械学習、センサーの可視性、証明書ベースの除外の検索、作成、更新、削除 |
| Firewall Management | ファイアウォールルールとルールグループの検索と管理 |
| Fusion SOAR | Fusion SOAR のワークフロー定義と実行の検索、実行結果の読み取り、オンデマンドワークフローの実行 |
| Guardian | AI エージェントのアクティビティ、セッション、ツールの使用状況、インベントリの監視 |
| Host Groups | ホストグループの検索、作成、更新、削除、およびグループメンバーシップの管理 |
| Hosts | ホスト/デバイス情報の管理と照会 |
| Identity Protection | エンティティの調査とアイデンティティ保護の分析 |
| Intel | 脅威アクター、IOC、インテリジェンスレポートの調査 |
| IOC | カスタム侵害指標の検索、作成、削除 |
| NGSIEM | Next-Gen SIEM に対する CQL クエリの実行 |
| Policies | 防止、センサー更新、ファイアウォール、デバイス制御、対応、コンテンツ更新の各ポリシーの検索、作成、更新、削除。ホストグループへの割り当て、有効化/無効化、優先順位の管理 |
| Quarantine | 隔離レコードの検索、アクション数のプレビュー、隔離されたファイルの解放、再隔離、削除 |
| Real Time Response | 読み取り専用の RTR トリアージワークフローの監査、要約、実行 |
| Recon | Falcon Intelligence Recon の通知(Recon アラート)、監視ルール、ダークウェブ、流出した認証情報、タイポスクワッティングに関する露出データレコードの検索と集計、およびルールによる潜在的なノイズのプレビュー |
| Scheduled Reports | スケジュール済みレポートの管理とレポートファイルのダウンロード |
| Sensor Usage | センサー使用状況データへのアクセスと分析 |
| Serverless | サーバーレス関数の脆弱性の検索 |
| Shield | SaaS セキュリティ態勢、チェック、アラート、アプリインベントリ |
| Spotlight | 脆弱性データとセキュリティ評価の管理と分析 |
| Zero Trust Assessment | ホストの Zero Trust Assessment セキュリティ態勢スコア、センサーと OS の強化シグナルの取得 |
| 必須の API スコープ、利用可能なツール、FQL リソースについては、モジュール概要をご覧ください。 |
メモ
Guardian モジュールは
/aidrAPI を読み取ります。この API のルートとパラメーターの仕様は、 Falcon の各デプロイ環境でまだ統一されていません。古い仕様が使われている環境では、一部のツールが HTTP 400 または 404 を返します。詳細はGuardian モジュールのドキュメントをご覧ください。
クイックスタート
インストール
uv を使用する場合(推奨)
uv tool install falcon-mcp
pip を使用する場合
pip install falcon-mcp
設定
必要な環境変数を設定します(または .env ファイルを使用します。設定ガイドをご覧ください)。
export FALCON_CLIENT_ID="your-client-id"
export FALCON_CLIENT_SECRET="your-client-secret"
export FALCON_BASE_URL="https://api.crowdstrike.com"
実行
falcon-mcp
インストールと設定の詳細については、はじめにガイドをご覧ください。
エディターとの連携
uvx を使用する場合(推奨)
{
"mcpServers": {
"falcon-mcp": {
"command": "uvx",
"args": [
"--env-file",
"/path/to/.env",
"falcon-mcp"
]
}
}
}
モジュールを選択する場合
{
"mcpServers": {
"falcon-mcp": {
"command": "uvx",
"args": [
"--env-file",
"/path/to/.env",
"falcon-mcp",
"--modules",
"detections,hosts,intel"
]
}
}
}
Docker
{
"mcpServers": {
"falcon-mcp-docker": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"--env-file",
"/full/path/to/.env",
"quay.io/crowdstrike/falcon-mcp:latest"
]
}
}
}
すべてのコマンドラインオプション、モジュール設定、ライブラリの使用方法については、使用ガイドをご覧ください。
コンテナーの使用
# Pull the latest image
docker pull quay.io/crowdstrike/falcon-mcp:latest
# Run with .env file (stdio transport)
docker run -i --rm --env-file /path/to/.env quay.io/crowdstrike/falcon-mcp:latest
# Run with streamable-http transport (add --api-key when the port is reachable beyond localhost)
docker run --rm -p 8000:8000 --env-file /path/to/.env \
quay.io/crowdstrike/falcon-mcp:latest \
--transport streamable-http --host 0.0.0.0 --api-key your-secret-key
注意
HTTP トランスポートには、デフォルトで認証がありません。ループバック以外のアドレス(
--host 0.0.0.0)にバインドすると、 ポートに接続できるすべての人が、CrowdStrike の認証情報を使って操作できる、認証なしのサーバーが公開されます。 ローカルで使用する場合は、デフォルトのループバックバインドを維持してください。より広い範囲にバインドする場合は、必ず--api-keyを設定してください。 AWS Bedrock AgentCore や Google Cloud Run などのマネージドランタイムは、独自のネットワークセキュリティレイヤーの背後にあるため、これは該当しません。設定ガイドをご覧ください。
ローカルでのビルド、カスタムポート、高度な設定については、Docker デプロイガイドをご覧ください。
ダイナミックモード
一度に多くのモジュールを実行すると、すべての AI クライアントが保持する必要のあるコンテキストウィンドウが肥大化します。ダイナミックモードでは、すべてのツールを次の 3 つに置き換えます。サーバーで利用可能なすべてのツールを確認する falcon_list_enabled_tools、キーワードで候補のツールを検索し、選んだツールのパラメータースキーマを取得する falcon_search_tools、そしてツールを実行する falcon_execute_tool です。これにより、エージェントが読み込むのは実際に必要なスキーマだけになります。
falcon-mcp --dynamic
# or: FALCON_MCP_DYNAMIC=true
検出から実行までのワークフローとトレードオフの詳細については、ダイナミックモードガイドをご覧ください。
サーバーの操作範囲を制限する
--modules はモジュール単位での一括設定です。検索ツールを使うためにモジュールを有効にすると、そのモジュールに含まれる変更を伴うツールもすべて公開されます。3 つのツールレベルのオプションを使うと、操作範囲を絞り込めます。
# Investigation-only server: no tool that mutates tenant state is registered
falcon-mcp --read-only
# Expose exactly two tools, nothing else
falcon-mcp --tools falcon_search_detections,falcon_search_hosts
# Keep the module, drop one tool
falcon-mcp --modules hostgroups --exclude-tools falcon_delete_host_groups
# All of detections, plus one tool from a module you did not enable
falcon-mcp --modules detections --tools falcon_search_applications
| フラグ | 環境変数 | 効果 |
|---|---|---|
--read-only | FALCON_MCP_READ_ONLY | 読み取り専用ツールのみを登録します |
--tools | FALCON_MCP_TOOLS | 有効なモジュールに追加するツール名の許可リストです |
--exclude-tools | FALCON_MCP_EXCLUDE_TOOLS | ツール名の拒否リストです |
ツール名には、クライアントに表示される falcon_ で始まる名前を指定します。認識されない名前があると、無視されずに起動が中止されるため、拒否リストの入力ミスによってツールが意図せず公開されることはありません。
オプションの組み合わせ
--tools は絞り込みフィルターではなく、追加するオプションです。--modules で有効にした内容に個別のツールを追加し、モジュールの境界を越えて有効にします。
--tools Xのみを指定すると、X だけが登録されます。デフォルトではモジュールは読み込まれません。--modules detections --tools Xを指定すると、detectionsのすべてのツールに加えて X が登録されます。X が有効化されていないモジュールに属していても登録されます。そのモジュールから追加されるのは X だけで、モジュール内のすべてのツールではありません。また、そのモジュールはfalcon_list_enabled_modulesに表示されません。X はfalcon_list_enabled_toolsに表示されます。この関数はサーバーで利用可能なツールを報告するため、「この環境でこの機能を利用できるか」を確認する確実な方法です。
ツールを除外するには、--exclude-tools または --read-only を使用します。これら4つのオプションはすべて組み合わせ可能で、次の固定順序で適用されます。
--exclude-toolsは、--toolsで指定されていても、ツールを無条件に除外します。--read-onlyは、--toolsで指定されていても、変更を伴うツールをすべて無条件に除外します。--toolsは、モジュールの制限を受けずに、指定されたツールを追加します。--modulesは、デフォルトで対象となるツールを決定します。
最初の2つのルールが常に優先されるため、--read-only と --exclude-tools は、デプロイ全体に適用する最低限の制約として安全に設定できます。--tools に追加するツールのリストを指定しても、この制約を超えて有効にすることはできません。これらを組み合わせると、「すべてを検索できるが何も変更できず、さらにあのツールは提示すらしない」という設定になります。
falcon-mcp --read-only --exclude-tools falcon_execute_rtr_read_only_command
フィルタリングは動的モードにも適用されます。無効化されたツールは falcon_search_tools の結果に含まれず、falcon_execute_tool によって拒否されます。動的モードではツールを個別に登録せず、名前でディスパッチするため、拒否時には、そのツールが存在するもののサーバーの設定によって無効化されていることと、その理由となるルールが明示されます。これにより、エージェントは無効化されたツールを「利用できない」と報告し、その機能が存在しないとは伝えません。
どちらのモードでも、ルールが適用されている場合、falcon_list_enabled_tools には filters_active フィールドが含まれます。起動ログには、有効なルールと、--read-only および --exclude-tools によって無効化されたツールの数が表示されるため、デプロイした設定を確認できます。無効化されたツールの名前を確認するには、--debug を指定して実行してください。
これらのオプションがフィルタリングするのはツールであり、リソースではありません。無効化されたツールの FQL ガイドリソースは引き続き利用できます。ガイドはテナントデータを含まない静的なフィールドのドキュメントです。
デプロイオプション
貢献
# Clone and install
git clone https://github.com/CrowdStrike/falcon-mcp.git
cd falcon-mcp
uv sync --all-extras
# Run tests
uv run pytest
重要
このプロジェクトでは、自動リリースに Conventional Commits を使用しています。貢献ガイドに記載されているコミットメッセージの形式に従ってください。
開発者向けドキュメント
- ドキュメントガイド:ドキュメントのアーキテクチャとメンテナンスに関するガイド
- モジュール開発ガイド:新しいモジュールを実装する手順
- リソース開発ガイド:リソースを実装する手順
- 統合テストガイド:実際の API 呼び出しを使用して統合テストを実行するためのガイド
レジストリ
falcon-mcp は、対応クライアントでの検索とワンクリックセットアップに対応するため、公開 MCP カタログに登録されています。
ライセンス
このプロジェクトは MIT ライセンスのもとで公開されています。詳細については、LICENSE ファイルを参照してください。
サポート
これはコミュニティ主導のオープンソースプロジェクトです。CrowdStrike の公式製品ではありませんが、CrowdStrike が積極的にメンテナンスし、オープンソース開発者コミュニティと協力してサポートしています。
詳細については、SUPPORT ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。