Updates
Clearer execution guidance for discovered tools
Themcp_get_tool_schema meta-tool now returns explicit executionInstructions alongside each tool schema, telling the LLM exactly which tool to call next (mcp_execute_tool) and which serverId and toolName to pass. This prevents models from trying to invoke discovered tools directly when the Tool Router is in search mode, which would otherwise fail because only the meta-tools are actually registered.
The description of mcp_get_tool_schema was also updated to reinforce this flow: discover, read schema, then execute via mcp_execute_tool.
Bug fixes
- AG-UI UI stalling and
INCOMPLETE_STREAMerrors — Fixed an issue in the AG-UI adapter where streamed assistant text could be dropped and continuation runs could stall the UI. The middleware now correctly accumulatesTEXT_MESSAGE_CONTENTevents (in addition to chunked deltas) and uses the canonical AG-UI field names (toolCalls,toolCallId) when reconstructing assistant and tool messages for the next continuation. - LangGraph continuation loops with re-executed tools — Fixed a regression where LangGraph snapshots that included historical tool calls would cause the AG-UI adapter to re-execute MCP tools that had already completed in an earlier turn. The middleware now tracks resolved tool-call IDs from snapshot history and ignores tool calls that already have a matching tool result.
- Snapshot-only final answers reaching the UI — Fixed an over-eager filter that could suppress
MESSAGES_SNAPSHOTevents containing the final assistant answer when no streamed text had been seen. Snapshot-only answers now reach the UI; only true duplicates of an already-streamed message are filtered. - LangGraph crash on duplicated streamed tool arguments — Some upstream agents emit the same
TOOL_CALL_ARGSdelta more than once, producing concatenated JSON like{"q":"x"}{"q":"x"}in the assistant history. The AG-UI adapter now parses and re-serializes tool-call arguments before adding the assistant message to the run, so LangGraph continuations no longer crash when reading history.

