Elastic Security、Observability 和 Search 现在在你的 AI 工具中提供交互式 UI
作者来自 Elastic David Elgut, Graham Hudgins 及 Jesse MillerElastic 是第一个在 AI Conversations 中提供交互式 UI 的安全厂商该 UI 基于 Anthropic 和 OpenAI 共同制定的 MCP App 标准构建。它还与另外两个用于 Observability 和 Search 的 Elastic MCP Apps 一起发布。Elasticsearch与行业领先的 Gen AI 工具和提供商有原生集成。查看我们的网络研讨会了解如何超越 RAG 基础或者如何使用 Elastic 向量数据库构建可用于生产的应用。为了为你的使用场景构建最佳搜索解决方案现在就开始免费云试用或者在你的本地机器上尝试 Elastic。AI 代理的质量取决于它们返回的界面。仅有文本的工具结果会将本来具有视觉或交互性的内容扁平化仪表板、告警列表、调查图、分布式追踪。对话变成了一个你提问、代理回答的地方但一旦工作变得复杂你就需要跳转到另一个标签页、另一个产品、另一个认证边界。MCP Apps 改变了这种回答的形态。工具现在可以在返回文本摘要的同时返回一个交互式 UI而宿主 Claude Desktop、 Claude.ai、 VS Code Copilot、 Cursor 会将其直接渲染在对话中。模型保留紧凑的文本用于推理人类则可以在聊天旁边获得一个可点击的实时界面。有三个特性使这成为一种不同于“返回 URL 的 webhook”的集成方式上下文保留。UI 存在于对话内部无需切换标签页无需交接。双向数据流。UI 可以调用 MCP 服务器上的工具获取新数据宿主也可以将代理的新结果推送回 UI。无需单独的 API 层或认证流程。沙箱化的信任边界。MCP Apps 在由宿主控制的 iframe 中运行。它们无法访问父页面、读取 cookies 或逃逸其容器。安全运营依赖于分诊、调查图和 Attack Discovery在这些场景中AI 代理会将数百条告警关联为少量攻击链。可观测性意味着分布式追踪和时间序列下钻分析。在 Kibana 中构建意味着一个仪表板网格。将这些内容扁平化为文本你就失去了它们的价值所在。我们为这三种场景都构建了 MCP Apps并将它们一同开源这样同一个对话可以在分诊队列、依赖关系图和实时仪表板之间切换而无需离开聊天。这三个参考应用中的每一个都是一个 MCP 服务器提供多个交互视图而不是一组独立产品。仅安全应用就提供了六个仪表板它们共享相同的服务器外壳、相同的工具可见性模型以及相同的宿主桥接。模式很小但真正产生价值的是其表面所覆盖的范围。Elastic Security MCP App为什么它对 SOC 很重要当一个代理告诉 SOC 分析师“There are 47 alerts on host-314, heres a summary,”它其实什么工作都没做。它只是指出了工作开始的地方。真正的工作存在于告警列表、进程树、调查图和案件文件中。你无法通过一段文本完成这些工作。安全 MCP App 返回的是整个工作流本身。分析师向代理发出提示代理会在聊天中返回一个交互式仪表板分析师可以在其中深入分析告警、执行威胁狩猎、关联攻击链并创建案件整个过程中都不会丢失对话上下文。而且由于所有发现、查询和案件都会回写到 Elasticsearch同一个调查也会在 Kibana 中保留在对话结束后分析师可以继续处理。六个交互式仪表板Elastic Security MCP App 提供六个交互式元素每个对应一个主要的 SOC 工作流。每一个都是一个 React UI当代理调用相应工具时会以内联方式渲染工具功能交互式 UI告警分诊获取、过滤并分类安全告警严重性分组、AI 判定卡片、进程树、网络事件攻击发现基于 AI 的攻击链关联分析并按需生成带置信度评分的攻击叙述卡片、实体风险、MITRE 映射案件管理创建、搜索并管理调查案件包含告警、可观测对象、评论标签页的案件列表、AI 操作检测规则浏览、调优并管理检测规则带 KQL 搜索的规则浏览器、查询验证、噪声规则分析威胁狩猎带实体调查的 ESQL 工作台示例数据为常见攻击场景生成 ECS 安全事件包含四个预构建攻击链的场景选择器每个工具都会返回一段紧凑的文本摘要供模型进行推理同时还会提供分析师可以直接操作的交互式 UI。该 UI 也可以通过 MCP 宿主桥接在后台获取最新数据。完整的工具模型与 bridge API 都在仓库的架构文档中。该应用还附带 Claude Desktop skills即 SKILL.md 文件用于教导代理何时以及如何使用每个工具。你可以从最新的 release 中下载预构建的 skill 压缩包。从告警到案件四个 skills 覆盖了 SOC 的核心循环。每一个都会接收一个提示调用一个工具并在返回模型用于推理的文本摘要的同时提供一个交互式仪表板。分析师的一天通常从告警队列开始。告警分诊。可以让代理按主机、规则、用户或时间窗口进行分诊。可以让代理按主机、规则、用户或时间窗口进行分诊。Alert Triage skill 会返回一个 AI 判定仪表板位于原始告警列表之上每条检测规则都会对应一个判定结果将该规则的活动分类为良性、可疑或恶意并附带置信度评分和推荐操作。点击任意告警即可打开详细视图其中包含进程树、网络事件、相关告警以及 MITRE ATTCK 标签。无需在 AI 对话和 Kibana 告警仪表板之间切换上下文所有内容都在你的对话中实时发生。威胁狩猎。可以让代理在你的索引中进行威胁狩猎。Threat Hunt skill 会返回一个 ES|QL 工作台其中查询已预先填充并自动执行结果中的每个实体都可以点击并进入下钻分析。模型会在表格下方生成一段简短解读哪些是异常的、哪些是有关联的、哪些值得进一步关注。随后它会提供下一步分支选择要么继续深入当前威胁狩猎要么在 MCP App 中启动另一个与当前工作互补的 skill。一个非常契合的方式是启动 Attack Discovery用来为你已经深入分析的告警以及已经狩猎的威胁收集更多上下文。运行攻击发现。Attack Discovery skill 会触发 Attack Discovery API并返回一个按优先级排序的发现列表。每个发现都是一组相关告警被拼接成一条攻击链并在前端展示 MITRE 战术、风险评分、置信度标签以及受影响的主机和用户。代理生成的摘要会按照相同的排序顺序显示在发现列表下方。此时对话中已经包含了所有可以采取行动所需的信息威胁狩猎查询、分诊决策、关联攻击链这些都已被组织好进入下一步处理阶段。无需离开聊天即可打开案件。可以批量批准发现结果或让代理为特定告警创建案件。Case Management skill 会为每个已批准的发现创建一个案件附带源告警并继承攻击链中的 MITRE 战术并在对话中内联渲染实时案件列表。点击任意案件可进入详情视图其中包含一组 AI 操作按钮总结案件、建议下一步行动、提取 IOCs、生成时间线。每个操作都会将结构化提示重新注入对话使代理无需重新说明上下文即可继续处理该案件。代理的摘要会显示在案件列表下方覆盖整个事件响应IR队列包括刚刚创建的案件以及仍待处理的早期发现结果。本演示流程中的每一步都运行同一个循环输入一个提示skill 接收它工具返回一段紧凑的文本摘要供模型推理同时提供一个分析师可以操作的交互式 UI。将这些 skills 串联起来它们就组成了一个端到端的 SOC 流程——威胁狩猎、告警分诊、关联分析、创建案件并驱动下一步决策所有过程都由模型在各个步骤之间持续携带会话上下文。即使单独调用其中任意一个它也仍然是完整的仪表板只是指向你指定的数据子集。无论哪种方式所有工作都会累积在对话中完成无需切换标签页、无需复制粘贴、无需人工交接。还有两个 skills 进一步完善了整个应用一个用于检测规则浏览与调优以减少噪声规则另一个用于示例数据生成可以在新集群上快速生成符合 ECS 标准的真实攻击事件。后续文章将深入讲解全部六个能力调查图谱、攻击流画布以及端到端的完整演示流程。“Elastic Security 的 MCP App 弥合了自动化检测与人工威胁狩猎之间的鸿沟。通过将我们的安全数据直接带入 Claude Desktop 中的统一界面我们在不到一小时内就发现了‘静默’威胁——这些风险没有触发标准告警但仍需要立即采取行动。它是我们分析师的一个能力倍增器。”Mandy AndressElastic 首席信息安全官CISO。工作原理每个 MCP App 都是一个小型 Node.js 服务器其工具会同时返回两部分内容供模型推理使用的紧凑文本摘要以及由宿主在内联渲染的 React UI。由于它基于开放的 MCP App 规范构建同一个服务器可以在任何兼容的宿主环境中运行 —— 完整设计见仓库的架构文档。试用方法需要启用 Security 的 Elasticsearch 9.x以及用于案件、规则和 Attack Discovery 的 Kibana。最快路径是使用最新 release 中的一键式 .mcpb bundle——在 Claude Desktop 中双击即可运行然后系统会提示你输入 Elasticsearch URL 和 API key。Cursor、VS Code、Claude Code、Claude.ai 的配置指南以及从源码构建的方法都可以在仓库中找到。https://www.bilibili.com/video/BV142oHBSEUP/Elastic Search MCP App从对话中构建仪表板每个 Kibana 用户都熟悉仪表板的 “绕路流程”离开当前工作内容打开 Kibana选择索引、选择字段、选择可视化类型、调整配置、保存。在看到第一张图表之前需要经历五次上下文切换。新的 example-mcp-dashbuilder 参考应用将这一过程压缩为一个提示。只需让代理 “帮我构建一个仪表板包含收入指标、订单趋势和品类分布”仪表板就会直接在对话中生成无需任何标签页切换。在这个提示的背后代理通过 ES|QL 探索你的 Elasticsearch 数据并根据数据类型选择合适的图表用柱状图表示对比关系用折线图表示趋势用指标卡展示 KPI用热力图展示二维模式。它会基于 Elastic UI Borealis 主题在 Kibana 的 48 列网格布局上排列各个面板。最终结果是完全可交互的你可以在聊天中直接拖拽、调整大小并将面板分组为可折叠区域。当仪表板达到理想状态后只需一次工具调用即可将其导出到 Kibana同时保留 ES|QL 查询和自定义配色。你也可以将已有的 Kibana 仪表板导入到对话中进行 AI 辅助编辑。其核心原则与 Security App 相同当“产物”本身就是产品时把它直接返回到对话中就能打通“描述需求”与“看到结果”之间的闭环。在底层它遵循相同的 MCP App 模式。一个 Node.js 服务器注册了一个面向模型的 view_dashboard 工具同时提供一组仅供 UI 使用的 app 内部工具数据获取、布局持久化、时间字段检测、导入导出。仪表板视图本身是一个独立的 HTML 文件通过 vite-plugin-singlefile 打包并作为 MCP App 资源提供服务。分支该仓库的开发者可以复用 Security App 中相同的服务器骨架与宿主桥接只是将其指向不同的工作场景。example-mcp-dashbuilder 的 README 中提供了完整架构和图表类型参考。https://www.bilibili.com/video/BV1EPopBME7o/Elastic Observability MCP App第三个参考应用 Elastic Observability MCP App 解决的是同一种“形态问题”的 SRE 版本。当生产环境出现故障时值班工程师真正需要的答案不是一张图表而是一个由 K8s 指标、APM 拓扑、机器学习异常检测和风险评估拼接而成的诊断结果。答案的形态是一个因果故事哪里出了问题、为什么出问题、有哪些依赖受到影响以及接下来该怎么做。支持可观测性调查工作流的六个工具工具依赖功能observe通用通用 ESmanage-alerts通用创建、列出、获取和删除 Kibana 自定义阈值告警规则省略 Kibana URL 时为只读模式ml-anomaliesML 作业查询 ML 异常记录并打开内联异常解释视图apm-health-summaryElastic APMAPM 监控的集群级健康汇总在可用时叠加 K8s 和 ML 上下文apm-service-dependenciesElastic APM服务依赖图谱——上游/下游关系、协议、调用量k8s-blast-radiusKubernetes 指标节点故障影响分析——完全故障、性能下降、不受影响、以及重调度可行性集群健康汇总当你询问 “哪里出问题了” 或 “给我一份状态报告” 时会得到一次性的全局概览整体健康状态徽标、存在问题的服务及其原因、内存占用最高的 Pod、异常严重程度分布以及服务吞吐量——全部集中在一个内联视图中。这是当系统出现异常但尚不清楚从哪里入手时的起点。该视图会根据你的部署能力动态调整APM 提供服务健康状态Kubernetes 指标补充 Pod 与节点上下文ML 作业则叠加异常检测结果。服务依赖图当你询问 “什么调用了 checkout”或 “展示拓扑结构” 时会得到一个分层的依赖图谱——包括上游调用方、下游依赖关系、协议、调用量以及每条边的延迟情况。让我们让 Claude 来执行“展示 frontend 的服务依赖关系”支持缩放、平移和悬停操作以获取理解复杂服务关系所需的全部细节通过影响范围评估风险当你询问“如果我的 k8s 节点宕机会发生什么”时会得到一个放射状影响图目标节点位于中心位置完全中断的部署以红色标识性能下降的以琥珀色标识未受影响的以灰色标识。一个浮动摘要卡片会显示处于风险中的 Pod 以及重新调度的可行性。单副本部署会被标记为单点故障。观察Elastic 的主要访问原语——一个工具三种模式分别对应三类不同需求。当你说 “CPU 现在在做什么” 它会执行一次 ES|QL 查询并返回一个表格。当你说 “展示 frontend 的延迟持续 60 秒”它会对指标进行实时采样并在原地更新图表。当你说 “当内存低于 80MB 时提醒我” 或 “监控接下来 10 分钟是否有异常”它会阻塞直到条件触发或时间窗口结束。视图会根据模式自适应变化一次性查询返回结果表格采样与阈值条件返回带当前值、峰值与基线统计的实时趋势图异常模式返回带严重性评分的触发卡片。工作原理与 Security 和 Search 应用相同的 MCP App 模式一个 Node.js 服务器六个面向模型的工具分别对应六个单文件视图资源。工具按部署后端分组通用、依赖 APM、依赖 K8s、依赖 ML因此代理与用户可以在调用前就明确某个部署支持哪些能力而不是在调用失败时才发现能力缺失。该 MCP App 还包含一个示例 Agent Builder 工作流k8s-crashloop-investigation-otel可以在 Kubernetes 告警触发时执行并在打开任何仪表板之前返回结构化根因分析摘要。https://www.bilibili.com/video/BV1BNopBqE6x/Agent 技术栈交互化关于这种模式有三点值得直接说明。第一工具的返回结果不再是工作的终点而是起点对话返回的是一个你可以直接操作的界面而不是一个需要你再去处理的摘要。第二同一个代理、同一个模型上下文以及同一条对话线程现在可以在 Security、Search 和 Observability 这些不同领域之间流转而无需离开对话本身。第三这一切之所以成立是因为 Elasticsearch 和 Kibana 本身已经暴露了这些 API。MCP App 只是覆盖在现有产品能力之上的一层轻量交互界面。Attack Discovery 已经驱动了该应用中的关联发现视图。在整个技术栈内部同样的代理模式进一步扩展Elastic Workflows 负责自动化确定性步骤例如实体丰富、创建案件、隔离主机而 Agent Builder 则负责对数据进行推理并将这些工作流作为工具调用。MCP App 将同样的安全能力带入外部对话而 Workflows 和 Agent Builder 则在系统内部深化这一能力。入口不同但底层仍然是同一套 Elastic API。试用方式Securityexample-mcp-app-securitySearch 与 dashboardsexample-mcp-dashbuilderObservabilityexample-mcp-observability还没有 Elasticsearch 集群可以开始免费 Elastic Cloud 试用。关于 security app 背后的构建模块可以参考 Elastic Security Labs 上关于 Elastic Workflows 与 Agent Builder、Agent Skills 以及 Attack Discovery 的相关文章。原文https://www.elastic.co/search-labs/blog/mcp-apps-elastic