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