Link Search Menu Expand Document Documentation Menu

MCP SSE 会话

3.0 版本引入

这是一个实验性功能,不建议在生产环境中使用。如需了解此功能的最新进展或提供反馈,请加入 OpenSearch 论坛讨论。

SSE 会话 API 在客户端和 OpenSearch 中的模型上下文协议 (MCP) 服务器之间创建 Server-Sent Events (SSE) 会话。该会话建立了一个持久连接,允许服务器向客户端推送更新。

大多数用户在使用标准 MCP 客户端库时,无需直接与此 API 交互,因为客户端库会自动处理会话管理。

URL 构建方法

SSE 会话 API 支持两种不同的 URL 构建方法,以适应各种客户端实现。

默认 URL 构建

append_to_base_url 设置为 false(默认值)时,API 返回一个相对路径,客户端必须将其附加到其基本 URL。

Java MCP 客户端在创建 HTTP SSE 连接时接受 baseURI(例如,https://:9200)。默认的 SSE URI 是 /sse,因此完整的 SSE URL 变为 baseUri + /sse,消息端点则构建为 baseUri + sse.data

完整路径 URL 构建

append_to_base_url 设置为 true 时,API 返回一个包含插件前缀的完整路径。

Python MCP 客户端接受一个端点作为 SSE 端点(例如,https://:8000/_plugins/_ml/mcp/sse),并将其与 sse.data 拼接。将 append_to_base_url=true 设置为 true 可确保正确的消息端点构建为 /_plugins/_ml/mcp/sse/message

端点

GET /_plugins/_ml/mcp/sse

路径参数

参数 类型 必需/可选 描述
append_to_base_url 布尔型 可选 控制 SSE 消息端点 URL 的构建方式。默认值为 false。请参阅URL 构建方法

示例请求:默认 URL 构建

GET /_plugins/_ml/mcp/sse

示例响应:默认 URL 构建

OpenSearch 向客户端发送 SSE 数据流

event: endpoint
data: /sse/message?sessionId=e2d65bb9-e82e-473a-b050-b69dc67ca9dd

示例请求:完整路径 URL 构建

GET /_plugins/_ml/mcp/sse?append_to_base_url=true

示例响应:完整路径 URL 构建

OpenSearch 向客户端发送 SSE 数据流

event: endpoint
data: /_plugins/_ml/mcp/sse/message?sessionId=e2d65bb9-e82e-473a-b050-b69dc67ca9dd