pass eventSink to MCP

This commit is contained in:
2026-09-03 20:12:37 +07:00
parent c355748e6f
commit 471da0c5ec
2 changed files with 6 additions and 6 deletions
+3 -3
View File
@@ -68,7 +68,7 @@ function _wrap_mcp_tool(mcpserver, tool_def::AbstractDict{String, Any}; eventSin
signal::Union{Nothing,abortSignal},
eventSink) -> begin
try
response = mcpserver("tools/call", name, args, sessionId)
response = mcpserver("tools/call", name, args, sessionId; eventSink=eventSink)
# Parse JSON-RPC 2.0 response envelope
if haskey(response, "error")
@@ -122,7 +122,7 @@ function register_mcp_tools(tools::OrderedDict{String, agentTool}, mcpserver; ev
new_count = 0
try
eventSink("register_mcp_tools 1")
response = mcpserver("tools/list", sessionId)
response = mcpserver("tools/list", sessionId; eventSink=eventSink)
eventSink("register_mcp_tools 2")
# Parse JSON-RPC 2.0 response envelope
if haskey(response, "error")
@@ -151,7 +151,7 @@ function register_mcp_tools(tools::OrderedDict{String, agentTool}, mcpserver; ev
# Paginate: fetch remaining tools if nextCursor is present
while cursor !== nothing && cursor !== ""
response = sessionId !== nothing ? mcpserver("tools/list", sessionId) : mcpserver("tools/list")
response = sessionId !== nothing ? mcpserver("tools/list", sessionId; eventSink=eventSink) : mcpserver("tools/list"; eventSink=eventSink)
if haskey(response, "result")
response = response["result"]
end