feat(secops): add comprehensive SOAR parity tools for Chronicle 1P (Git Stack 2/2) - #290
Draft
dandye wants to merge 2 commits into
Draft
feat(secops): add comprehensive SOAR parity tools for Chronicle 1P (Git Stack 2/2)#290dandye wants to merge 2 commits into
dandye wants to merge 2 commits into
Conversation
- Add case comments tools (list_case_comments, create_case_comment, post_case_comment) and consolidated get_case_full_details in case_management.py - Add alert grouping and event telemetry tools (list_alert_group_identifiers_by_case, list_events_by_alert, list_involved_events) in case_alert_management.py - Add entity investigation tools (get_involved_entity, list_involved_entities, get_entities_by_alert_group_identifiers, get_entity_details, search_entity) in entity_investigation.py - Add integration and manual action execution tools (list_integrations, list_integration_actions, list_integration_instances, execute_manual_action, get_action_result_by_id) in integration_management.py - Add playbook tools (list_playbooks, get_playbook, list_playbook_instances, execute_playbook, trigger_playbook) in playbook_management.py - Add connector event tools (list_connector_events, get_connector_event) in connector_event_management.py - Export modules in tools/__init__.py and add unit test suite in tests/test_secops_soar_parity.py
…ng format and typing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
Note
Git Stack: This pull request is Part 2 of a 2-part stack:
soar_trigger) - Chronicle 1P Case and Case Alert Management MCP tools with SOAR reaction trigger support.soar_parity(target base:soar_trigger) - Full SOAR parity across Case Comments, Telemetry Event Forensics, Entity Investigation, Integrations & Action Execution, Playbooks, and Connector Events.This PR brings complete feature parity between the Google SecOps 1P MCP server (
server/secops) and the standalone legacysecops-soar/ Remote SecOps MCP (google.cloud.chronicle.mcp_tools), while introducing optimizations such as single-call multi-resource parallel fetching.New Tools & Modules Added
1. Case Management & Consolidated Investigation (
case_management.py)list_case_comments: Retrieves paginated case comments and discussion notes with filtering and ordering.create_case_comment/post_case_comment: Creates structured analyst notes and comments on a case.get_case_full_details: Single-call parallel fetch (asyncio.gather) aggregating case metadata, security alerts, and comment timelines for an instant 360-degree triage view.2. Alert Grouping & Raw Event Forensics (
case_alert_management.py)list_alert_group_identifiers_by_case: Lists alert group identifiers used for correlation and playbook targeting.list_events_by_alert/list_involved_events: Fetches underlying raw/UDM events backing a specific alert for forensic verification.3. Entity Investigation & Discovery (
entity_investigation.py)get_involved_entity: Retrieves properties, enrichments, and flags of an entity involved in an alert.list_involved_entities: Lists all involved entities across an alert or case.get_entities_by_alert_group_identifiers: Retrieves involved entities for specific alert group identifiers.get_entity_details: Retrieves full unique entity details and enrichments in the SOAR platform.search_entity: Flexible entity search filtering on term, entity types,is_suspicious,is_internal_asset,is_enriched, network, and environment.4. Integrations & Action Execution (
integration_management.py)list_integrations: Discovers configured integrations (EDR, Firewall, SIEM, TI, Ticketing).list_integration_actions: Lists available executable actions for a specific integration or across all integrations.list_integration_instances: Lists configured integration instances and retrieves instance GUIDs.execute_manual_action: Executes manual actions/scripts (e.g. host isolation, IP blocking, enrichment) on cases, alerts, or entities.get_action_result_by_id: Retrieves status and output logs of asynchronous action executions.5. Playbook Management & Lifecycle (
playbook_management.py)list_playbooks: Lists configured automated playbooks with type filters (REGULAR,NESTED).get_playbook: Fetches detailed playbook configuration, triggers, and steps.list_playbook_instances: Lists historical and active playbook execution runs for a case or alert.execute_playbook/trigger_playbook: Manually triggers a playbook workflow on a case or alert.6. Connector Events (
connector_event_management.py)list_connector_events: Lists raw connector events ingested through SOAR connectors.get_connector_event: Retrieves connector event details.Security & Secret Scanning
Verification & Testing
server/secops/tests/test_secops_soar_parity.py.python3 -m unittest tests.test_secops_case_management tests.test_secops_soar_parity # Ran 22 tests in 0.033s. OK