fix: preserve dynamic MCP argument schemas

This commit is contained in:
jiah0231
2026-08-27 10:31:18 +08:00
parent b85cb37898
commit 7914f24d83
+3 -3
View File
@@ -39,9 +39,6 @@ pub(super) async fn start(
context: &ExecContext, context: &ExecContext,
store: Option<&Store>, store: Option<&Store>,
) -> Result<ToolStart> { ) -> Result<ToolStart> {
let normalized_call = normalize_block_until_ms(call)?;
let call = normalized_call.as_ref().unwrap_or(call);
if let Some(definition) = dynamic_mcp.get(&call.name) { if let Some(definition) = dynamic_mcp.get(&call.name) {
return exec::start_dynamic(runtime, call, definition, context).await; return exec::start_dynamic(runtime, call, definition, context).await;
} }
@@ -54,6 +51,9 @@ pub(super) async fn start(
return local::subagents_disabled(call); return local::subagents_disabled(call);
} }
let normalized_call = normalize_block_until_ms(call)?;
let call = normalized_call.as_ref().unwrap_or(call);
match normalized(&call.name).as_str() { match normalized(&call.name).as_str() {
"shell" | "read" | "delete" | "grep" | "glob" | "readlints" | "task" | "callmcptool" "shell" | "read" | "delete" | "grep" | "glob" | "readlints" | "task" | "callmcptool"
| "fetchmcpresource" | "getmcptools" => exec::start(runtime, call, context).await, | "fetchmcpresource" | "getmcptools" => exec::start(runtime, call, context).await,