博客

弹性 MCP 服务器:将代理生成器工具暴露给任何人工智能代理

了解如何使用代理生成器中的内置弹性 MCP 服务器安全地扩展任何人工智能代理,以访问您的私人数据和自定义工具。

Elastic Agent Builder 是一个平台,用于创建与 Elasticsearch 中自己的数据深度集成的工具和代理。例如,您可以创建对内部文档进行语义搜索、分析可观察性日志或查询安全警报的工具。

但是,当你能将这些定制的、数据感知工具带入你花费时间最多的环境中时,真正的奇迹就发生了。如果您的代码编辑器代理可以安全地访问组织的私人知识库,那会怎样?

这就是模型上下文协议(MCP)的作用所在。Elastic Agent Builder 内置 MCP 服务器,可访问平台中的工具。

为什么要使用 Elastic Agent Builder MCP 服务器?

人工智能代理的功能非常强大,但它们的知识通常仅限于它们接受过训练的数据以及它们可以在公共互联网上主动搜索的信息。他们不了解贵公司的内部设计文档、团队的特定部署运行手册或应用程序日志的独特结构。

我们面临的挑战是如何为人工智能助手提供其所需的专业背景。这正是 MCP 所要解决的问题。MCP 是一种开放标准,允许人工智能模型或代理发现和使用外部工具。

为了实现这一点,Elastic Agent Builder 通过内置的 MCP 服务器本机公开了您的自定义工具。这意味着您可以轻松地将任何与 MCP 兼容的客户端(如CursorVS CodeClaude Desktop)与您使用 Elastic Agent Builder 创建的专门的数据感知工具连接起来。

何时使用 MCP(何时不使用)

Elastic Agent Builder 包含多种协议,可支持不同的集成模式。选择正确的人工智能工作流是建立有效人工智能工作流的关键。

  • 使用 MCP通过专业工具来增强人工智能代理(如在CursorVS Code 中)。这是"自带工具" 方法,通过安全访问您的私人数据来增强您已经使用的助手。只有工具是通过 MCP 服务器公开的,Elastic 的代理是独立于 MCP 服务器的。

  • 使用 A2A 协议,让您的完整自定义弹性代理与其他自主代理协作(如谷歌的双子座企业版)。这是针对代理对代理的委托,即每个代理都作为同行来解决问题。

  • 在从头开始构建自定义应用程序时,使用 代理生成器应用程序接口(API)实现完全的编程控制。

对于希望在不离开集成开发环境的情况下从内部文档中获得答案的开发人员来说,MCP 是最合适的选择。

示例:在 Cursor 中使用代理生成器 MCP 服务器的自定义工具

让我们来看一个我每天都在使用的实际例子。首先,我将我们的内部工程文档抓取并编入一个名为elastic-dev-docs 的 Elasticsearch 索引。虽然我们可以使用 Agent Builder 中的通用内置工具,但我们将创建自己的自定义工具来查询这个特定的知识库。

定制工具的原因很简单:控制和精度。这种方法使我们能够直接针对elastic-dev-docs 索引运行快速语义查询。我们可以完全控制具体针对哪个索引以及如何检索数据。

现在,我们来看看如何在 Cursor 等人工智能驱动的代码编辑器中使用自定义知识库。

第 1 步:在 Agent Builder 中创建自定义知识库工具

首先,在 Agent Builder 中创建一个新工具。清晰而具体的工具描述非常重要,因为这是任何人工智能代理(无论是内部的弹性代理还是通过 MCP 连接的外部工具,如 Cursor)发现并为正确的任务选择工具的方式。

有力的描述应该是明确的。例如"在 elastic-dev-docs 索引上执行语义搜索,以查找内部工程文档、运行手册和发布程序"。

有了这些,就可以对工具进行配置,以便针对我们的特定索引执行语义搜索。一旦保存,就可以立即食用。

在 Agent Builder 中创建自定义知识库工具。

在连接到外部世界之前,您可以直接在用户界面中进行测试。只需单击 "测试"按钮,手动填写参数,模拟 LLM 的工作,然后检查结果,确认一切工作正常。

第 2 步:将光标连接到弹性 MCP 服务器

Elastic Agent Builder 可通过安全的 MCP 端点自动公开所有可用工具。您可以在 Kibana 的工具用户界面中找到唯一的服务器 URL。

如何将 Kibana 工具 UI 中的光标连接到 Elastic MCP 服务器。

要连接到 Cursor,我们只需将此 URL 添加到其配置文件中,同时添加一个用于身份验证的 Elastic API 密钥(了解如何创建 ES API 密钥)。我们使用 API 密钥进行授权,因为它能确保工具只在您授予的权限内执行,并尊重您的所有访问控制规则。

Cursor's~/.cursor/mcp.json 中的 MCP 配置如下所示:

{
  "mcpServers": {
    "elastic-agent-builder": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://your-kibana.kb.company.io/api/agent_builder/mcp",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "ApiKey <ELASTIC_API_KEY>"
      }
    }
  }
}

保存配置后,你应该能在光标中看到 Elastic Agent Builder MCP 服务器工具。

Cursor 中提供的 Elastic Agent Builder MCP 服务器工具的图像。

第三步:提问!

建立连接后,Cursor 代理现在可以调用您的自定义工具来回答您的问题或指导代码生成过程。

让我们提出一个具体问题:

"从弹性搜索组织的工程内部文档中查找释放爬虫服务的步骤"

光标代理调用自定义工具来回答问题并指导代码生成过程。

在幕后,神奇的事情发生了:

  1. 光标代理决定如何以最佳方式回答您的问题,并决定调用 engineering_documentation_internal_search

  2. 它通过自然语言查询调用该工具

  3. 该工具根据elastic-dev-docs 索引执行语义搜索,并返回最相关的最新程序。

我们无需离开代码编辑器,就能根据内部文档得到准确、可信的答案。这种体验天衣无缝、功能强大。

轮到您建造

您现在已经了解了如何使用 Elastic Agent Builder 中的内置 MCP 服务器来扩展人工智能助手,使其能够安全地访问您的私人数据。将模型建立在自己的信息基础上是使其真正有用的关键。

概括地说,我们介绍了核心步骤:

  • 根据需要选择合适的协议(MCP)。

  • 构建自定义知识库工具

  • 将该工具与 Cursor 等集成开发环境助手连接起来。

您的代理和工具不再需要与最有价值的环境脱节。希望本指南能帮助您创建更有效的数据感知工作流程。快乐建筑

相关内容

Agent Builder,超越聊天框:介绍增强型基础架构

Alexander Wert

使用 Elasticsearch 管理智能体记忆

Someshwaran Mohankumar

使用 Elasticsearch 推理 API 以及 Hugging Face 模型

Jeffrey Rengifo

利用弹性代理生成器和 GPT-OSS 构建人力资源人工智能代理

Tomás Murúa

使用 TypeScript 构建 Elasticsearch MCP 服务器

Jeffrey Rengifo

准备好打造最先进的搜索体验了吗?

足够先进的搜索不是一个人的努力就能实现的。Elasticsearch 由数据科学家、ML 操作员、工程师以及更多和您一样对搜索充满热情的人提供支持。让我们联系起来,共同打造神奇的搜索体验,让您获得想要的结果。

亲自试用