自主安全运营服务器

MCP Boss是一款自主安全运营服务器,通过自然语言交互提供对Google安全堆栈的全面访问,包括SecOps、SCC、GTI、Cloud Logging等功能。

  • by dadohen
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 dnehoda-source/Google-Native-MCP-Server

使用说明

🛡️ MCP Boss——自主安全操作服务器

91个工具。 一个端点。用简单的英语与你的整个谷歌安全堆栈交谈。

MCP Boss允许任何AI模型(Gemini、Claude、GPT)通过 模型上下文协议.


快速开始

单线安装:

curl -sL https://raw.githubusercontent.com/dadohen/MCP-Boss/main/setup.sh | bash -s -- \
  --project your-project-id \
  --customer your-secops-customer-id \
  --gti-key your-vt-api-key

或者从Google Cloud Shell进行部署:

Cloud Shell打开后,在终端中运行:

chmod +x setup.sh && ./setup.sh

向导将引导您完成项目ID、客户ID,并部署所有内容。

或者一步一步:

git clone https://github.com/dadohen/MCP-Boss.git
cd MCP-Boss && ./setup.sh

安装向导处理一切:API、服务帐户、IAM角色、容器构建、云运行部署和验证。


它做什么

你问了一个问题→ Gemini选择合适的工具→ 执行它们→ 跨多个来源的链结果→ 给你一份报告。没有点击UI,没有编写API调用,没有切换控制台。

例子: “在所有来源中寻找APT28” →

  1. 通过GTI/VirusTotal查找APT28威胁情报
  2. 在SIEM中搜索匹配的IOC
  3. 检查SCC是否存在与其TTP匹配的可利用漏洞
  4. 将所有来源的调查结果相关联
  5. 编制一份载有建议行动的执行摘要

全自动,一个请求中最多可调用20个链式工具。


基准

首次在实时Cloud run部署上进行基准测试(2026-04-22,gemini-2.5-flash,6种场景):

度量 值
correct_verdict_pct 83.3%(5/6种情况)
正确控制 13.9%
destructive_fp_rate_pct 0.0%
中位数_警报_控制 60.87

完整的记分卡、场景和原始工具跟踪在 eval_harness/ (scorecard-2026-04-22.md, results.json).随时重新运行 ./eval_harness/run.sh这一类别中没有其他人可信地公布这些数字;这就是重点。


建筑

┌──────────────────────────────────────────────────────────────┐
│                     USER INTERFACES                          │
│   Web UI  ·  Gemini CLI  ·  Claude Desktop  ·  Mobile App   │
└──────────────────────┬───────────────────────────────────────┘
                       │
          ┌────────────┴────────────┐
          │ /api/chat (Web UI)      │  ← Multi-turn orchestration
          │ /mcp     (Gemini CLI)   │  ← Streamable HTTP
          │ /sse     (Claude/MCP)   │  ← SSE transport
          └────────────┬────────────┘
                       │
┌──────────────────────▼───────────────────────────────────────┐
│              MCP Boss Server (Cloud Run)                      │
│              89 Tools · Python · FastMCP · Serverless         │
│                                                              │
│  🔍 Discovery    🧠 Intel       🛡️ Detection    📂 SOAR     │
│  ├─ SCC          ├─ GTI/VT      ├─ YARA-L       ├─ Cases    │
│  ├─ Cloud Log    ├─ Malware     ├─ Rules         ├─ Playbooks│
│  ├─ UDM Search   ├─ Actors      ├─ Alerts        ├─ Actions  │
│  ├─ Ingestion    └─ Vertex AI   └─ Data Tables   └─ Metrics  │
│                                                              │
│  📧 Containment  ☁️ Cloud        📊 Analytics                │
│  ├─ O365 Purge   ├─ AWS Keys    ├─ BigQuery                 │
│  ├─ Okta         ├─ GCP SA      ├─ MTTx Metrics             │
│  ├─ Azure AD     ├─ STS Revoke  ├─ Audit Logs               │
│  └─ CrowdStrike  └─ IAM Review  └─ Cloud Monitoring         │
└──────────────────────────────────────────────────────────────┘
                       │
          ┌────────────┴────────────┐
          │  Google Cloud APIs       │
          │  Chronicle · SCC · GTI   │
          │  Vertex AI · BigQuery    │
          │  Cloud Logging · IAM     │
          │  Cloud Monitoring        │
          └─────────────────────────┘

