SecOps-MCP-Server
Google SecOps (Chronicle) MCP Server (Streamable HTTP)
Enterprise Model Context Protocol (MCP)-Server, der Google SecOps (Chronicle) SIEM/SOAR-Telemetrie, Alarm-Triage, Universal Data Model (UDM)-Suche und YARA-L-Erkennungsregelverwaltung unter Verwendung des Streamable HTTP (streamable-http)-Transports bereitstellt – dem aktuellen MCP-Spezifikationsstandard.
🌟 Übersicht: Streamable HTTP Transport
Streamable HTTP ist der standardmäßige Remote-Transport für Model Context Protocol (MCP)-Server:
Einheitlicher Endpunkt (
/mcp): Einzelner Endpunkt für Client-zu-Server-Nachrichten, Tool-Erkennung und bidirektionale Kommunikation.Produktionsskalierbarkeit: Nahtlose Bereitstellung auf zustandslosen und containerisierten Plattformen wie Google Cloud Run.
Container-Health-Probes: Integrierte
/healthz-Liveness- und Readiness-Probes.Unternehmenssicherheit: Native Google Cloud IAM-Authentifizierung (
roles/run.invoker) mit OAuth2/OIDC-Token-Unterstützung.
🛠️ Implementierte SecOps-Tools (Alle 29 offiziellen Tools)
1. Sicherheitsuntersuchungs- und Alarm-Tools
search_security_events: Durchsucht SecOps-Ereignisse mittels natürlicher Sprache oder UDM-Abfragen.get_security_alerts: Ruft Alarme ab, gefiltert nach Schweregrad (CRITICAL,HIGHusw.) und Status.get_security_alert_by_id: Ruft detaillierte Alarm-Metadaten und MITRE ATT&CK-Zuordnung ab.do_update_security_alert: Aktualisiert den Triage-Status und fügt Analystennotizen hinzu.lookup_entity: 360-Grad-Risikotelemetrieprofil für IP, Domain, Hostname, Benutzer oder Hash.get_ioc_matches: Ruft Übereinstimmungen mit Indikatoren für Kompromittierung (IoC) über ein Rückblickfenster ab.get_threat_intel: Fragt SecOps SecLM-Bedrohungsinformationen ab.
2. Erkennungsregelverwaltung
list_security_rules: Listet benutzerdefinierte und kuratierte YARA-L-Erkennungsregeln auf.search_security_rules: Durchsucht Erkennungsregeln mittels Regex-Mustern oder Schlüsselwörtern.get_rule_detections: Ruft Erkennungen ab, die von einer bestimmten Regel ausgelöst wurden.list_rule_errors: Listet Ausführungs- oder Kompilierungsfehler für Regeln auf.create_rule: Erstellt neue YARA-L 2.0-Erkennungsregeln.test_rule: Führt Backtests von Erkennungsregeln gegen historische Telemetriedaten durch.validate_rule: Validiert Syntax und Struktur von YARA-L-Definitionen.
3. Log-Erfassungstools
ingest_raw_log: Erfasst rohe Log-Payloads (JSON, XML, CEF, Syslog).ingest_udm_events: Erfasst strukturierte Universal Data Model-Ereignisse.get_available_log_types: Listet unterstützte Log-Typen auf (Cloud Audit, EDR, Okta, Zscaler usw.).
4. Parser-Verwaltungstools
create_parser: Erstellt benutzerdefinierte Log-Parser (CBN-Syntax).get_parser: Ruft Parser-Konfiguration und Filtercode ab.activate_parser: Aktiviert den Parser für die Live-Erfassungsverarbeitung.deactivate_parser: Deaktiviert einen aktiven Parser.run_parser_against_sample_logs: Testet Parser-Regeln anhand von Beispiel-Log-Strings.
5. Datentabellen und Referenzlisten
create_data_table/add_rows_to_data_table/list_data_table_rows/delete_data_table_rowscreate_reference_list/get_reference_list/update_reference_list
🚀 Schnellstart: Lokal ausführen
1. Abhängigkeiten installieren
pip install -r requirements.txt2. Server starten
export PORT=8080
export HOST=0.0.0.0
python server.pyDer Streamable HTTP-Server ist nun erreichbar unter:
Streamable HTTP-Endpunkt:
http://localhost:8080/mcpHealth-Probe:
http://localhost:8080/healthz
☁️ Ein-Klick-Bereitstellung auf Google Cloud Run
Direkte Bereitstellung mit dem automatisierten Bereitstellungsskript:
chmod +x deploy.sh
./deploy.shAusgeführte Bereitstellungsschritte:
[Schritt 1/5] Benutzerdefinierte Variablen: Lädt die
.env-Datei und führt benutzerdefinierte Variablen zusammen.[Schritt 2/5] APIs aktivieren: Aktiviert Cloud Run-, Cloud Build- und Chronicle-APIs.
[Schritt 3/5] Cloud Run-Bereitstellung: Stellt den Container mit Streamable HTTP-Transport bereit.
[Schritt 4/5] IAM-Richtlinienbindungen: Gewährt
roles/run.invokerfür den Agent Runner-Dienstkontoinhaber und den aktiven Benutzer.[Schritt 5/5] Überprüfung: Prüft die
/healthz-Probe und gibt Endpunkt-URLs aus.
🧪 Testen und Überprüfen
Option A: Testsuite ausführen
python3 test_client.pyOption B: MCP Inspector-Benutzeroberfläche verwenden
Starten Sie den offiziellen Model Context Protocol Inspector:
npx -y @modelcontextprotocol/inspectorVerbinden Sie sich über HTTP-Transport mit http://localhost:8080/mcp.
Option C: Über Google ADK / GenAI-Agent verbinden
Setzen Sie die Umgebungsvariable in Ihrer Agent-Konfiguration:
export SECOPS_MCP_URL="https://<your-cloud-run-service-url>/mcp"This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Streamable HTTP MCP server for Google Calendar and Sheets with OAuth login.
Remote ChromaDB vector database MCP server with streamable HTTP transport
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/yayefa/SecOps-MCP-Server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server