从您的 AgentCore 网关接收进度通知
进度通知允许 MCP 服务器目标报告长时间运行的工具调用的增量进度。当工具调用需要一段时间才能完成时,服务器可以发送notifications/progress事件,让客户端随时了解操作的状态。 AgentCore Gateway 将这些来自 MCP 服务器目标的通知作为 Server-Sent 事件 (SSE) 区块转发到您的客户端。
先决条件
要从您的网关接收进度通知,请执行以下操作:
-
启用响应流-在连接打开期间,进度通知以 SSE 区块的形式传送。
true在streamingConfiguration.enableResponseStreaming您的网关中设置为protocolConfiguration.mcp。 -
MCP 服务器目标类型-进度通知源自 MCP 服务器目标。
-
客户端发送
Accept: text/event-stream标头-客户端必须请求 SSE 响应才能接收流媒体事件。
进度通知的工作原理
当客户端发出tools/call请求参数progressToken中包含的请求时,MCP 服务器目标可以在执行期间发送notifications/progress事件。在最终工具结果之前,网关将这些事件作为 SSE 区块转发给客户端。
每份进度通知都包括:
-
progressToken— 与原始请求中提供的令牌相匹配。 -
progress— 当前进度值(数字)。 -
total— 表示完成目标的可选总值。 -
message— 可选的人类可读的当前状态描述。