零嵌入秘密。 所有Google API身份验证都使用工作负载身份联合身份验证(应用程序默认凭据)。Cloud Run服务帐户会自动进行身份验证。第三方遏制API(Okta、AWS、Azure AD、CrowdStrike、O365)使用由Secret Manager支持的环境变量。


安全

MCP Boss处理敏感的安全数据。以下是如何将其锁定。

认证关闭等于政策关闭。 当 OAUTH_CLIENT_ID 未设置,内置身份验证中间件无操作,审批角色签入 /api/approvals/*/decide 回退到允许所有路径,以便开发工作流继续工作。这意味着部署时没有 OAUTH_CLIENT_ID 没有强制执行:任何拥有网络覆盖范围的人都可以批准任何破坏性的工具调用。任何非开发部署都必须设置 OAUTH_CLIENT_ID (并填充 ROLE_MAP_JSON 或 ROLE_MAP_PATH).看 auth_middleware.py 和 deploy/multi_tenant/README.md.

如果出现以下情况,Boot将拒绝启动 LOCAL_DEV_ALL_ROLES=1 未设置 OAUTH_CLIENT_ID 除非你也设置 MCP_BOSS_ENV=dev。该组合授予每个呼叫者每个审批者角色。

MCP传输(stdio/SSE)会话工具(create_session, get_session, update_session, add_note)仍然在单个租户下运行,因为这些传输不携带HTTP标识。在基础层限制MCP传输访问(Cloud Run IAM调用程序在 /mcp 和 /sse).

选项1:IAM身份验证(推荐)

删除公共访问并要求Google Cloud IAM身份验证:

# Remove unauthenticated access
gcloud run services remove-iam-policy-binding mcp-boss \
  --member="allUsers" \
  --role="roles/run.invoker" \
  --project=$PROJECT_ID \
  --region=us-central1

# Grant access to specific users only
gcloud run services add-iam-policy-binding mcp-boss \
  --member="user:analyst@yourcompany.com" \
  --role="roles/run.invoker" \
  --project=$PROJECT_ID \
  --region=us-central1

# Grant access to a Google Group (for SOC team)
gcloud run services add-iam-policy-binding mcp-boss \
  --member="group:soc-team@yourcompany.com" \
  --role="roles/run.invoker" \
  --project=$PROJECT_ID \
  --region=us-central1

锁定后如何访问:

# From browser — use Cloud Run Proxy:
gcloud run services proxy mcp-boss --project=$PROJECT_ID --region=us-central1
# Opens http://localhost:8080 → authenticated tunnel to your service

# From curl/API:
TOKEN=$(gcloud auth print-identity-token)
curl -H "Authorization: Bearer $TOKEN" https://YOUR-SERVICE-URL/health

# From Gemini CLI:
TOKEN=$(gcloud auth print-identity-token)
gemini --tool-endpoint https://YOUR-SERVICE-URL/mcp --headers "Authorization=Bearer $TOKEN"

选项2:仅VPC(内部网络)

仅限于您的VPC——完全没有公共互联网接入:

gcloud run services update mcp-boss \
  --ingress=internal \
  --project=$PROJECT_ID \
  --region=us-central1

只能从VPC、VPN或云互连中访问。

如何访问:

# From your local machine via Cloud Run Proxy (tunnels through IAM):
gcloud run services proxy mcp-boss --project=$PROJECT_ID --region=us-central1
# Opens http://localhost:8080 locally

# Or from a GCE VM / GKE pod inside the VPC:
curl https://YOUR-SERVICE-URL/health

选项3:IAP(身份感知代理)

将Cloud IAP放在前面,以便与您的企业身份提供商进行基于浏览器的SSO:

# Enable IAP on the Cloud Run service
gcloud iap web enable \
  --resource-type=cloud-run \
  --service=mcp-boss \
  --project=$PROJECT_ID

# Grant access to your SOC team
gcloud iap web add-iam-policy-binding \
  --resource-type=cloud-run \
  --service=mcp-boss \
  --member="group:soc-team@yourcompany.com" \
  --role="roles/iap.httpsResourceAccessor" \
  --project=$PROJECT_ID

用户在到达Web UI之前,浏览器中会出现谷歌登录提示。无需更改代码——IAP处理一切。

如何访问: 只需在浏览器中打开URL即可。IAP显示了一个谷歌登录页面。登录后,您将进入Web UI。

选项4:API密钥头

为了快速保护,请设置API密钥环境变量并在请求中验证:

gcloud run services update mcp-boss \
  --set-env-vars="MCP_BOSS_API_KEY=your-secret-key-here" \
  --project=$PROJECT_ID \
  --region=us-central1

如何访问:

# curl:
curl -H "X-API-Key: your-secret-key-here" https://YOUR-SERVICE-URL/health

# Gemini CLI:
gemini --tool-endpoint https://YOUR-SERVICE-URL/mcp --headers "X-API-Key=your-secret-key-here"

# Web UI: Add ?key=your-secret-key-here to the URL
# Or the Web UI will prompt for it on first load

当以下情况发生时,服务器会自动验证 MCP_BOSS_API_KEY 已设置。

安全最佳实践

练习 如何
无公共访问 删除 allUsers 调用程序绑定
最低特权SA 使用专用 mcp-boss 服务帐户,而非默认计算SA
秘密经理 将API密钥(GTI、Okta、AWS等)存储在Secret Manager中,而不是env vars中
审核日志记录 Cloud Run请求日志是自动生成的;启用数据访问审核日志
VPC SC 将项目放置在VPC服务控制外围
遏制批准 内置:请参阅下面的“身份验证和批准”
网络 使用 --ingress=internal +用于生产的云VPN/互连

身份验证和批准

位于Cloud Run IAM之上的应用程序级控件。默认情况下,它们都是关闭的;使用env变量选择加入。

身份验证(Google ID令牌)

集 OAUTH_CLIENT_ID 服务器拒绝任何没有有效Google OIDC ID令牌的请求 aud 比赛。

变量 目的
OAUTH_CLIENT_ID 主要观众。通常您的浏览器流OAuth 2.0客户端ID
OAUTH_ADDITIONAL_AUDIENCES 逗号分隔额外接受的受众。添加服务URL或 32555940559.apps.googleusercontent.com (gcloud默认客户端)用于服务器到服务器的CI调用。
ALLOWED_EMAILS 可选逗号分隔的列表。如果设置,则不在列表中的已验证电子邮件将被拒绝。
AUTH_EXEMPT_PATHS 绕过身份验证的逗号分隔路径前缀(默认 /health,/static).

当 OAUTH_CLIENT_ID 如果未设置,则中间件为无操作:auth已禁用,主体为 local,每个角色检查都通过。请勿将此配置发布到本地开发之外。如果出现以下情况,服务器将拒绝启动 LOCAL_DEV_ALL_ROLES=1 未设置任何一个 OAUTH_CLIENT_ID 或 MCP_BOSS_ENV=dev.

角色映射和审批人组

policy_and_approvals/policies.yaml 将每个破坏性工具(主机隔离、密钥撤销、电子邮件清除等)映射到一个或多个审批者角色名称。要授权呼叫者,请将他们的电子邮件映射到角色集。

变量 格式
ROLE_MAP_JSON 内联JSON: {"alice@co.com":["security-oncall"], "@co.com":["soc-manager"]}
ROLE_MAP_PATH YAML文件的路径: roles: {alice@co.com: [security-oncall]}

默认情况下识别的审批人角色名称 policies.yaml: security-oncall, soc-manager, identity-team, cloud-platform, detection-engineering, legal, security-leadership.

审批工作流程

  1. 编排器想要调用门控工具(例如。 isolate_crowdstrike_host).
  2. 政策关卡检查 policies.yaml.如果 require_approval,它将工具调用冻结为 ApprovalRequest.
  3. 批准通过任何配置的频道进行广播: /api/approvals (网络用户界面),谷歌聊天卡(GOOGLE_CHAT_WEBHOOK_URL),通用webhook(APPROVAL_WEBHOOK_URL).
  4. 审批人点击 POST /api/approvals/{id}/decide 和 approve / deny除非经过身份验证的呼叫者的角色与规则的角色相交,否则服务器403s approver_groups. decided_by 会反弹到经过身份验证的电子邮件,因此审计跟踪不会被欺骗。
  5. 批准后,工具将执行。每个状态转换都会记录在哈希链审计日志中。

随时通过以下方式验证链条 GET /api/audit/verify:

{"chain_intact": true, "broken_at_seq": null, "audit_path": "/var/log/mcp-boss/audit.jsonl"}

租户隔离

SessionMemory 由(经过身份验证的主体,session_id)键入。同一Cloud Run实例上的两个用户即使猜测会话ID,也无法读取彼此的调查历史记录。MCP传输会话工具(stdio/SSE)使用不同的 mcp-transport 名称空间;在底层传输的网关(Cloud Run IAM调用程序在 /mcp 和 /sse).

输出编辑(DLP)

集 ENABLE_OUTPUT_REDACTION=1 并且在每个工具结果流回到LLM或API响应之前对其进行扫描。Luhn-checked CC number,SSN-looking string(with IP/date guard),PEM私钥,AWS访问密钥,JWT,and labeled API密钥(GTI,Okta,CrowdStrike,Azure AD,O365, api_key, bearer_token, client_secret, access_token)被替换为 [REDACTED:<type>]审计日志记录了未编辑的内容;只有跨越工具到LLM边界的内容才会被净化。


运营

日常使用

  • Web用户界面 --浏览到Cloud Run URL,使用Google登录。粘贴提醒或提问。
  • Gemini CLI — gemini --tool-endpoint https://YOUR-URL/mcp --headers "Authorization=Bearer $(gcloud auth print-identity-token)".
  • 克劳德桌面 --添加 /sse URL到 claude_desktop_config.json (请参阅连接部分)。

每个请求都会生成一个聊天记录(在web UI中)、一个完整的工具跟踪(在Cloud Logging中)以及任何门控工具调用的审计记录。

基准/回归

export MCP_URL=https://YOUR-SERVICE-URL
export MCP_ID_TOKEN=$(gcloud auth print-identity-token)
./eval_harness/run.sh

生产 scorecard.md (标题数字)和 results.json (每个场景的原始工具跟踪)。将其连接到CI,如果出现以下情况,则构建失败 destructive_fp_rate_pct > 0 或者判决准确性下降。

审计日志导出

记录为JSONL格式 $MCP_BOSS_AUDIT_PATH (默认值 /var/log/mcp-boss/audit.jsonl,回落到 ~/.mcp-boss/audit.jsonl)并在日志名称下镜像到Cloud Logging mcp-boss-audit将BigQuery接收器指向Cloud Logging流,以实现长期保留和SIEM摄取。

多租户安装

deploy/multi_tenant/install.sh 跑 terraform apply 在一个命令中使用Artifact Registry、Secret Manager存根、Cloud Run v2和IAM绑定。通过 --oauth-client-id, --allowed-emails, --role-map-json,以及 --enable-redaction 在部署时设置完整的auth配置。


手动设置指南

如果您更喜欢手动设置而不是使用 setup.sh:

先决条件

  • 启用计费的Google Cloud项目
  • gcloud CLI已安装并经过身份验证
  • 具有客户ID的Chronicle/SecOps实例

步骤1:启用API

PROJECT_ID=your-project-id

gcloud services enable \
    run.googleapis.com \
    cloudbuild.googleapis.com \
    chronicle.googleapis.com \
    securitycenter.googleapis.com \
    aiplatform.googleapis.com \
    logging.googleapis.com \
    bigquery.googleapis.com \
    monitoring.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com \
    --project=$PROJECT_ID

步骤2:创建服务帐户并授予IAM角色

SA_NAME=mcp-boss
SA_EMAIL="${SA_NAME}@${PROJECT_ID}.iam.gserviceaccount.com"

# Create the service account
gcloud iam service-accounts create $SA_NAME \
  --display-name="MCP Boss Service Account" \
  --project=$PROJECT_ID

# Grant required roles
ROLES=(
  roles/chronicle.admin
  roles/securitycenter.findingsViewer
  roles/aiplatform.user
  roles/logging.viewer
  roles/bigquery.dataViewer
  roles/bigquery.jobUser
  roles/monitoring.viewer
  roles/iam.securityReviewer
)

for ROLE in "${ROLES[@]}"; do
  gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member="serviceAccount:${SA_EMAIL}" \
    --role="$ROLE" --quiet
done

IAM角色参考

角色 它能实现什么 必填项?
roles/chronicle.admin UDM搜索、规则、案例、检测、数据表、提要、解析器、警报 ✅ 是的
roles/securitycenter.findingsViewer SCC漏洞发现、配置错误 ✅ 是的
roles/aiplatform.user Vertex AI Gemini——威胁分析、调查报告 ✅ 是的
roles/logging.viewer 云审计日志查询 ✅ 是的
roles/bigquery.dataViewer BigQuery安全数据湖读取 ✅ 是的
roles/bigquery.jobUser BigQuery SQL执行 ✅ 是的
roles/monitoring.viewer 云监控——摄入带宽统计数据 ✅ 是的
roles/iam.securityReviewer IAM政策和服务帐户审计 ✅ 是的
roles/iam.serviceAccountKeyAdmin GCP遏制:撤销SA密钥 ⚙️ 可选
roles/storage.admin 云构建部署访问权限 ⚙️ 仅部署

步骤3:构建和部署

# Build
gcloud builds submit \
  --project=$PROJECT_ID \
  --tag gcr.io/$PROJECT_ID/mcp-boss:latest

# Deploy
gcloud run deploy mcp-boss \
  --image gcr.io/$PROJECT_ID/mcp-boss:latest \
  --project=$PROJECT_ID \
  --region=us-central1 \
  --platform=managed \
  --service-account=$SA_EMAIL \
  --allow-unauthenticated \
  --memory=512Mi \
  --timeout=300 \
  --set-env-vars="SECOPS_PROJECT_ID=$PROJECT_ID,SECOPS_CUSTOMER_ID=YOUR_CUSTOMER_ID,SECOPS_REGION=us,GTI_API_KEY=YOUR_VT_KEY"

步骤4:验证

curl https://YOUR-SERVICE-URL/health
# {"status":"healthy","tools":89,...}

步骤5:连接

Web用户界面: 在浏览器中打开您的Cloud Run URL。

Gemini CLI:

gemini --tool-endpoint https://YOUR-SERVICE-URL/mcp

克劳德桌面 (claude_desktop_config.json):

{
  "mcpServers": {
    "mcp-boss": {
      "url": "https://YOUR-SERVICE-URL/sse"
    }
  }
}

环境变量

必需

变量 描述
SECOPS_PROJECT_ID 您的GCP项目ID
SECOPS_CUSTOMER_ID Chronicle/SecOps客户ID(来自Chronicle设置)
SECOPS_REGION us, eu,或 asia

推荐

变量 描述
GTI_API_KEY VirusTotal/Google Threat Intelligence API密钥

认证

变量 描述
OAUTH_CLIENT_ID Google OAuth 2.0客户端ID。设置后,每个请求都必须提供一个有效的ID令牌,其 aud 比赛。Unset=身份验证已禁用(仅限开发人员)。
OAUTH_ADDITIONAL_AUDIENCES 逗号分隔额外接受的受众。添加服务URL或 32555940559.apps.googleusercontent.com 用于服务器到服务器/CI
ALLOWED_EMAILS 逗号分隔的已验证电子邮件列表。如果设置,其他电子邮件将被拒绝。
ROLE_MAP_JSON 内联JSON映射电子邮件或 @domain 到审批人角色列表。
ROLE_MAP_PATH YAML文件 roles: 块。形状与 ROLE_MAP_JSON.
AUTH_EXEMPT_PATHS 绕过身份验证的路径前缀(默认 /health,/static).
LOCAL_DEV_ALL_ROLES 1 授予每个呼叫者每个审批者角色。需要 MCP_BOSS_ENV=dev;否则服务器拒绝启动。
MCP_BOSS_ENV 操作员声明。设置为 dev 在开发机器上允许 LOCAL_DEV_ALL_ROLES=1.

运营

变量 描述
ENABLE_OUTPUT_REDACTION 1 启用DLP传递工具结果,然后再将其传递给LLM。默认情况下为关闭。
MCP_BOSS_AUDIT_PATH JSONL审核日志路径(默认 /var/log/mcp-boss/audit.jsonl,回落到 ~/.mcp-boss/audit.jsonl).
GOOGLE_CHAT_WEBHOOK_URL 用于审批卡的Google Chat webhook。
APPROVAL_WEBHOOK_URL 用于审批通知的通用webhook。
PUBLIC_BASE_URL 在审批通知中构建链接时使用的公共URL。
GEMINI_MODEL Gemini编排模型(默认 gemini-2.5-flash).

可选——第三方遏制

变量 描述
O365_TENANT_ID, O365_CLIENT_ID, O365_CLIENT_SECRET Microsoft Graph--电子邮件清除
OKTA_DOMAIN, OKTA_API_TOKEN Okta--用户暂停
AZURE_AD_TENANT_ID, AZURE_AD_CLIENT_ID, AZURE_AD_CLIENT_SECRET Azure AD--会话吊销
SOAR_AWS_KEY, SOAR_AWS_SECRET AWS——IAM密钥撤销
CROWDSTRIKE_CLIENT_ID, CROWDSTRIKE_CLIENT_SECRET CrowdStrike--主机隔离

任何敏感的环境变量都可以接受 sm://PROJECT/SECRET_NAME 代替明文值。这 secrets_resolver 该模块在启动时透明地从Google Secret Manager获取最新版本。


全部91个工具

🔍 探索与狩猎(12个工具)

工具 说明
get_scc_findings 按严重程度获取活动SCC漏洞
top_vulnerability_findings 按严重程度排序的SCC发现
get_finding_remediation SCC发现的补救指南
query_cloud_logging 查询云审计日志
search_secops_udm 编年史UDM搜索(YARA-L或现场查询)
search_security_events 按类型和时间范围搜索安全事件
list_secops_detections 所有检测——自定义规则+精心策划的规则+案例
get_security_alerts 最近的安全警报
check_ingestion_health 未解析日志检测/解析器故障
lookup_entity Chronicle中的实体上下文查找
get_last_logins 最近的登录事件
get_last_detections 最近的检测警报

🧠 威胁情报(6种工具)

工具 说明
enrich_indicator 通过GTI/VirusTotal丰富IP/域/哈希/URL
get_ip_report 详细的IP报告
get_domain_report 详细的域报告
get_file_report 详细的文件哈希报告
search_threat_actors 威胁参与者档案(APT组)
search_malware_families 恶意软件家族档案

🛡️ 检测工程(8个工具)

工具 说明
list_rules 列出所有YARA-L规则
create_rule 创建YARA-L 2.0规则
get_rule 按ID获取规则详细信息
toggle_rule 启用/禁用规则
list_rule_errors 规则编译/执行错误
create_detection_rule_for_scc_finding 根据SCC查找自动生成YARA-L
extract_iocs_from_detections 从检测中批量提取IOC
vertex_ai_investigate 双子动力威胁分析

📋 数据表(3个工具)

工具 说明
list_data_tables 列出所有数据表
get_data_table 读取表格内容
update_data_table 写入/更新行

📂 SOAR案例(17个工具)

工具 说明
list_cases / secops_list_cases 列出案例
get_last_cases 近期案例总结
secops_get_case 完整病例报告 --实体、MITRE、哈希、进程、检测
secops_update_case 更新优先级、状态、描述
get_case_alerts / secops_list_case_alerts 案件警报
secops_get_case_alert 警报详细信息
secops_update_case_alert 更新警报
add_case_comment / secops_create_case_comment 添加评论
secops_list_case_comments 列出评论
get_case_overview 统计数据和优先级细分
update_case_priority 更改优先级
close_case 以理性结束
secops_execute_bulk_close_case 批量关闭
secops_execute_manual_action 执行SOAR操作

🎭 SOAR播放手册(6个工具)

工具 说明
list_playbooks 列出剧本
get_playbook 剧本详细信息
create_playbook 创建剧本
create_containment_playbook 自动生成遏制行动手册
export_playbook_template 导出为模板
clone_playbook 复制现有剧本

🔒 围堵(7个工具)

工具 说明
purge_email_o365 从O365邮箱中删除电子邮件
suspend_okta_user 暂停+清除Okta会话
revoke_azure_ad_sessions 撤销Azure AD/Entra ID会话
revoke_aws_access_keys 禁用AWS IAM密钥
revoke_aws_sts_sessions 拒绝STS担任角色会话
revoke_gcp_sa_keys 删除GCP服务帐户密钥
isolate_crowdstrike_host 通过CrowdStrike进行网络隔离

📊 记录和监控(6个工具)

工具 说明
list_log_names 可用日志名称
list_log_entries 使用过滤器记录条目
list_log_buckets 测井桶
get_log_bucket 铲斗详细信息
list_log_views 日志视图
query_ingestion_stats 每日摄取带宽(GB) 来自云监控

🔧 SecOps管理员(7个工具)

工具 说明
list_parsers 分析器/日志类型
validate_parser 根据原始日志测试解析器
list_feeds 摄食饲料
get_feed 订阅源详细信息
list_data_access_labels 数据访问标签
list_data_access_scopes 数据访问范围
query_secops_audit_logs 平台审核日志

📊 分析(5个工具)

工具 说明
get_mttx_metrics MTTR/MTC响应指标
bigquery_list_dataset_ids BigQuery数据集
bigquery_list_table_ids 数据集中的表
bigquery_get_dataset_info / bigquery_get_table_info 元数据
bigquery_execute_sql 执行SQL

🔑 IAM(3个工具)

工具 说明
get_iam_policy 完整的项目IAM政策
get_service_accounts 列出带有密钥计数的SA
check_iam_permissions 检查特定用户/SA的角色

🧠 会话和调查(5个工具)

工具 说明
create_session 创建调查会话
get_session 检索会话状态
set_session_context 更新会话上下文
add_investigation_note 带时间戳的调查记录
autonomous_investigate 旗舰: 端到端管道——丰富→ hunt → 评估→ 检测→ 回应→ 报告

API终点

端点 传输 客户端
GET / HTTP Web UI(内置聊天)
GET /health HTTP 健康检查(免于身份验证)
GET /api/tools HTTP 工具列表
POST /api/chat HTTP 多回合编排(Web UI)
GET /sse SSE 克劳德桌面/MCP客户端
POST /messages/ HTTP SSE消息处理程序
POST /mcp 流式HTTP Gemini CLI
GET /api/approvals HTTP 列出审批请求(使用筛选 ?state=pending)
GET /api/approvals/{id} HTTP 获取特定批准
POST /api/approvals/{id}/decide HTTP 批准或拒绝(调用者角色必须与规则的审批者组相交)
GET /api/audit/verify HTTP 验证哈希链审核日志是否完整

作者

大卫·阿登 --谷歌安全行动/谷歌威胁情报